Echa un vistazo a la avaricia. Su página de manual también tiene algo que decir sobre debugwire. Sin embargo, no sé si serán buenas o malas noticias.
habilitar cable de depuración
habilitar con avrdude (fusible para attiny88):
avrdude -c dragon_isp -P usb -p attiny88 -v -U hfuse:w:0xd9:m
compilación
- debe compilarse con -ggdb o great (--gdb3) pero no parece ayudar con las macros
-
sin optimizaciones
COMPILE =$(GCC_PATH) -ggdb3 -Wall -Wextra $(OPTIMIZACIÓN) -std=gnu11 -flto -mmcu=$(DISPOSITIVO) -DF_CPU=$(RELOJ)
necesita main.hex y main.elf
depuración
empezar avaricia:
avarice -g -w -P attiny88 :4242
luego inicie gdb:
avr-gdb main.elf
y conectar:
target remote localhost:4242
puntos de interrupción
solo intercambie puntos de interrupción con debugwire, por lo que si necesita puntos de interrupción, use:
asm('break');
volver al modo spi/icsp
NÓTESE BIEN. ¡El pin VTG/VCC (2 en el encabezado) debe estar conectado al suministro del chip para que esto funcione!
avrdude -c dragon_isp -P usb -p attiny88 -v -U hfuse:w:0xdd:m