Gast
#682990
Hallo,
habe folgendes Prog geschrieben, das bis jetzt einwandfrei funktioniert.
void main()
{
lcd_ini();
lcd_gotoline(1);
lcd_writetext("ADC0:");
lcd_gotopos(1,11);
lcd_writetext("V");
lcd_gotoline(2);
lcd_writetext("ADC1:");
lcd_gotopos(2,11);
lcd_writetext("V");
// Activate ADC with Prescaler 16 --> 1Mhz/16 = 62.5kHz
ADCSRA = _BV(ADEN) | _BV(ADPS2);
while (1)// Endlosschleife
{
// Select pin ADC0 using MUX
ADMUX = 0;
//Start conversion
ADCSRA |= _BV(ADSC);
// wait until converstion completed
while (ADCSRA & _BV(ADSC) ) {}
// get converted value
double x = ADCW/1023.0*5.0;
char buffer[5];
sprintf(buffer,"%.3f",x); //Makefile_eigen in den Optionen einstellen
lcd_gotopos(1,6);
lcd_writetext(buffer);
}
}
Der AD Wert an ADC0 wird am LCD Display angezeigt und mit 3
nachkommastellen ausgegeben.
Meine Frage:
Wie lese ich gleichzeitig an ADC0 und ADC1....2 .3... Werte ein
Werden die Werte nicht immer in ADCW geschrieben?!.. wie löse ich das.?
m.f.G.
Stögi