サービス
サービスを探す
プロ人材を探す
仕事を探す
ブログを探す
サービス
サービスを探す
プロ人材を探す
仕事を探す
ブログを探す
購入・発注したい方
サービスを探す
プロ人材を探す
ノウハウ・素材を探す
ブログを探す
仕事・求人を投稿して募集
エージェントに人材を紹介してもらう
受注・働きたい方
出品する
単発の仕事を探す
継続 (時給/月給) の仕事を探す
エージェントに仕事を紹介してもらう
カテゴリ一覧
イラスト作成・漫画制作
デザイン制作
Web制作・HP作成・EC構築
動画編集・映像制作
集客・マーケティング相談
NEW
ビジネス代行・事務代行
音楽制作・ナレーション
IT相談・システム開発
ライティング・翻訳
コンサルティング・士業
生成AI活用・開発・制作
NEW
占い
悩み相談・カウンセリング
学習指導・資格・キャリア相談
住まい・美容・生活相談
オンラインレッスン・習い事
ハンドメイド制作
出張撮影・出張サービス
資産運用・副業の相談
NEW
弁護士検索・法律Q&A(法律相談)
サポート
はじめての方へ
ご利用ガイド
お困りのときは
ログイン
会員登録
サービスを探す
イラスト作成・漫画制作
>
デザイン制作
>
Web制作・HP作成・EC構築
>
動画編集・映像制作
>
集客・マーケティング相談
NEW
>
ビジネス代行・事務代行
>
音楽制作・ナレーション
>
IT相談・システム開発
>
ライティング・翻訳
>
コンサルティング・士業
>
生成AI活用・開発・制作
NEW
>
占い
>
悩み相談・カウンセリング
>
学習指導・資格・キャリア相談
>
住まい・美容・生活相談
>
オンラインレッスン・習い事
>
ハンドメイド制作
>
出張撮影・出張サービス
>
資産運用・副業の相談
NEW
>
>
プロ人材を探す
>
ノウハウ・素材を探す
ブログを探す
>
求人募集を投稿する
人材を紹介してもらう
仕事を探す
出品する
仕事を探す
仕事を紹介してもらう
出品する
仕事を紹介してもらう
求人募集を投稿する
人材を紹介してもらう
ブログを投稿
会員登録で10%割引クーポンを獲得!
会員登録で10%割引クーポンを獲得!
ココナラブログ
ホーム
ブログトップ
ブログ
IT・テクノロジー
XIAO RP2040のI2C悪戦苦闘の記
記事
IT・テクノロジー
Koichi Kurahashi
2022/07/15 07:52
表記Seeed XIAO RP2040(以下XIAO2040と表記)のI2C Master - Slave通信がうまく動かずに苦労しました。Master-Slaveが駄目というよりも、Wire1が駄目です。
テストには「TalkingToMyself」を使っています。マイコン1台で2組のI2Cを使い片方をマスター他方をスレーブとして通信するやつです。ボード設定はPhilhower版Arduinoを使っています。
まだ完全に切り分けができていないのですが、ボード設定としてSeeed XIAO RP2040を使うとうまくいきません。
以下、とりあえず動かす方法です。XIAO2040固有の機能は使えなくなるかもしれませんが、ボードとしてRaspberry Pi Picoを指定して、以下のピン番号に置き換えて使用してください。たとえば、I2C0がアサインされたGPIO0, GPIO1を使うならば、D6 = 0u, D7 = 1uと記載されているので、Wire.setSDA(0); Wire.setSCL(1);と記述し実際の配線はD6とD7を使います。
なんでこんなややこしいことをしてるんでしょうね。実際、XIAO2040を選んで Serial.println(D6);を実行すると0が出力されます。つまり、他のArduinoのつもりでdigitalWrite(6)って書いても駄目でLチカですらうまく動かないんですよね……。
もう一つ、WireにはI2C0、Wire1にはI2C1に属するGPIOピンを指定してください。
PR2040のI2Cは、I2C0とI2C1の2つのグループがあります。Pi Picoなどのpinoutを見るとI2C0で使えるピンとI2C1で使えるピンとにわかれています。WireにI2C0をアサインするとWire1にはI2C0をアサインできません。アサインするとがっつりフリーズしてシリアル見えないし書き込みもできなくなります(BOOTSEL押しながらリセット押し離し)。
ついでに、SDAにSCLをアサインしても同様にフリーズします(ハマりました)。
そんなわけで、Arduinoのボード設定としてSeeed XIAO PR2040を選んだ場合に二組目のI2C、Wire1を使う方法はまだわかっていないのですが、とりあえずXIAO RP2040でもRaspberry Pi Picoをボードとして選んで、GPIO番号をアサインしなおせば対応できます。
そのうち時間ができたら上記問題を追いかけてみたいと思います。でも、現在ココナラ案件1ヶ月待ち状態なので、いつになることやら……。
ご拝読ありがとうございました!
マイコンに関する技術相談、ガジェットを作りたい方のご相談と実際の製作(試作から量産まで)、はんだ付けなどお請けしておりますので、お気軽にご相談ください(CM
#マイコン
#I2C
一覧に戻る