Up 移動覚NNストアの I2C 設定と処理 作成: 2026-10-10
更新: 2026-10-10

4足歩行ロボット > 自律型> コンピュータ > プログラミング > I2C > IMUストア > 移動覚NNストアの設定

  • 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変換と復元