keychron_qmk_firmware/keyboards/fortitude60/serial.h
Pekaso 2196dc9f86 Add support for staggerd column layout KB "Fortitude60" (#3090)
* modifying fortitude for working

* add accurate keymap

* backlight fix

* Fix slave LED Backlight

* Add readme.md

* modified readme.md

* Fixed make error

* Commit including suggestions

* Add dvorak and colemak layout and some fix
2018-06-02 08:48:34 -07:00

33 lines
820 B
C

#ifndef MY_SERIAL_H
#define MY_SERIAL_H
#include "config.h"
#include <stdbool.h>
/* TODO: some defines for interrupt setup */
#define SERIAL_PIN_DDR DDRD
#define SERIAL_PIN_PORT PORTD
#define SERIAL_PIN_INPUT PIND
#ifndef USE_SERIAL_PD2
#define SERIAL_PIN_MASK _BV(PD0)
#define SERIAL_PIN_INTERRUPT INT0_vect
#else
#define SERIAL_PIN_MASK _BV(PD2)
#define SERIAL_PIN_INTERRUPT INT2_vect
#endif
#define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2
#define SERIAL_MASTER_BUFFER_LENGTH 1
// 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);
#endif