(2014.5.8 作成)
(2017.8.16 更新)
またベースクラス内にソフトウェアI2Cクラスを置いています。
デバイスがAckを返すまで待機 |
||
プロトタイプ | virtual void WaitTillDeviceReady(const uint8_t &SlaveAddress)const = 0; | |
戻り値 |
なし |
|
引数 |
SlaveAddress |
左詰め7bitアドレスで指定してください。LSB1bitは無視されます。 |
備考 |
EEPROMの書き込み完了待ちなどへの使用を想定しています。 |
デバイスがAckを返すか確認 |
||
プロトタイプ | virtual bool CheckAck(const uint8_t &SlaveAddress)const =0; | |
戻り値 |
Ackを返せばTrue, Nakを返せばFalse |
|
引数 |
SlaveAddress |
左詰め7bitアドレスで指定してください。LSB1bitは無視されます。 |
備考 |
デバイスが接続されて、使用できるか確認する用途での使用を想定しています。 |
デバイスへデータを書き込む |
||
プロトタイプ |
virtual void Write( const uint8_t &SlaveAddress, const uint16_t &Address, const uint8_t &AddressLength, uint8_t *Data, const uint8_t &DataLength )const = 0; |
|
戻り値 | なし | |
引数 |
SlaveAddress |
左詰め7bitアドレスで指定してください。LSB1bitは無視されます。 |
Address |
デバイス内部のアドレスです。 |
|
AddressLength |
上記デバイス内アドレスのバイト数です0~2まで対応しています。 |
|
Data |
実際に送るデータ配列 |
|
DataLength |
送るデータの量 |
|
備考 |
|
デバイスからデータを読み込む |
||
プロトタイプ |
virtual void Read( const uint8_t &SlaveAddress, const uint16_t &Address, const uint8_t &AddressLength, uint8_t *Data, const uint8_t &DataLength )const = 0; |
|
戻り値 | なし | |
引数 |
SlaveAddress |
左詰め7bitアドレスで指定してください。LSB1bitは無視されます。 |
Address |
デバイス内部のアドレスです。 |
|
AddressLength |
上記デバイス内アドレスのバイト数です0~2まで対応しています。 |
|
Data |
受け取るデータを格納する配列。事前に領域確保が必要。 |
|
DataLength |
受け取りたいデータの量 |
|
備考 |
|