Pinos especiais

Eu não intendi pra que serve exatamente os pinos AREF e os os os pinos onde diz X3, acho que são interupções externas, se alguem puder me ajudar me explicando pra que serve e uma aplicação pratica eu agradeceria! :slight_smile:
Os pinos ICSP são para no caso gravar um bootloader novo? Que outra aplicação teria?
Arduino 2009
Abraços

AREF eh a tensão de referencia pro comparador A/D.

ICSP serve p/ programar o chip sim. Sem ser pelo bootloader.
Se vc olhar onde tá ligado, são os pinos 13,12,11 (mosi/miso/sck).

nofxx:
AREF eh a tensão de referencia pro comparador A/D.

Pois é... me explica isso!? huahuahuaha Como assim tensão de referencia pro comparador A/D ?

E quanto ao X3? External interupts? Para que servem?

Como o nome diz ele "compara" a tensao q ele ta recebendo com a REFERENCIA :wink:
Ex:
0 -> 0
ref -> 255

Ou seja, supondo que vc qr testar por algo que varia de 0 a 2v, vc pode conseguir mais resolução comparando com 2v.

Vc consegue 8bits(0-255). Se quiser brincar no ADMUX pode conseguir 10bits.. isso ja eh outra historia...

X3 se quiser por os pinos, eh um programador ICSP, vc pode ateh ligar no icsp da mesma placa.
Os outros 3 pinos do ICSP sao Vcc/GND e Reset...a proposito (alem do sck/mosi/miso q disse anteriormente).

E nao sei qual eh esse external q vc se refere... Vin ? Eh apenas um pino p/ vc prover 5v regulados pra placa.

Quanto ao AREF eu intendi mas não comprendi! huahuh
A referencia sempre vai ser a maxima, por exemplo 5V!? Dai eu comparo com ovalor que ta na entrada analogica?

Quanto ao X3 ta intendido! Acho que é por isso que nen todos existem soldados esses pinos, já tem o pino do ICSP!
Quanto ao external interupts, duvida sanada! eu pensei que o X3 fosse external interrupts!

nofxx:
Vc consegue 8bits(0-255). Se quiser brincar no ADMUX pode conseguir 10bits.. isso ja eh outra historia...

Isto está errado. Você consegue 8 bits se mexer no ADMUX e só ler o byte mais alto do registo ADC. Se não mexer em nada, você tem por defeito 10 bits saindo do ADC.

Quanto à referência, e assumindo que está a usar os 10 bits por defeito, o manual mostra uma fórmula que pode ser mais explicar melhor para que serve a referência:

ADC = (Vin * 1024) / Vref.

Explicado?
O melhor será testares por ti mesmo para ver a diferença... coloca um divisor resistivo com um potenciómetro no Aref, e varia essa tensão para ver o resultado que obténs do AD. :wink:

Legal, deu uma boa esclarecida!!!!
Só não intendi o que é o ADMUX? Registrador do ADC do atmega?

Bubulindo, valeu a correção. Inverti as bolas...

ADMUX eh o registrador do multiplexador do AD...
Vc tem, suponha, 8 pinos analógicos mas existe somente 1 ligação entre eles e o chip.
Logo, Mux and conquer ! hehe

Tem um tutorial excelente no avrfreaks, mas nao consigo achar, este é interessante tb:

http://www.pjrc.com/teensy/adc.html

O ADMUX é um registo de configuracão do conversor AD.

O registo é composto pelos bits :

REFS1, REFS0 - Para configurar a tensão de comparacão. Usar a tensão interna do chip, externa no pino AVCC ou AREF.
ADLAR - Apresentar o resultado com 10 bits ajustado à direita ou utilizar o resultado ajustado à esquerda com 8 bits (descartando os 2 LSB).
MUX3...0 - Escolher o canal do AD que se pretende utilizar.

Ou seja, cada chip apenas tem um AD lá dentro e tem uma espécie de interruptor que te permite escolher qual o canal a fazer uma leitura. Se escreveres 0 nos bits MUX, fazes uma leitura do canal 0, se escreveres 5 para esses bits, fazes uma leitura do canal 5.