day09/ex00/include/lib/i2c.h

21 lines
372 B
C
Raw Normal View History

2026-04-27 14:09:28 +02:00
#ifndef I2C_H
#define I2C_H
#include <avr/io.h>
#include <util/twi.h>
#include "lib/mystd.h"
#define I2C_CLOCK 400000UL
#define I2C_ADDR(ADDR, RW) ((ADDR) << 1 | (RW & 1))
void i2c_init(void);
t_error i2c_start(void);
t_error i2c_stop(void);
t_error i2c_write(uint8_t);
t_error i2c_read_nack(uint8_t* out);
t_error i2c_read_ack(uint8_t* out);
#endif /* I2C_H */