Guten Morgen! Heute habe ich bemerkt, daß in Microchip Studio 7 die Werte von TCNT1 (ATMega1284) über JTAG mit Atmel ICE nicht korrekt gelesen werden.
- Wenn ich schrittweise durch Programm gehe, ändert sich TCNT1 sehr schnell. Prescaler 1/64 wird nicht berücksichtigt, ISR kommt viel schneller als sollte.
- Wenn ich TCNT1 gleichzeitig in IO-Fenster, in Datenfenster (Adresse 0x84) und als Var sehe, bekomme ich gleichzeitig drei verschiedene Werte!
Problem bleibt auch, wenn ich JTAG-Frequenz bis 200 kHz herabsetze.
Wenn ich das Projekt mit dem gleichen Text in AVR Studio 4.19 mit AVR-JTAGICE-mkII mache, wird alles angezeigt wie erwartet: Prescaler berücksichtigt, Werte von TCNT1 wie erwartet.
Die Frage: ist das ein Defekt von Microchip Studio 7 und Atmel ICE? Oder gibt es in Atmel ICE Einstellungen, die für korrekte Arbeit von Timer notwendig sind? Es könnte z.B. sein, daß Programm in Microchip Studio 7 angehalten wird, Timer aber trotzdem weiter läuft? Aber in AVR Studio 4.19 wird Timer angehalten, und mit 1/64 Prescaler wird TCNT1 wie erwartet nach 64 Takte (in Disassembler zu sehen) incrementiert...
