Hi, ich habe folgenden Programmschnipsel geschrieben: " clr ar sbr ar,1<<ADEN|1<<ADPS2|1<<ADPS0|1<<ADATE out ADCSRA,ar clr ar sbr ar,1<<ADTS0 out SFIOR,ar clr ar sbr ar,1<<REFS1|1<<REFS0|1<<ADLAR out ADMUX,ar sei Starten: sbi ADCSRA,ADSC Warten: sbic ADCSRA,ADSC rjmp Warten in Zahl,ADCH " Das klappt auch alles ganz prima im Simulator...so wie ich mir das vorgestellt habe. Nur wenn ich das Programm in meinen Mega32 lade und via Debuggmodus (JTAG) mir ansehe was der Chip macht werde ich stutzig. Immer wenn ich das Startbit für die Analog-Convertierung starte setzt er automatisch das Interrupt-Flag und das Startbit wird gar nicht erst als eins angezeigt. Messen tut die Schaltung allerdings!Ich finde meinen Fehler einfach nicht! Ich habe schon mal etwas mit dem ADATE und dem dazu gehörigen SFIOR-Registern experimentiert aber alles führt zu keiner Lösung oder Erklärung. Kann mir einer die Lösung zu meinem Problem verraten?
Hallo, Vermutung: der ADC ist eine eigene Hardwareeinheit. Wenn der gestartet ist, wandelt er eben. Wenn Deine JTAG-Abfrage jetzt länger braucht, als der ADC zum Wandeln. ist der also einfach schon fertig. Gruß aus Berlin Michael
Hallo, klingt nicht plausibel, aber wieso verzögert der Debugmode auch die Timer extrem? Denn die Timer sind ja ebenfals Hardware-Einheiten oder besteht da ein Unterschied? Gruß
Eine Simulation ist eben nur eine Simulation... :-/ In der Realität wird auch der Timer einfach weiterlaufen. > Denn die Timer sind ja ebenfals Hardware-Einheiten oder > besteht da ein Unterschied? Ja, es gibt einen gewissen Unterschied zwischen einem Timer und einem ADC: Versuch mal mit dem Timer eine Spannung zu wandeln ;-)
Komisch...aber wenn das so ist! Ich find die JTAG Schnittstelle sonst sehr nützlich (vorallem für mich als Anfänger) aber hier hat sie mich mehr verwirrt als erleuchtet ;-) Danke für eure Hilfe!
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.