27 lines
		
	
	
		
			711 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			711 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
 | |
| #define SERIAL_PIN_MASK _BV(PD0)
 | |
| #define SERIAL_PIN_INTERRUPT INT0_vect
 | |
| 
 | |
| #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
 |