From: Michel Pollet Date: Tue, 15 Dec 2009 21:42:25 +0000 (+0000) Subject: ELF: Updated example firmware to generate new traces X-Git-Url: http://git.rot13.org/?a=commitdiff_plain;h=91732f87fc955cf93ab83f8fc955b97986e53ff2;hp=51d5f4b07034798845f5d975c6d4df1cc3d0b79f;p=simavr ELF: Updated example firmware to generate new traces Example firmware declares two traces that will generate a trace file automaticaly when run with run_avr. The file is created at load time using the .mmcu declarations. Signed-off-by: Michel Pollet --- diff --git a/tests/atmega88_example.c b/tests/atmega88_example.c index fd15e94..21dbd8c 100644 --- a/tests/atmega88_example.c +++ b/tests/atmega88_example.c @@ -20,6 +20,18 @@ #include "avr_mcu_section.h" AVR_MCU(F_CPU, "atmega88"); +/* + * This small section tells simavr to generate a VCD trace dump with changes to these + * registers. + * Opening it with gtkwave will show you the data being pumped out into the data register + * UDR0, and the UDRE0 bit being set, then cleared + */ +const struct avr_mmcu_vcd_trace_t _mytrace[] _MMCU_ = { + { AVR_MCU_VCD_SYMBOL("UDR0"), .what = (void*)&UDR0, }, + { AVR_MCU_VCD_SYMBOL("UDRE0"), .mask = (1 << UDRE0), .what = (void*)&UCSR0A, }, +}; + + /* declare this in a .eeprom ELF section */ uint32_t value EEMEM = 0xdeadbeef;