TOPPERS BASE PLATFORM でAzure IoTに接続するサンプルプログラム
TOPPERS BASE PLATFORMを使い Azure IoTに接続するサンプルアプリ。
- STマイクロ版 NUCLEO F767ZI向けで、lwIPを利用し、Ethernetで通信します。 ソースコードはこちらにあります。
- RISC-V版 Sipeed Maix Bit向けで、ESP-WROOM-32のATコマンドのTCPを利用しWifiで通信します。ESP32とはIO6とIO7のUARTで通信します。 ソースコードはこちらにあります。
リストの下にある「Download in other formats:」の「Zip Archive」をクリックすると、zipファイルでダウンロードできます。
開発環境
ビルドはGCCとGNU makeを使用します。 ここではWindowsでの開発環境について説明します。 GCCはここで、 GNU makeはMSYS2のものを使います。 IDEとして、Visual Studio Codeを使います。
MSYS2とVisual Studio Codeの環境構築は、下記を参照してください。 https://qiita.com/takasehideki/items/fa0a1a6567a22f469515 ARM GCCの環境構築ですので、RISC-V版の場合はRISC-V GCCに置き換えて読んでください。 Visual Studio Codeの設定は、下記にGCCが展開してある設定になっています。 STマイクロ版は「C:\Program Files (x86)\GNU Tools ARM Embedded9円 2019-q4-major\bin」で、 RISC-V版は「C:\xpack-riscv-none-embed-gcc-8.3.0-1.2」です。
Sipeed Maix BitのCPU Kendryte K210向けのGCCも使用できますが、下記の違いを直す必要があります。
TOPPERS BASE PLATFORMのリリースに合わせてxpackを使用しています。
ビルド
ルートフォルダにある「azure_iothub.code-workspace」を、Visual Studio Codeで開きます。 初回の起動では下記の手順が必要です。 「Ctrl+@」でターミナルを開きます。この時警告のポップアップが出るので、「許可」してください。 Visual Studio Codeを一度終了して、もう一度起動します。 「Ctrl+Shift+B」でビルドが始まります。 「app_iothub_client\Debug\app_iothub_client.bin」が出力ファイルで、これを書き込みます。
書き込み
NUCLEO F767ZIは、USB接続した際にドライブにコピーすることで書き込みます。
Sipeed Maix Bitは、K-Flashを使って書き込みます。 ボーレートは115200が安定して書き込めます。