Go Down

Topic: Duvida com analogReference(EXTERNAL); (Read 1 time) previous topic - next topic

tretas

Boas,

Tinha por aqui uma board que em tempos usava com os µC da microchip, e necessito de usar como tensão de referencia outra que os 5V do arduino.

Lendo como usar a função analogReference fico com a duvida, qual a melhor forma de corrigir o erro dos 0.3v da vref, pois no meu caso a vref tambem é de 2.5v


Quote

Alternatively, you can connect the external reference voltage to the AREF pin through a 5K resistor, allowing you to switch between external and internal reference voltages. Note that the resistor will alter the voltage that gets used as the reference because there is an internal 32K resistor on the AREF pin. The two act as a voltage divider, so, for example, 2.5V applied through the resistor will yield 2.5 * 32 / (32 + 5) = ~2.2V at the AREF pin.
Arduino Mega 2560
Arduino Nano
Arduino UNO Rev3
Raspberry PI Model B
EasyPIC v4

HugoPT

Quote
Lendo como usar a função analogReference fico com a duvida, qual a melhor forma de corrigir o erro dos 0.3v da vref, pois no meu caso a vref tambem é de 2.5v

Pelo que entendi queres o que o teu ADC tenha como tensao de referencia os 2.5V.Esse erro dos 0.3V e causado pela resitencia interna no pino Aref.A soluçao mais facil e nao usares nenhuma resistencia externa no pino, colocando la os teus 2.5V diretamente no pino Aref.Agora há um senao ... tens de ter a certeza que chamas a funçao analogReference(EXTERNAL) para configurar o micro para usar a tensao externa


Debian,Mint,Ubuntu
Arduino Mega 2560
Arduino Nano
Arduino Duemilanove
MAC OS Montain Lion
Raspberry PI Model B

bubulindo

Eu não percebo porque é que tens de colocar a resistência no ARef.
A resistência interna nesse pino deve ser suficiente para protegê-lo. Sendo uma referência de tensão, suponho que não vá passar muita corrente por ele, logo se não vais estar a usar a referência interna (será bom ver o que é escolhido por default...).

O arduino, se bem me lembro usa a referência externa por defeito... ou é o AVCC?

Será porque a referência interna é de 1, qualquer coisa Volts?

Não tenho internet que chegue para ver o manual, logo não posso dizer muito sobre isto. :(
Eu não sou o teu criado. Se respondo no fórum é para ajudar todos mediante a minha disponibilidade e disposição. Responder por mensagem pessoal iria contra o propósito do fórum e por isso evito-o.
Se realmente pretendes que eu te ajude por mensagem pessoal, então podemos chegar a um acordo e contrato onde me pagas pela ajuda que eu fornecer e poderás então definir os termos de confidencialidade do meu serviço. De forma contrária toda e qualquer ajuda que eu der tem de ser visível a todos os participantes do fórum (será boa ideia, veres o significado da palavra fórum).
Nota também que eu não me responsabilizo por parvoíces escritas neste espaço pelo que se vais seguir algo dito por mim, entende que o farás por tua conta e risco.

Dito isto, mensagens pessoais só se forem pessoais, ou seja, se já interagimos de alguma forma no passado ou se me pretendes convidar para uma churrascada com cerveja (paga por ti, obviamente).

bubulindo

Ok, retiro o que disse. Já percebi.

Quote

If the user has a fixed voltage source connected to the AREF pin, the user may not use the other reference voltage options in the application, as they will be shorted to the external voltage. If no external voltage is applied to the AREF pin, the user may switch between AVCC and 1.1V as reference selection. The first ADC conversion result after switching reference voltage source may
be inaccurate, and the user is advised to discard this result.


A resistência adiciona uma pequena proteccão para quando fizeres a troca de referência.

Agora, porque é que queres mudar de referência? Maior precisão na gama  0 - 1.1V?
O chip tem o pino Aref seleccionado como referência logo à partida. As bibliotecas do Arduino é que, creio, definem outra referência. Talvez o AVCC? Logo tens de ver a funcão que faz o startup do arduino e comentá-la.

Se apenas pretendes usar 2,5V e não mudar de referências activamente então escusas de meter resistências lá.
Eu não sou o teu criado. Se respondo no fórum é para ajudar todos mediante a minha disponibilidade e disposição. Responder por mensagem pessoal iria contra o propósito do fórum e por isso evito-o.
Se realmente pretendes que eu te ajude por mensagem pessoal, então podemos chegar a um acordo e contrato onde me pagas pela ajuda que eu fornecer e poderás então definir os termos de confidencialidade do meu serviço. De forma contrária toda e qualquer ajuda que eu der tem de ser visível a todos os participantes do fórum (será boa ideia, veres o significado da palavra fórum).
Nota também que eu não me responsabilizo por parvoíces escritas neste espaço pelo que se vais seguir algo dito por mim, entende que o farás por tua conta e risco.

Dito isto, mensagens pessoais só se forem pessoais, ou seja, se já interagimos de alguma forma no passado ou se me pretendes convidar para uma churrascada com cerveja (paga por ti, obviamente).

aurinojr

Aproveitando o tópico queria solucionar uma dúvida minha, estou usando um sensor de temperatura LM35, e li que deveria usar o analogReference(INTERNAL)

aurinojr

Aproveitando o tópico queria solucionar uma dúvida minha, estou usando um sensor de temperatura LM35, e li que deveria usar o analogReference(INTERNAL), por que com a voltagem de 1.1V a precisão seria maior, no caso uns 2° de diferença(rsrsrs), então vamos para as dúvidas:
1° - vou adicionar outros sensores analógicos, será que vai atrapalhar???
2° - será que eu não poderia usar um resitor pra limitar a voltagem do sensor de temperatura para 1.1v e usar o analogReference(DEFAULT) ???

bubulindo

Qual é a tensão de saída desses outros sensores?

Não. Tu podes usar a referência default à vontade... tens é menos precisão.
Eu não sou o teu criado. Se respondo no fórum é para ajudar todos mediante a minha disponibilidade e disposição. Responder por mensagem pessoal iria contra o propósito do fórum e por isso evito-o.
Se realmente pretendes que eu te ajude por mensagem pessoal, então podemos chegar a um acordo e contrato onde me pagas pela ajuda que eu fornecer e poderás então definir os termos de confidencialidade do meu serviço. De forma contrária toda e qualquer ajuda que eu der tem de ser visível a todos os participantes do fórum (será boa ideia, veres o significado da palavra fórum).
Nota também que eu não me responsabilizo por parvoíces escritas neste espaço pelo que se vais seguir algo dito por mim, entende que o farás por tua conta e risco.

Dito isto, mensagens pessoais só se forem pessoais, ou seja, se já interagimos de alguma forma no passado ou se me pretendes convidar para uma churrascada com cerveja (paga por ti, obviamente).

Go Up