Zitat Zitat von uwegw
das datenblatt sagt dazu:
A single conversion is started by writing a logical one to the ADC Start Conversion bit,
ADSC. This bit stays high as long as the conversion is in progress and will be cleared by
hardware when the conversion is completed.
du setzt also adsc, und wartest dann in der while schleife bis es wieder zurückgesetzt wird, also die ad-wandlung fertig ist, richtig?

demnach wird der adc nie fertig...
Genau, ich warte auf ebendieses zurücksetzen vom Bit ADSC. Eigentlich ganz einfach, aber die Probs stecken wie immer mal wieder im Detail.

Wenn ich den Code für den ATmega16 kompiliere und den Simulator auf ATmega16 umstelle, dann läuft er ordentlich.
Kompiliere ich hingegen für ATmega8 und stelle den Simulator auf ATmega8, dann wird er eben nie fertig ...

ist überhaupt alles richtig angeschlossen? denn der adc hat ja ne eigene stromversorgung. AVcc und AGnd... und ARef die referenzspannung...
wenn das nicht der fall ist kannst du natürlich lange warten...
Keine Sorge, in diese Falle bin ich (zum Glück) nicht getappt. Es reicht ja so schon.

BTW: Gibt es im Internet irgendwo einen Code, der den AD-Wandler vom ATmega8 im Polling-Modus steuert und der bei Euch auch funktioniert??? Mit google findet man zwar viel, aber das meiste sieht wie mein Code aus und der funktioniert ja nicht.

MfG
- cl