32 #define I2C_BUFSIZE 260
34 typedef struct i2c_info
39 unsigned char address;
40 unsigned char buf[I2C_BUFSIZE];
56 void i2c_init(i2c_info *i2c,
int sda,
int scl);
70 void i2c_init_slave(i2c_info *i2c,
int sda,
int scl,
unsigned char addr);
112 int i2c_write(i2c_info *i2c,
unsigned char data);
int i2c_request_from(i2c_info *i2c, unsigned char address, int count)
I2Cデバイスに対して受信シーケンスを発行し、データを読み出す
int i2c_available(i2c_info *i2c)
受信バッファ内に格納されているデータ数を返す
void i2c_begin_transmission(i2c_info *i2c, unsigned char address)
I2Cデバイスに対して送信を開始するための準備をする
void i2c_set_freq(int freq)
I2Cの周波数を変更する
int i2c_write(i2c_info *i2c, unsigned char data)
送信バッファの末尾に1バイトのデータを追加する
void i2c_init(i2c_info *i2c, int sda, int scl)
I2C(マスター)を操作するための初期化
unsigned char i2c_end_transmission(i2c_info *i2c)
ターゲットデバイスに対してI2Cの送信シーケンスを発行する
void i2c_init_slave(i2c_info *i2c, int sda, int scl, unsigned char addr)
I2C(スレーブ)を操作するための初期化
int i2c_read(i2c_info *i2c)
受信バッファからデータを1バイト取り出す