- I2C の Python ライブラリ
Raspberry Pi 4 の Python I2C ライブラリは,smbus :
import smbus
# get_clock 用
import time
- I2C 通信の設定
移動覚NNストアを mastre,IMUストアを slave,にする。
Linux でネイティブにサポートされている I2C アクセス用デバイスドライバは,i2c-dev。
これと smbus の関係は,つぎのようになる:
smbus のうちに,
<i2c-dev を介した Linux SMBus アクセス>
がある
MCU に対して設定した I2C の内容 (I2C3, 0x30) を書く
# 回路は I2C3 を使う
bus_number = 3
bus = smbus.SMBus( bus_number )
# アドレスは 0x30 を使う
slave_address= 0x30
- imu_store_buffer の読み出し
data = bus.read_i2c_block_data(
0x30,
0,
16
)
0 ( 0x00 ) は,読み出しの起点となるレジスタアドレス。
imu_store_buffer の先頭アドレスと対応している。
- 受信した bytes から元データを復元
データの bytes変換と復元
|