From 7479c9ed3f443efccb6ec7ae6407b789907a0a49 Mon Sep 17 00:00:00 2001 From: Markus Koch Date: Sat, 26 Oct 2019 22:38:51 +0200 Subject: [PATCH] keyboard: dynamically derive UBRR values from BAUDRATE --- keyboard/avr/main.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/keyboard/avr/main.c b/keyboard/avr/main.c index 43cbc06..1e141a7 100644 --- a/keyboard/avr/main.c +++ b/keyboard/avr/main.c @@ -12,7 +12,6 @@ #define DELAY_ROW_SWITCH() _delay_ms(1) //_delay_us(1) #define BAUDRATE 9600 -#define UBRR 51 // (F_CPU / BAUDRATE) / 32 /* Keycode from include/linux/input.h */ #define KEY_RESERVED 0 @@ -259,8 +258,8 @@ int main() MATRIX_Y1(PORT) &= ~MASK_Y1; /* Pull row low when selected */ MATRIX_Y2(PORT) &= ~MASK_Y2; /* Pull row low when selected */ UCSRB = (1 << TXEN); - UBRRH = (UBRR >> 8) & 0xFF; - UBRRL = UBRR & 0xFF; + UBRRH = ((((F_CPU / BAUDRATE) / 16) - 1) >> 8); + UBRRL = (((F_CPU / BAUDRATE) / 16) - 1); fn_active = 0;