NO IMAGE

I2C制御コマンドの書式( 初版。第2版が出ましたが、記録として残しておきます)

  • 2019年4月24日
  • 2019年4月24日
  • IoT
  • 25view
IoT NO IMAGE

I2C制御コマンドを実装する下準備として、I2C制御コマンドの書式を正確に定義しておきます。

===

1.仮称:

I2C-COM

2.文字:

0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F|S|P|R|W|T|K|N

の23文字。その他は全て区切り記号として読み飛ばされる。

3.数値文字:

0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F

の16文字。

4.バイト:

数値文字2桁で表す。範囲は0x00~0xFFである。

5.スレーブアドレス:

7bitを数値文字2桁で表す。範囲は0x00~0x7Fである。

6.制御文字:

S|P|R|W|T|K|N

の7文字であり、以下にそれぞれ説明する。

前提として、1つのトランザクション(ひとまとまりの流れ)はSで始まりPで終わる。その途中に再度Sがあってもよい。

S

・I2C信号線上にSTART条件を出す。リプライはない。エラーもない。

P

・I2C信号線上にSTOP条件を出す。リプライはない。エラーもない。

K

・I2C信号線上でslaveから8bit受信した後ACK条件を出す。8bit受信できなかったらタイムアウトエラーになる。(タイムアウトになる条件は後日)

N

・I2C信号線上でslaveから8bit受信した後NACK条件を出す。8bit受信できなかったらタイムアウトエラーになる。(タイムアウトになる条件は後日)

R

・スレーブアドレスが後に続く。Pを出すまでデータの向きはslave -> masterである。slaveからACKが返らないとタイムアウトエラーになる。(タイムアウトになる条件は後日)

例)R29

W

・スレーブアドレスが後に続く。Pを出すまでデータの向きはmaster -> slaveである。slaveからACKが返らないとタイムアウトエラーになる。(タイムアウトになる条件は後日)

例)W29

T

・バイトが後に続く。Pを出すまでデータの向きはmaster -> slaveである。slaveからACKが返らないとタイムアウトエラーになる。(タイムアウトになる条件は後日)

例)W8A

以上

NO IMAGE
最新情報をチェックしよう!