UIFlowでプログラミング目次
記事が増えてきて、知りたい情報にアクセスしにくくなっているので、簡単に記事で触れている内容についてまとめます。タイトル部はリンクになっています。
M5StickC Plus
(1)前提
前提記事。今までの実践や教材の選定についての考え方など。
(2-1) 事前準備
UIFlowの説明、ファームウェアの書き換えが必要なことに触れる、Wi-Fi再設定方法(apモード)
(2-2)UIFlow導入
ドライバのインストール、M5Burnerのインストール、M5StickC Plusへのファームウェアの書き込み
(3-1)UIFlowの説明
StickC Plusのボタン説明、UIFlowファームウェアの動作説明、UIFlowエディタの説明
(3-2)UIFlow Web版( v1.8.0 )の動作詳細
メインメニュー、StickC Plus動作モードの説明
(4)順次
HelloWorld(デフォルト値)、プログラムの転送、プログラムの保存、ラベル表示をプログラムから書き換える、半透明のブロック、ブロックの削除
(5)反復(電池残量)
電池残量のラベル表示、ずっとブロック
(5')反復(RTC)
現在時刻表示、最新の時刻を表示させるには(反復の導入)、ずっとブロック
(6)条件分岐(充電状態の取得 / M5StickC Plusのみ)
充電ケーブル抜き差しによる「充電状態」ブロックの中身の変化(真偽値の導入)、処理を分岐させる(論理ブロックの説明)
(6)条件分岐(ボタンのON・OFFの取得 / M5StickC Plus2対応)
「ボタンAがPressedである」ブロックの中身表示(真偽値の導入)、処理を分岐させる(論理ブロックの説明)
(7)じゃんけんプログラム基礎前編変数と画像の表示
変数、画像の表示
(8)じゃんけんプログラム基礎後編ESPNowを使う
ESPNow(ブロードキャスト通信:旧版)
(9)じゃんけんプログラム応用(関数)
ユーザー定義関数、処理の関数化
(10)じゃんけんプログラム応用(ゲーム部分の改善)
UI改善(メッセージ追加)、スピーカー使用(音声フィードバック)
(11)じゃんけんプログラム応用(勝利判定)
勝利判定式による勝敗表示、関数(引数付き)
(12)じゃんけんプログラム応用(リストで複数グループ対応)
リスト、グループ送信(ブロードキャスト通信使用)
(13)じゃんけんプログラム応用(設計変更)
相手の手を待つ動作モードを追加
(14)2021年度、中学3年生対象に実践しての雑感
やってみての利点、欠点まとめ
(15)UIFlow更新(v.1.10.2)とEEPROM
ESPNowの仕様変更、ブロードキャスト通信使用不可、EEPROMにMACアドレスを記録、読み出して対応
(16) - UIFlowアップデートに伴うじゃんけんプログラム改修
再度、ESPNow周りの変更があったので追従
(Ex1) - 今後について
その他記事にしていない機能の列挙
(Ex2) - RTCとNTP
RTC、NTP
(Ex3-1) - RoverC Proとリモコン+
HAT RoverC ProをUIFlowのリモコン+機能で動かす
(Ex3-2) - RoverC Proのコントローラを6軸センサで作る
RoverC Proのコントローラをもう1台のM5StickC Plusの6軸センサで実装
(Ex4) - INA226センサを使って電流と電圧をはかる
純正HAT、UNITにないモジュールを使用(I2C通信)
電流計・電圧計センサ(INA226)を使用
(Ex5) - 測ったデータをGoogleスプレッドシートに記録する
データのGoogleスプレッドシートへの書き込み
(番外) - UIFlowを使って、IFTTT経由でLINE Notifyと連携してメッセージを送る
タイトルの通り。2024/2/15からIFTTTの該当機能が有料化してしまう
(番外) - UIFlowでLINE Messaging APIを通してLINE公式アカウントからメッセージを送る
LINE Notifyが2025/3/31にサービス終了することを受け、代替のLINE Messaging APIを使用したメッセージ送信を試す
M5GO
(1)準備
M5GOの説明、StickC Plusとの違い、事前準備
(2)デモプログラム
M5GOに最初から入っているデモプログラムを用いたM5GOの機能説明
(3)UIFlowファームウェアの説明
UIFlowファームウェアの動作説明、mode説明
(4)UIFlowエディタ(v1.13.8)の説明
UIFlow(v1.13.8)の説明
(5)順次
HelloWorld(デフォルト値)、プログラムの転送、プログラムの保存、ラベル表示をプログラムから書き換える、半透明のブロック、ブロックの削除、「◯秒停止」ブロック
[番外]RTC Unit
M5StickC Plus内蔵RTCとRTC Unitの違い
(6)反復(繰り返し)
「スピーカー」ブロック、「ずっと」ブロック
(7)(条件)分岐
真偽値(True、False)、「もし」ブロック、「ボタン押下状態取得」ブロック、「RGBカラー(LEDバー)」ブロック