i2cslave class without interrupt process
i2cslave.h
- Committer:
- sgrsn
- Date:
- 2017-02-26
- Revision:
- 0:2976149f5c28
File content as of revision 0:2976149f5c28:
#ifndef MBED_I2CSLAVE_H #define MBED_I2CSLAVE_H #include "mbed.h" #define SendData 0 #define RequestData 1 class i2cslave : public I2CSlave { public: char *_Registar; i2cslave(PinName sda, PinName scl, char *Registar); /*{ _Registar = Registar; frequency(400000); }*/ void communication(); /*{ switch(receive()) { case I2CSlave::NoData: //データなし break; case I2CSlave::ReadAddressed: //マスターからのデータ送信要求 break; case I2CSlave::WriteAddressed: //マスターからデータを受信 geti2c(); break; case I2CSlave::WriteGeneral: //マスターからデータを受信(全スレーブ宛) break; } }*/ void geti2c(); /*{ char i2cData[3] = {}; read(i2cData, 3); wait_us(30); switch(i2cData[2]) { case SendData: read(_Registar + i2cData[1], i2cData[0]); break; case RequestData: write(_Registar + i2cData[1], i2cData[0]); break; } }*/ }; #endif