From: Michel Pollet Date: Tue, 15 Dec 2009 21:42:25 +0000 (+0000) Subject: ELF: Updated example firmware to generate new traces X-Git-Tag: v1.0a1~55 X-Git-Url: https://git.htl-mechatronik.at/public/?a=commitdiff_plain;h=91732f87fc955cf93ab83f8fc955b97986e53ff2;p=sx%2Fsimavr.git 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;