diff options
Diffstat (limited to 'tmk_core/common')
| -rw-r--r-- | tmk_core/common/avr/bootloader.c | 2 | ||||
| -rw-r--r-- | tmk_core/common/avr/timer.c | 19 |
2 files changed, 14 insertions, 7 deletions
diff --git a/tmk_core/common/avr/bootloader.c b/tmk_core/common/avr/bootloader.c index ca9746f32..32f69ae8b 100644 --- a/tmk_core/common/avr/bootloader.c +++ b/tmk_core/common/avr/bootloader.c | |||
| @@ -247,7 +247,7 @@ void bootloader_jump(void) { | |||
| 247 | 247 | ||
| 248 | #else // Assume remaining boards are DFU, even if the flag isn't set | 248 | #else // Assume remaining boards are DFU, even if the flag isn't set |
| 249 | 249 | ||
| 250 | # if !(defined(__AVR_ATmega32A__) || defined(__AVR_ATmega328P__)) // no USB - maybe BOOTLOADER_BOOTLOADHID instead though? | 250 | # if !(defined(__AVR_ATmega32A__) || defined(__AVR_ATmega328P__) || defined(__AVR_ATtiny85__)) // no USB - maybe BOOTLOADER_BOOTLOADHID instead though? |
| 251 | UDCON = 1; | 251 | UDCON = 1; |
| 252 | USBCON = (1 << FRZCLK); // disable USB | 252 | USBCON = (1 << FRZCLK); // disable USB |
| 253 | UCSR1B = 0; | 253 | UCSR1B = 0; |
diff --git a/tmk_core/common/avr/timer.c b/tmk_core/common/avr/timer.c index 88fa1dfa6..c2e6c6e08 100644 --- a/tmk_core/common/avr/timer.c +++ b/tmk_core/common/avr/timer.c | |||
| @@ -45,19 +45,26 @@ void timer_init(void) { | |||
| 45 | # error "Timer prescaler value is not valid" | 45 | # error "Timer prescaler value is not valid" |
| 46 | #endif | 46 | #endif |
| 47 | 47 | ||
| 48 | #ifndef __AVR_ATmega32A__ | 48 | #if defined(__AVR_ATmega32A__) |
| 49 | // Timer0 CTC mode | ||
| 50 | TCCR0 = _BV(WGM01) | prescaler; | ||
| 51 | |||
| 52 | OCR0 = TIMER_RAW_TOP; | ||
| 53 | TIMSK = _BV(OCIE0); | ||
| 54 | #elif defined(__AVR_ATtiny85__) | ||
| 49 | // Timer0 CTC mode | 55 | // Timer0 CTC mode |
| 50 | TCCR0A = _BV(WGM01); | 56 | TCCR0A = _BV(WGM01); |
| 51 | TCCR0B = prescaler; | 57 | TCCR0B = prescaler; |
| 52 | 58 | ||
| 53 | OCR0A = TIMER_RAW_TOP; | 59 | OCR0A = TIMER_RAW_TOP; |
| 54 | TIMSK0 = _BV(OCIE0A); | 60 | TIMSK = _BV(OCIE0A); |
| 55 | #else | 61 | #else |
| 56 | // Timer0 CTC mode | 62 | // Timer0 CTC mode |
| 57 | TCCR0 = _BV(WGM01) | prescaler; | 63 | TCCR0A = _BV(WGM01); |
| 64 | TCCR0B = prescaler; | ||
| 58 | 65 | ||
| 59 | OCR0 = TIMER_RAW_TOP; | 66 | OCR0A = TIMER_RAW_TOP; |
| 60 | TIMSK = _BV(OCIE0); | 67 | TIMSK0 = _BV(OCIE0A); |
| 61 | #endif | 68 | #endif |
| 62 | } | 69 | } |
| 63 | 70 | ||
