por fabim » 14 Mai 2010 11:08
á sim.
Então guri.
Internamente aos pinos, existem multiplex analogicos.
Suponha o seguinte.
Setei o mux1. (delay_us(10));
ADCON1.GO_DONE = 1;
while(ADCON1.GO_DONE);//fica preso enquanto não acaba conv..
Setei o mux 2 (delay_us(10));
ADCON1.GO_DONE = 1;
while(ADCON1.GO_DONE);//fica preso enquanto não acaba conv..
Agora, da seguinte maneira a observar.
O mux desligou o canal 1, e ligou-se ao canal 2.
O tempo de 10uS é o bastante ?
Depende, quando falamos de resistencia. Falamos sobre casamento de impedancia no geral. Vai ler o potenciometro ? qual a resistencia dele ?
Á fabim, 10K por exemplo. É alta pra burro, mas mesmo assim pode ser burlado sua resistencia, como ?
Colocando-se um capacitor em paralelo com saida do potenciometro e terra.
No momento em que o mux chavear para qualquer potenciometro, o capacitor de carga e filtro, vai ter uma corrente armazenada bem maior que a corrente armazenada no capacitor interno de charge pump, levando em consideração ainda o resistor interno que serve para evitar essas pancadas de DDP.
Ou seja, se tiver um capacitor de uns 100nF em paralelo, tu faz o seguinte. nos 18F tu seja o TCY do ADC pra 20 +/-, e o delay entre um e outro após setar o mux, tu pode colocar uns 5 ou 10uS...
Agoa não confunda velocidade de sample rate.
Por exemplo os 18F, caso eu não me engane agora. o maximo clock do adc é de 3mhz que seja mais.
Para você saber qual a maxima frequencia de sample, atingindo o fundo de escala de um ADC.
3 000 000/ (bim fundo de escala 1024).
= 2929.6875.. num pode esquecer que tem o TCY e ainda o delay do mux...
Bom, viu como é o buraco ?
OS cabras dizem 60ksps, em média!!!!! e não fixo. nem em 8 bits.
Veja, suponha que iriamos obsrvar como over de 10 bits, e basearnos nele pois iriamos trabalhar com interrupt.
quero 50Ksps
256+1*50 000 = 12850000
Como você consegue esse clock ? no 18f4550 que trabalha com 48mhz principal.. nem assim poderia, pois esta ultrapassando o fundo de escala de clock.
é brabo, mass fazer o que
Mano, ve só.
Sou responsável pelo que escrevo!!! E não pelo que você entende !!!