Ich verwende (seit Jahren) Microchip Studio um Atmega AVRs zu programmieren. Seit 2 Tagen funktioniert aber der Stop bei Breakpoints nicht mehr. Ich erstelle ein neues Projekt - GCC Excecutable oder AVR XC8 Application Project- und ändere nix. Dann kopiere ich folgenden Code ins Main rein:
#include <avr/io.h>
uint32_t debug_value = 0;
int main(void) { DDRC |= (1<<PORTC0); /* Replace with your application code */ while (1) { debug_value++; if (debug_value == 50000) { PORTC |= (1<<PORTC0) ; } else { PORTC &= ~(1<<PORTC0) ; } } }
Dabei setze ich die Breakpoints auf PORTC... in der If Schleife. Die werden aber ignoriert.
Optimization steht auf -Og und Debugging -g2. Tool ist Atmel Ice + Debug wire. Controller ATmega88PB.
Das Programm compiliert korrekt, läd und läuft aber erreicht nie seinen Brakpoint... Wobei das ein Testprogramm ist. Andere komplexere ereilt das gleichs Schicksal. Ein altes geöffnet funktioniert aber. Frage: Warum bei neu erstellten Programmen nicht mehr? Neuinstallation war nicht erfolgreich vom Microchip Studio.
