Files
ats20/i2c.h
Олег Бородин 693b6b33b8 fmrds
2025-02-02 20:13:15 +02:00

29 lines
624 B
C

#ifndef I2C_H_QWERTY
#define I2C_H_QWERTY
#include <stdio.h>
#include <avr/io.h>
extern uint8_t i2c_error;
extern uint8_t i2c_status;
#define I2C_ERR_START 0 // Timeout start condition
#define I2C_ERR_RESTART 1 // Timeout start condition
#define I2C_ERR_WRITE 2 // Timeout byte transmission
#define I2C_ERR_READACK 3 // Timeout read acknowledge
#define I2C_ERR_READNACK 4 // Timeout read nacknowledge
void i2c_init(void);
void i2c_start(void);
void i2c_write(uint8_t byte);
void i2c_restart(void);
uint8_t i2c_read_ack(void);
uint8_t i2c_read_nack(void);
void i2c_stop(void);
#endif