#ifndef I2C_H_QWERTY #define I2C_H_QWERTY #define PSC_I2C 1 // I2C prescaler #define F_I2C 400000UL // I2C Clock #include #include extern uint8_t i2c_error; #define I2C_ERR_START 0 // Timeout start condition #define I2C_ERR_WRITE 1 // Timeout byte transmission #define I2C_ERR_READACK 2 // Timeout read acknowledge #define I2C_ERR_READNACK 3 // Timeout read nacknowledge void i2c_init(void); void i2c_start(void); void i2c_write(uint8_t byte); uint8_t i2c_read_ack(void); uint8_t i2c_read_nack(void); void i2c_stop(void); #endif