diff options
-rw-r--r-- | lib/util.c | 11 | ||||
-rw-r--r-- | lib/util.h | 1 | ||||
-rw-r--r-- | tuer-rfid/tuer-rfid.c | 1 |
3 files changed, 13 insertions, 0 deletions
@@ -37,6 +37,17 @@ void cpu_init(void) CPU_PRESCALE(0); } +void jtag_disable(void) +{ + uint8_t tempreg; + __asm __volatile("in %[tempreg], %[mcucr]" "\n\t" + "ori %[tempreg], %[jtd]" "\n\t" + "out %[mcucr], %[tempreg]" "\n\t" + "out %[mcucr], %[tempreg]" + : [tempreg] "=d" (tempreg) + : [mcucr] "I" (_SFR_IO_ADDR(MCUCR)), [jtd] "M" (_BV(JTD))); +} + #if defined(__BOARD_teensy1__) #define BOOTLOADER_VEC 0x3E00 #elif defined(__BOARD_teensy2__) @@ -24,6 +24,7 @@ #define SPREADAVR_util_h_INCLUDED void cpu_init(void); +void jtag_disable(void); void reset2bootloader(void); #endif diff --git a/tuer-rfid/tuer-rfid.c b/tuer-rfid/tuer-rfid.c index 484659e..4fbe5de 100644 --- a/tuer-rfid/tuer-rfid.c +++ b/tuer-rfid/tuer-rfid.c @@ -119,6 +119,7 @@ int main(void) wdt_disable(); cpu_init(); + jtag_disable(); led_init(); anyio_init(115200, false); TWI_Init(TWI_BIT_PRESCALE_1, TWI_BITLENGTH_FROM_FREQ(1, 200000)); |