Jetez un oeil à l'avarice. Sa page de manuel a également quelque chose à dire sur debugwire. Je ne sais pas si ce sera une bonne ou une mauvaise nouvelle.
activer le débogage
activer avec avrdude (fusible pour attiny88):
avrdude -c dragon_isp -P usb -p attiny88 -v -U hfuse:w:0xd9:m
compilation
- doit être compilé avec -ggdb ou great (--gdb3) mais ne semble pas aider avec les macros
-
aucune optimisation
COMPILE =$(GCC_PATH) -ggdb3 -Wall -Wextra $(OPTIMISATION) -std=gnu11 -flto -mmcu=$(DEVICE) -DF_CPU=$(CLOCK)
besoin de main.hex et main.elf
débogage
commencer l'avarice :
avarice -g -w -P attiny88 :4242
puis lancez gdb :
avr-gdb main.elf
et connectez-vous :
target remote localhost:4242
points d'arrêt
uniquement les points d'arrêt sw avec debugwire, donc si besoin de points d'arrêt, utilisez :
asm('break');
revenir en mode spi/icsp
NB. La broche VTG/VCC (2 sur l'en-tête) doit être connectée à l'alimentation de la puce pour que cela fonctionne !
avrdude -c dragon_isp -P usb -p attiny88 -v -U hfuse:w:0xdd:m