Seeeduino XIAOのデジタル出力
Seeed K.K. エンジニアブログにも記事をポストしていますが、雑多な感じのものはこっちの個人ブログへポストすることにします。
Seeeduino XIAO、ちっちゃカワイイので、のんびりじっくりと時間をかけて楽しもうと思っています。
さっそく、基本中の基本、デジタル出力を確認しましょう。
ハードウェア
下図の「D〇」のピンがデジタル入出力で使えるみたい。
ということは、、、つまり、(電源を除いた)どのピンでもデジタル入出力可能!!
ほほー。
ってことで、D0とD1に、LED-電流制限抵抗-GNDの流れを結線しました。
ソフトウェア
LED1が点灯(0.2秒)、LED2が点灯(0.2秒)、消灯(1秒)を繰り返すコードを作成しました。
constexpr int LED1 = 0; // D0 constexpr int LED2 = 1; // D1 void setup() { pinMode(LED1, OUTPUT); pinMode(LED2, OUTPUT); } void loop() { digitalWrite(LED1, HIGH); digitalWrite(LED2, LOW); delay(200); digitalWrite(LED1, LOW); digitalWrite(LED2, HIGH); delay(200); digitalWrite(LED1, LOW); digitalWrite(LED2, LOW); delay(1000); }
実行!
えー、点滅しました。(動画は割愛w)
デジタル出力のピン番号って不思議ですよね?
Seeeduino XIAOの回路図を見ると、D0はSAMD21マイコンのPA2に接続されています。
でも、digitalWrite()に指定するピン番号は2ではなくて0...。
どこかで番号を変換(マッピング)していると思われるので、探しました。
定義しているのはココ。Platformのvariants\XIAO_m0\variant.cppでした。
そして、これを使っている箇所は、、、色々w
デジタル出力のときは、cores\arduino\wiring_digital.cでした。
ESP32-Azure IoT Kit ソフト編
これの続きです。
それでは、ESP32-Azure IoT Kitを動かしてみたいと思います。
Getting Started的な手順は、いろいろとリンクを漁ってみたところ、次の2箇所にありました。
続きを読むESP32-Azure IoT Kit ハード編
Microsoftのブログをつらつらと見ていたところ、ESP-WROOM-02やESP32-WROOM-32でお馴染みの、Espressifのデバイスが簡単にAzure IoTへ接続できるよ!という記事が。
続きを読むMediaTek MT3620 M4 Driverを(ざっくり)調べた
Azure Sphere MT3620のCortex-A7(HLApp)に対しては、Azure Sphere SDKにライブラリが含まれていますが、Cortex-M4(RTApp)に対してはライブラリが提供されていません。軽く作るならgithubに公開されているサンプルコードを流用、ちゃんと作るならNDA契約の下、M4データシートを入手して様々なレジスタと格闘することになります。
そんな状況がしばらく続いていましたが、先日、MT3620を製造するMediaTekから、M4向けライブラリがオープンソースで(!)公開されました。
そこで、このMediaTek MT3620 M4 Driverがどんな雰囲気のものなのか調べました。
続きを読むIoT Hubへ接続するときの認証やキーなど
Zephyr環境構築(Windows)
遅ればせながら、Zephyrの開発環境を構築しました。
続きを読む