Escolar Documentos
Profissional Documentos
Cultura Documentos
Funo: pinMode()
Descrio
Configura a porta especificada para se comportar tanto como entrada ou sada. Veja
o post sobre portas digitais para maiores detalhes.
Sintaxe
pinMode(pin, mode)
Parmetros
pin: o nmero da porta que voc deseja configurar
mode: INPUT para entrada e OUTPUT para sada
Retorna
Nada
Nota
As portas analgicas podem ser usadas como portas digitais, referindo-as como A0,
A1 etc.
Funo: digitalWrite()
Descrio
Altera o estado da porta para alto (HIGH) ou baixo (LOW) de uma porta digital.
Se a porta foi configurada como sada (OUTPUT) pela funo pinMode(), sua
voltagem ser correspondente aos valores de 5V (ou 3.3V nas placas de 3.3V) para
alto (HIGH), e 0V (GND) para baixo (LOW).
Se a porta configurada como entrada (INPUT), escrever um valor alto (HIGH) com
o digitalWrite() habilitar o resistor de elevao (pullup) interno de 20K (veja a
postagem sobre portas digitais). Escrever um valor baixo (LOW) desabilitar o
resistor de elevao. Este resistor de elevao suficiente para acionar muito
fracamente um LED, portanto se o LED funcionar, mas dessa forma fraca, esta a
causa mais provvel. A soluo configurar a porta para sada (OUTPUT) atravs
da funo pinMode().
NOTA: A porta digital 13 mais difcil de se utilizar como uma porta de entrada
dentre as outras portas digitais, pois existe um LED ligado a ela, com um resistor
em srie, soldado na placa, na maioria das placas. Se voc habilitar seu resistor de
elevao, ela travar em uma tenso aproximada de 1,7V, ao invs dos esperados
5V, por causa do LED embutido na placa, e o resistor em srie sempre puxar o
nvel de tenso para baixo, resultando sempre em um estado baixo (LOW). Se voc
quiser usar a porta 13 como entrada digital, ligue um resistor de referncia
(pulldown) externo.
Sintaxe
digitalWrite(pin, value)
Parmetros
pin: o nmero da porta
value: HIGH para o estado alto ou LOW para o estado baixo
Retorna
nada
Configura a porta 13 para o estado alto (HIGH), pausa por um segundo e depois
configura a porta de volta para o estado baixo (LOW).
Nota
As portas analgicas podem ser usadas como portas digitais, referindo-as como A0,
A1 etc.
Funo: delay()
Descrio
Pausa o programa por um perodo de tempo (em milissegundos) especificado pelo
parmetro. (Existem 1000 milissegundos em um segundo.)
Sintaxe
delay(ms)
Parmetros
ms: quantidade de milissegundos a parar o programa (unsigned long)
Retorna
nada
Advertncia
Assim como fcil criar o efeito de piscar um LED com a funo delay(), e muitos
programas (sketches) utilizam pausas curtas para tarefas como garantir o
pressionamento de um boto, o uso da funo delay() tem significativos obstculos.
Nenhuma outra ao, como leitura de sensores, clculos matemticos, ou
manipulao de portas funciona durante a pausa pela funo delay(). Dessa forma,
esta pausa tem como efeito causar a inoperabilidade de todas as outras atividades.
Para abordagens alternativas no controle de tempo, considere o uso da funo
millis(). Programadores mais experientes evitam utilizar a funo delay() para
clculos de tempo maiores que 10 milissegundos, a no ser que o programa seja
realmente muito simples. Certas coisas, entretanto, continuam funcionando
enquanto a funo delay() est controlando o chip do ATMega, porque essa funo
no desabilita as interrupes. Comunicao serial que chega no pino RX gravada,
valores PWM (analogwrite) e o estado das portas so mantidos, assim como as
Exemplo
int ledPin = 13; // LED conectado na porta 13
void setup()
{
pinMode(ledPin, OUTPUT); // configura a porta como saida (OUTPUT)
}
void loop()
{
digitalWrite(ledPin, HIGH); // liga (HIGH) o LED
delay(1000); // espera um segundo
digitalWrite(ledPin, LOW); // desliga (LOW) o LED
delay(1000); // espera um segundo
}
Postado por Renato Aloi s 14:53 10 comentrios:
Marcadores: arduino, arduino referncia pinMode digitalWrite portas digitais digital pin
ATMega, duemilanove