Constantes são expressões predefinidas na linguagem Arduino. Eles são usados para fazer os programas mais fáceis de ler. Podemos classificar a constantes em grupos:
Definindo níveis lógicos: true e false (booleano constantes)
lá são duas constantes usadas para representar a verdade e falsidade na linguagem Arduino: true e false.
false é definido como 0 (zero).
true muitas vezes é dito ser definido como 1, o que é correto, mas é verdade, tem uma definição mais ampla. Qualquer número inteiro que é diferente de zero é verdade, no sentido de Boolean. Então -1 e 2 -200 são todos definidos como verdadeiro, também, em um sentido booleano.
Note que as constantes true e false são digitadas em letras minúsculas, ao contrário de HIGH, LOW, INPUT e OUTPUT.
Definir níveis de Pino: HIGH e LOW ao ler ou gravar para um pino digital existem apenas dois possíveis valores um pino podem ter/ser-conjunto para: HIGH e LOW.
HIGH o significado de alta (em referência a um pin) é um pouco diferente dependendo se um pino é definido como uma entrada ou saída. Quando um pino é configurado como uma entrada (INPUT) com pinMode(), e leia com digitalRead(), o Arduino (Atmega) relatará HIGH se:
* uma tensão superior a 3.0 v está presente no pino (placas de 5V);
* uma tensão superior a 2.0 v está presente no pino (3.3 v placas);
Um pino também pode ser configurado como uma entrada (INPUT) com pinMode() e posteriormente fez HIGH com digitalWrite(). Isso permitirá que os resistores de pullup 20K interno, que vão puxar até o pino de entrada para uma HIGH leitura a menos que ele é puxado para baixo por circuitos externos. Isto é como o INPUT_PULLUP funciona e é descrito abaixo em mais detalhes.
Quando um pino é configurado para saída (OUTPUT) com pinMode() e definido como HIGH com digitalWrite(), o pino é no:
* 5 volts (placas de 5V);
* 3,3 volts (3.3 v placas);
Este estado pode, por exemplo, acender um LED que é conectado através de um resistor de série ao GND.
LOW o significado de baixa também tem um significado diferente dependendo se um pino é definido para a entrada ou saída. Quando um pino é configurado como uma entrada com pinMode(), e leia com digitalRead(), o Arduino (Atmega) reportará LOW se:
uma tensão menor que 1, 5V está presente no pino (placas de 5V);
uma tensão menor que 1.0 v (aproximadamente) está presente no pino de (3.3 v placas);
Quando um pino é configurado para saída com pinMode() e definido como LOW, com digitalWrite(), o pino é a 0 volts (ambos 5V e 3.3 v placas). Este estado pode, por exemplo, acender um LED que é conectado através de um resistor de série + 5 volts (ou +3,3 volts).
Definir modos Digital pinos: INPUT, INPUT_PULLUP e OUTPUT podem ser usados como INPUT, OUTPUT ou INPUT_PULLUP. Alterando com pinMode() altera o comportamento elétrico do pino.
Configurado como pinos de entrada Arduino (Atmega) com pinMode() irão ter um estado de alta impedância.
Pinos configurados como entrada fazer exigências extremamente pequenas no circuito de que eles estão conectados, equivalente a um resistor da série de 100 megohns na frente do pino. Isto fá-los úteis para a leitura de um sensor.
Se você tiver seu pino configurado como entrada e está lendo um interruptor, quando o interruptor está no estado aberto a entrada pino vai ser "flutuante", resultando em resultados imprevisíveis.
A fim de assegurar uma boa leitura, quando o interruptor está aberto, deve ser usado um pull-up ou o resistor pull-down. O objetivo deste resistor é puxar o pino para um estado conhecido quando o interruptor está aberto.
Um resistor de 10k ohm é geralmente escolhido, como é um valor suficientemente baixo para confiantemente prevenir uma entrada flutuante.
Se for usado um resistor pull-down, o pino de entrada será baixa quando o interruptor está aberto e alto, quando o interruptor é fechado.
Se um resistor pull-up é usado, o pino de entrada será alta quando o interruptor está aberto e baixo quando o interruptor é fechado.
Pinos configurado como microcontrolador Atmega o INPUT_PULLUP sobre o Arduino tem resistores pull-up interno (resistores que se conectam ao poder internamente) que você pode acessar. Se você preferir usar estas em vez de resistores pull-up externo, você pode usar o argumento INPUT_PULLUP em pinMode().
Veja o tutorial de entrada Pullup Serial para um exemplo em uso.
Pinos configurados como entradas com INPUT ou INPUT_PULLUP podem ser danificados ou destruídos, se eles estão conectados a tensões abaixo do solo (tensões negativas) ou acima da alimentação positiva (5V ou 3V).
Os pinos configurado como saídas tem um estado de baixa impedância, isto significa que eles podem fornecer uma quantidade substancial de corrente para outros circuitos. ATmega podem fornecer ou absorver até 40 mA (miliamperes) de corrente para outros dispositivos/circuitos. Isto faz úteis para a alimentação de LEDs que normalmente usam menos de 40 mA. Cargas superiores a 40 mA (por exemplo, motores) irá exigem um transistor ou outros circuitos de interface.
Definição de built-ins: LED_BUILTIN as placas têm um pino conectado a um LED onboard em série com um resistor. A constante LED_BUILTIN é o número do pino ao qual está conectado o LED on-board. A maioria das placas têm este LED conectado ao pino digital 13.
Referência: ATMEL / datasheet MICROCHIP 328
Voltar...
Nenhum comentário:
Postar um comentário