Software
RaspberryPi
元に戻る

SMBus Python Module 2024/11/01

本文目次

本文以外目次
1.SMBusとは
2.SMBusコマンド
■RaspberryPi
 (1)RaspberryPi Hardware
 (2)RaspberryPi OS Install & I/Otest
 (3)RaspberryPi Programming
 (4)RaspberryPi Shell Commands sed
 (5)RaspberryPi Shell Commands i2ctools
■Python (プログラム言語)
 (1)Python_Start
 (2)Python_Library
 (3)Python_Device Control
 (4)PythonPackageInstaller pip
■その他
 (1)正規表現
 (2)ASCIIコード

本   文
1.SMBus とは
 I2CのプロトコルにはSMBus(System Management Bus)やPMBus(Power Management Bus)があり、SMBusは温度や電圧などを監視するシステムを制御しやすいようにするものです。
 Pythonのモジュールとして開発されたSMBusもこの用途に対して作成されたものと思う。
 また
 なおSMBusについては analog.com の I2Cプライマ、SMBus、PMBusの仕様を学ぶ に詳細に解説されている。
 [目次へ戻る]


2.SMBusコマンド

write_quick(int addr) 読み取り/書き込みビットのみを送信する。
read_byte(int addr) デバイス レジスタを指定せずに 1 バイトを読取る。
write_byte(int addr,char val) デバイス レジスタを指定せずに 1 バイトを送信する。
read_byte_data(int addr,char cmd) バイト データ トランザクションを読取る。
write_byte_data(int addr,char cmd,char val) バイトデータトランザクションの書き込む。
read_word_data(int addr,char cmd) Wordデータトランザクションを読取る。
write_word_data(int addr,char cmd,int val) Word Data トランザクションの書き込む。
read_block_data(int addr,char cmd) ブロックデータトランザクションを読取る。
write_block_data(int addr,char cmd,long vals[]) デバイスに最大 32 バイトを書込む。この関数は valls 配列の前に vals 配列の長さを示す最初のバイトを追加する。代わりにwrite_i2c_block_dataを使用する。
read_i2c_block_data(int addr,char cmd) ブロック読み取りトランザクション。
write_i2c_block_data(int addr,char cmd,long vals[]) ブロック書き込みトランザクション。

process_call(int addr,char cmd,int val) コールトランザクションを処理する。
block_process_call(int addr,char cmd,long vals[]) ブロック プロセス コール トランザクション。
 [目次へ戻る]