Help us understand the problem. What is going on with this article?

M5StickCでI2C機器を使ってみる

やりたいこと

  • UIFlowを使って簡単プログラミングしたい
  • ちょっとしたところで躓いて先に進まないので基本から
  • I2Cを使ってちょっとしたものを動かしたい

前回のメモ、M5StickCのUIFlowは秀逸だけどI2Cの実装がよくわからない件で、深いところにはタッチできなかったので、手抜きをやめて順番にやってみることにします。

色々調べながらやってみると、このページが参考になりそうです。
まずは、色々環境を整えます。
arduinoやesp32でDCモーターとかサーボーモーターを制御してみる(PCA9685,L298N)

環境整備

基本に返ってスイッチサイエンスのページから環境整備をしていきます。

M5StickC

ここを起点に開発ツールとして紹介されているのが、
UIFlow
MicroPython
M5StickCの小ネタ

UIFlowを一通り使ってみましたが、深いところをやろうとすると、トラブルが続出。
micropythonで書いて、呼び出す形が良いようです。

http://docs.micropython.org/en/latest/pyboard/quickref.html

M5StickCは2個購入したので、片方をUIFlowで、もう片方をIDEで開発するようにします。

M5StickCクイックスタート

基本的にマニュアルに沿って進めればよいのですが、ボードマネージャにESP32が出てこなくて難儀しました。
ボードマネージャのリンクをリンクのコピーで行わずに、テキストのコピーで行ったため、パスが間違っていました。(スペースが挟まってました)

https://dl.espressif.com/dl/package_esp32_index.json
誤 https : //dl.espressif.com/dl/package_esp32_index.json

みなさんもお気を付けください。

これで環境が整いました。
サンプルのFactoryTestも動きました。
キャプチャ.PNG

I2Cをつないでみる

I2C_Testerなるものがあります。
ちょっとつないで、PCA9865がつながっているのか確認してみます。
適当な部品をかき集めました。

25999342-ABBE-4481-B0B7-61D7D5F6C415.jpeg

デバッグ用のシリアル通信

PWMが全く動かないのですが、中身を確認するすべがない。
・・・シリアル通信する手段を確保しなければ・・・

シリアル通信
  Serial.begin(9600);
  Serial.println("GPIO test!");

image.png

IMUのほうが検証は楽そうだ

出力して動きを確認しないとわからないモータドライバよりも、値が入ってくるだけのIMUのほうが検証は楽そうなので、MPC-6050をgroveコネクタ経由で接続しました。

ラベルに加速度X,Y,Z、温度、ジャイロX,Y,Zを表示します。
普通にデータを読み出すとテキストが化けますので、shortをbigエンディアンで読み込みます。

image.png

試行錯誤の末、この体裁に収まりました。
I2Cでアクセスできてます。

この要領でPCA9685にもアクセスしていきます。

(続く)

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした