I2C-COM仕様 第2版(内容が古くなりましたが記録として残します)

2018.11現在、第3版になっています。こちらからどうぞ。

===
第1版から変更した箇所は下線で示す
===
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|a|b|c|d|e|f|s|p|r|w|t|k|n
の36文字。その他は全て区切り記号として使われる。

3.数値文字:
0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F|a|b|c|d|e|f
の22文字。

4.バイト:
数値文字2桁で表す。範囲は0x00~0xFFである。

5.スレーブアドレス:
7bitを数値文字2桁で表す。範囲は0x00~0x7Fである。

6.制御文字:
S|P|R|W|T|K|N|s|p|r|w|t|k|n
の14文字。以下にそれぞれの機能を説明する。

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

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

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

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

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

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

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

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

※以上の1文字、もしくは後に続く数値2文字を含む3文字、のコマンドは、後に続く区切り文字が入力された時点で実行する。





コメント

  1. After research a couple of of the weblog posts on your web site now, and I truly like your method of blogging. I bookmarked it to my bookmark web site record and might be checking back soon. Pls check out my website online as effectively and let me know what you think. online casino games

    返信削除

コメントを投稿

このブログの人気の投稿

i2c-tools 備忘録(内容が古くなりましたが記録として残します)

python-smbus(内容が古くなりましたが記録として残します)