summary refs log tree commit diff
path: root/keyboards/centromere
diff options
context:
space:
mode:
authorRyan <fauxpark@gmail.com>2021-02-06 09:20:48 +1100
committerGitHub <noreply@github.com>2021-02-06 09:20:48 +1100
commit5ea92a9c1cbe3e20bf4830d550d797a8e9650da8 (patch)
tree75ea1413ae4fa23bd0b1230629b6a3b3e215c5eb /keyboards/centromere
parent464eb7137d27e3a31e85032c85c9fda627a8b33f (diff)
Serial refactor (#11521)
Diffstat (limited to 'keyboards/centromere')
-rw-r--r--keyboards/centromere/centromere.c5
-rw-r--r--keyboards/centromere/config.h18
-rw-r--r--keyboards/centromere/matrix.c4
-rw-r--r--keyboards/centromere/rules.mk9
4 files changed, 8 insertions, 28 deletions
diff --git a/keyboards/centromere/centromere.c b/keyboards/centromere/centromere.c
index 8800e2ce6a..269c60fd75 100644
--- a/keyboards/centromere/centromere.c
+++ b/keyboards/centromere/centromere.c
@@ -1,9 +1,5 @@
 #include "centromere.h"
 
-void uart_init(void) {
-	SERIAL_UART_INIT();
-}
-
 void led_init(void) {
 #if MCU == atmega32u2
     setPinOutput(C4); // Set red LED pin as output
@@ -32,7 +28,6 @@ void matrix_init_kb(void) {
 	// put your keyboard start-up code here
 	// runs once when the firmware starts up
 	matrix_init_user();
-	uart_init();
 	led_init();
 }
 
diff --git a/keyboards/centromere/config.h b/keyboards/centromere/config.h
index 0a908f60f9..e502e2534b 100644
--- a/keyboards/centromere/config.h
+++ b/keyboards/centromere/config.h
@@ -59,17 +59,9 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 //UART settings for communication with the RF microcontroller
 #define SERIAL_UART_BAUD 500000
-#define SERIAL_UART_DATA UDR1
-#define SERIAL_UART_UBRR (F_CPU / (16UL * SERIAL_UART_BAUD) - 1)
-#define SERIAL_UART_TXD_READY (UCSR1A & _BV(UDRE1))
 #define SERIAL_UART_RXD_PRESENT (UCSR1A & _BV(RXC1))
-#define SERIAL_UART_INIT() do { \
-    	/* baud rate */ \
-    	UBRR1L = SERIAL_UART_UBRR; \
-    	/* baud rate */ \
-    	UBRR1H = SERIAL_UART_UBRR >> 8; \
-    	/* enable TX and RX */ \
-    	UCSR1B = _BV(TXEN1) | _BV(RXEN1); \
-    	/* 8-bit data */ \
-    	UCSR1C = _BV(UCSZ11) | _BV(UCSZ10); \
-  	} while(0)
+#define SERIAL_UART_INIT_CUSTOM       \
+    /* enable TX and RX */            \
+    UCSR1B = _BV(TXEN1) | _BV(RXEN1); \
+    /* 8-bit data */                  \
+    UCSR1C = _BV(UCSZ11) | _BV(UCSZ10);
diff --git a/keyboards/centromere/matrix.c b/keyboards/centromere/matrix.c
index c5fc8db6ce..5ca083b435 100644
--- a/keyboards/centromere/matrix.c
+++ b/keyboards/centromere/matrix.c
@@ -26,6 +26,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #include "util.h"
 #include "matrix.h"
 #include "timer.h"
+#include "protocol/serial.h"
 
 #if (MATRIX_COLS <= 8)
 #    define print_matrix_header()  print("\nr/c 01234567\n")
@@ -79,12 +80,11 @@ uint8_t matrix_cols(void) {
 void matrix_init(void) {
 
     matrix_init_quantum();
+    serial_init();
 }
 
 uint8_t matrix_scan(void)
 {
-    SERIAL_UART_INIT();
-
     uint32_t timeout = 0;
 
     //the s character requests the RF remote slave to send the matrix information
diff --git a/keyboards/centromere/rules.mk b/keyboards/centromere/rules.mk
index f08f6e6ebd..2469d244a6 100644
--- a/keyboards/centromere/rules.mk
+++ b/keyboards/centromere/rules.mk
@@ -31,14 +31,7 @@ MIDI_ENABLE = no 		# MIDI controls
 UNICODE_ENABLE = yes 		# Unicode
 BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
 
-USB = /dev/ttyACM0
-
-# upload: build
-# 	$(CENTROMERE_UPLOAD_COMMAND)
-
-OPT_DEFS += -DCENTROMERE_PROMICRO
-
 # # project specific files
-SRC = matrix.c
+SRC += matrix.c serial_uart.c
 
 LAYOUTS = split_3x5_3 split_3x6_3