2018-07-12 14:50:55 +06:00
|
|
|
/* Library made by: g4lvanix
|
|
|
|
* Github repository: https://github.com/g4lvanix/I2C-slave-lib
|
|
|
|
|
|
|
|
Info: Inititate the library by giving the required address.
|
|
|
|
Read or write to the necessary buffer according to the opperation.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef I2C_SLAVE_H
|
|
|
|
#define I2C_SLAVE_H
|
|
|
|
|
2018-07-18 22:55:57 +06:00
|
|
|
#define TX_BUFFER_SIZE 30
|
|
|
|
#define RX_BUFFER_SIZE 30
|
|
|
|
|
2018-07-12 14:50:55 +06:00
|
|
|
volatile uint8_t buffer_address;
|
2018-07-18 22:55:57 +06:00
|
|
|
static volatile bool slave_has_register_set = false;
|
|
|
|
volatile uint8_t txbuffer[TX_BUFFER_SIZE];
|
|
|
|
volatile uint8_t rxbuffer[RX_BUFFER_SIZE];
|
2018-07-12 14:50:55 +06:00
|
|
|
|
|
|
|
void i2c_init(uint8_t address);
|
|
|
|
void i2c_stop(void);
|
|
|
|
ISR(TWI_vect);
|
|
|
|
|
2018-07-18 22:55:57 +06:00
|
|
|
#endif // I2C_SLAVE_H
|