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バー)」ブロック

この記事が気に入ったらサポートをしてみませんか?