Ich bin mir diesmal sicher alles richtig gemacht zu haben :-) AREF mit 47nF zu GND AVCC an VCC (+3,3V) ADCSRA = (1<<ADEN) | (1<<ADPS2) | (1<<ADPS1) | (1<<ADPS0); // prescaler 256 ADMUX = (1<<REFS1) | (1<REFS0) |(1<<MUX2) | (1<<MUX1) | (1<<MUX0); // internal 2,56V reference ADC7 int read_channelX() { unsigned int i; ADCSRA |= (1<<ADSC); while (ADCSRA & (1<<ADSC)) { ; } return ADC; } tmp = read_channelX(); ltoa(tmp,s,10); myuart_puts(s); Denoch kommt da ueber den UART immer 0 :-)
ich hab auch mal ADCW probiert, das sollte ansich ein 16 Bit wert zurueck geben, aber auch da bleibts bei 0
ok, sorry :-) funzt bestens, ADCW gibt den richtigen Wert zurueck, ich hatte einen zu großen Widerstand vorm ADC Eingang. somit war die spannung zu klein und der ADC hat 0 gemeldet.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.