]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - keyboards/ergoinu/serial.h
Keyboard: add ergoinu keyboard (#3655)
[qmk_firmware.git] / keyboards / ergoinu / serial.h
diff --git a/keyboards/ergoinu/serial.h b/keyboards/ergoinu/serial.h
new file mode 100644 (file)
index 0000000..67cf06a
--- /dev/null
@@ -0,0 +1,24 @@
+#pragma once
+
+#include <stdbool.h>
+
+// ////////////////////////////////////////////
+// Need Soft Serial defines in serial_config.h
+// ////////////////////////////////////////////
+// ex.
+//  #define SERIAL_PIN_DDR DDRD
+//  #define SERIAL_PIN_PORT PORTD
+//  #define SERIAL_PIN_INPUT PIND
+//  #define SERIAL_PIN_MASK _BV(PD?)   ?=0,2
+//  #define SERIAL_PIN_INTERRUPT INT?_vect  ?=0,2
+//  #define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2
+//  #define SERIAL_MASTER_BUFFER_LENGTH MATRIX_ROWS/2
+
+// Buffers for master - slave communication
+extern volatile uint8_t serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH];
+extern volatile uint8_t serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH];
+
+void serial_master_init(void);
+void serial_slave_init(void);
+int serial_update_buffers(void);
+bool serial_slave_data_corrupt(void);