Up MCU の設定 作成: 2026-10-10
更新: 2026-10-10

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

    SBC側の移動覚NNストアが,MCU 側の IMUストアの imu_store_buffer を,I2C で読み出す。
    IMUストアはこの通信の slave であり,imu_store_buffer にはアドレス 0x30 がついている。


  • I2C slave の設定
    ここでは,使用 I2C を I2C3 に, slave アドレスを 0x30 に設定する。

    この設定の要点は,モータストアで設定した I2C1, 0x10 と,SBC 側から見て重複しないこと。
    そして,IMUセンサにあてた I2C2 と重複しないこと。


    この設定により,
     I2C3 のハンドル (設定情報) hi2c3 が生成され,
     IOwn Address レジスタに 0x30 が入る

      typedef struct
      {
        ‥‥
      } I2C_HandleTypeDef;

      I2C_HandleTypeDef hi2c3;

      hi2c3.Instance = I2C3;
      hi2c3.Init.OwnAddress1 = 0x30;
      hi2c3.Init.ClockSpeed = 400000;
       ‥‥

    そして,つぎが実現する:
      SBC 側からの 0x30 への送信は,
      STM32の I2C3回路が
      これを自分宛と判断する