データのやり取りにJSON形式を使いたいのだが。
M5StackでもJSON形式が使えるか試してみるか。
ArduinoJson is a JSON library for Arduino, IoT, and any embe…
これからはじめる方にお勧めの参考図書はこちら!
アイデアをカタチにする! M5Stack入門&実践ガイド | M5Stack&M5StickCではじめるIoT入門 | みんなのM5Stack入門 | ESP32&Arduino 電子工作 プログラミング入門 | みんなのArduino入門 |
確認する | 確認する | 確認する | 確認する | 確認する |
JSONって何?
JSONとは?
JSONとは「JavaScriptのオブジェクト記法を用いたデータ交換フォーマット」です。
Python、PHP、JavaScript、C++、Javaなど様々な言語でサポートされています。
JSONを間に挟むことで各プログラミング言語間のデータの受け渡しがとても簡単にできます。
インターネット上のWebサービスからデータを取得する際の形式もJSON形式のものが多いので、例えば、天気情報をWebサービスから取得する際に使用できます。
JSONの表記方法
JSONは以下の形式で表記されます。
[ {“id” : “1”, “name” : “Genroku”}, {“id” : “2”, “name” : “Sukeroku”} ] |
上記の例では、IDが「1」、nameが「Genroku」のデータと、IDが「2」、nameが「Sukeroku」のデータの2つのデータを表しています。
ArduinoでJSON形式データを扱う場合の注意事項
Arduino でJSONを使用する場合、マイコンのメモリに一時ロードされるため、メモリを事前に予約する必要があります。
どのくらいメモリ確保を行えばよいか、自分で計算するのは大変ですよね。
でも安心してください。
ArduinoでJSON形式データを使用する場合のメモリ量を、計算できる便利なツールがありますのでご紹介します!
JSONを扱う際のメモリサイズを計算する
以下のページでArduino IDEでJSONを扱う際のメモリサイズを計算できます。
![]() |
1
「Step1:Configuration」画面で以下の通り選択します。 【Next:JSON】を選択して次の画面に移ります。 |
![]() |
2 「Step2:JSON」画面にて今回使いたいJSONデータを入力します。【Next:Size】を選択して次の画面に移ります。 |
![]() |
3 前の画面で入力したJSONデータをもとに必要なメモリサイズが計算され、画面に表示されます。※この例ではトータルで「96」だけ必要であることがわかります。【Next:Program】を選択して次の画面に移ります。 |
![]() |
4 Arduino IDE用のプログラム例が表示されます。※先ほどの画面で必要となるサイズとして表示されていた内容をプログラムで指定する方法が記載されています。
|
M5Stack内でJSONデータを取り扱ってみよう
それでは、実際にプログラミングしてみましょう。
今回は、プログラムの中でJSONデータを定義して、それをM5Stackのディスプレイに表示させてみます。
ライブラリを追加する
今回使うライブラリ「ArduinoJSON」をインストールします。
※プログラムを実行した際の「ArduinoJSON」のバージョンは「6.19.4」です。
ライブラリのインストールは、次の記事で紹介しています。
Arduino IDE」では、使用する機能やセンサー、ボードを使用するプログラムで使用できる有効なライブラリが公開されています。ライブラリを使用すると、効率的かつ品質を確保したプログラミングが可能です。 ここでは、Ardu[…]
JSON取り扱いプログラム
Arduino IDEを起動して、「ファイル」メニューから「新規ファイル」を選択し、表示されるスケッチに以下のように記述します。
Arduino IDE スケッチ例
M5Stackへの書き込み
- 「ファイル」メニューから「名前を付けて保存」で任意の名前を付けて保存します。
- 「ツール」メニューから「ボード」情報を確認し、次のものを選択します。この際、「シリアルポート」にマイコンを接続したCOMポートが指定されているかも確認します。
ボード:「M5Stack Arduino」-「M5Stack-Core-ESP32」または、「M5Stack-Core2」または「M5Stack-Tough」 - 「ツール」メニューから「シリアルモニタ」を選択してシリアルモニタを起動します。(転送速度は「115200」です)
- 「スケッチ」メニューから「マイコンボードに書き込む」を選択します。
プログラム実行結果
M5Stackのディスプレイ上に次のように表示されます。
JSON形式データの部分は赤字で表示されます。
編集後記
いかがだったでしょうか。
さて、これでJSON形式データを扱うことができるようになりました。
今後は、読み込んだデータを使って、別の処理につなげるプログラムの実行例も、ご紹介していきます。
ご期待ください。
今回の記事は以上になります。
最後までご覧いただきありがとうございました。
これからはじめる方にお勧めの参考図書はこちら!