O que é Aref
Aref significa “Referência analógica”E é a tensão de referência para o Microcontrolador Arduino Analog to Digital Converter (ADC). A tensão de referência dentro do Arduino Vref indica o valor máximo de conversão possível em um microcontrolador. Arduino tem um ADC de 10 bits, o que significa que pode dividir valores analógicos em 1024 leituras que variam de 0 a 1023. Arduino por padrão VREF é 5V, no entanto, é possível integrar uma tensão de referência externa usando o pino Arduino Aref.
Pranchas | Pinos analógicos | Resolução máxima do ADC |
---|---|---|
Uno | A0 a A5 | 10 bits |
Mini, Nano | A0 a A7 | 10 bits |
Mega | A0 a A14 | 10 bits |
Analogreferência ()
A função analogReference () na programação Arduino ajuda a configurar a tensão de referência para o Microcontrolador Arduino ADC interno. O Arduino ADC toma tensão de entrada entre dois limites e os converte em números. Este número é definido pelo número de bits necessários para representá -lo.
Por exemplo, em Arduino UNO (ATMEGA328P), esse número é de 10 bits a partir de 0 a 1023, representando um valor total de 1024. Portanto, o limite superior que um ADC pode medir em volts é igual a Voltagem de referência. Por padrão, o Arduino usa a tensão de entrada do VCC como analogreferência (), que pode ser 5V ou 3.3V na maioria das placas Arduino.
Vamos fazer algum cálculo para limpar isso ainda mais:
Observação: Enquanto usa o Arduino com 3.3V VCC não aplica mais do que VCC na entrada analógica, ele danificará o chip do microcontrolador Arduino, porque você aplicou mais do que a tensão de referência que é 3.3V.
Analogreferência (tipo)
Analogreferência (tipo) em Arduino configura que tipo de tensão queremos definir como referência. Normalmente, por padrão, o Arduino usa 5V como referência analógica, no entanto, usando esta função, também podemos configurar uma referência externa. O analogread () retornará 1023 quando a entrada nos pinos analógicos se tornar igual à tensão de referência definida.
Três maneiras diferentes de configurar ASF são:
Parâmetros
Tipo de Aref que queremos usar é definido aqui. Tipo: (padrão, interno ou externo).
Como usar o aref externo
Usando o pino AREF logo abaixo dos conectores ICSP na placa Arduino, podemos definir uma tensão de referência externa para ADC. A tensão de referência externa pode vir de uma fonte de alimentação regulada ou Arduino 3.PIN 3V também é uma boa fonte para tensão AREF.
Enquanto usa o Arduino Aref com suprimento de tensão externo, certifique -se de conectar o Arduino GND com fonte de alimentação externa GND ou se você estiver usando o Arduino 3.3V como tensão Aref Conecte -se ambos com a ajuda de fios de jumper.
Escreva o seguinte comando no void setup () para ativar o aref externo:
analogreferência (externa);
Este comando definirá qualquer tensão conectada em pinos AREF como uma referência.
Observação: Ao usar a tensão externa como referência, certifique -se de definir como externo antes de chamar o analogread (), caso contrário, curará a referência interna ativa e o pino AREF, o que pode resultar em danificar o microcontrolador Arduino.
Para definir o AREF de volta ao original, use o comando abaixo:
analogreferência (padrão);
Como usar o Aref interno
O microcontrolador Arduino também tem uma tensão de referência interna de 1.1v. Para ativar o tipo de AREF interno seguinte com comando no void setup ():
analogreferência (interna);
Para mega painéis Arduino:
analogreferência (interna1v1);
Arduino Mega tem outros 2.Tensão de referência de 56V disponível. Para ativar o comando de tipo escrito abaixo:
analogreferência (interna2v56);
Depois que o analogReference () estiver definido, certifique -se de calibrar a leitura usando um bom amperímetro para evitar qualquer erro.
Conclusão
Arduino pode medir sinais analógicos usando ADC interno. ADCs Arduino têm uma tensão de referência de 5V, no entanto, devido à flexibilidade do Arduino na leitura de entrada analógica, pode usar uma referência de tensão externa para ADC. Aqui cobrimos três maneiras de configurar o Arduino Aref. Usando essas três maneiras pelas quais podemos aprimorar a funcionalidade do Arduino para ler dados analógicos exatos.