Azure RTOS習得(5):Mutexとセマフォ

Azure RTOSミューテックスとバイナリセマフォ機能をSTM32G0C1E-EV Tx_Thread_Syncサンプルコード流用しSTM32G4評価ボードとArduinoプロトタイプシールドで説明。ミューテックスとバイナリセマフォは同じ。ミューテックスが排他制御に適す。

Azure RTOS習得(4):メッセージキュー

Azure RTOSメッセージキュー機能をNUCLEO-G0B1RE Tx_Thread_MsgQueueサンプルコード流用しSTM32G4評価ボードとArduinoプロトタイプシールドで説明。複数Q受信処理でメッセージ無し受信中断時はキューイベントチェーンが効果的。

Azure RTOS習得(3):新規Azure RTOSプロジェクト

Azure RTOSサンプルコードSTM32CubeMX Configuration流用新規Azure RTOSプロジェクト作成。生成ソースコードのどこに何を追記するかを示した。イベントフラグ機能を追記、サンプルコード同一動作を評価ボードにArduinoプロトタイプシールド追加し確認。

Azure RTOS習得(2):Azure RTOS ThreadXサンプルコード

Azure RTOS ThreadXサンプルコード解説。Azure RTOSスレッド間同期イベントフラグ、スレッド優先度、プリエンプション閾値変更解説。効率的Azure RTOS習得に評価ボード+Arduinoプロトタイプシールドを勧めた。

ベアメタルかRTOS開発か?

AWS/Azure接続MCUは割込みベースRTOSタスク開発。スタンドアロンMCUはポーリングベースベアメタル開発。タスク開発は高移植性の代償に割込みや優先制御解決などのRTOS機能追加必須。ベアメタル開発は単体デバッグ容易なポーリングベースがお勧め。

RA用e2studio 2022-07リリース

最新RA開発環境バージョンアップ状況をまとめた。e2studio、FSP同梱e2studio、Example Project BundleのFSPバージョン不揃い。最新FSPバージョンへの変更方法説明。少数RTOSサンプルコード対応にベアメタルサンプルコードからRTOSコード自作を勧めた。

FreeRTOS/Azure RTOSソフトウェア開発手法

センササンプルコードを使いベアメタルスキル起点IoT MCUデータ収集FreeRTOS/Azure RTOSソフトウェア開発手法説明。1)単体ベアメタル処理開発。単体デバッグ後タスク/スレッド化。2)タスク/スレッド無限ループ内へRTOS処理待ち挿入。3)優先度検討とRTOS結合デバッグ。

RAファミリのRTOS

RAファミリFreeRTOSキューとセマフォ利用サンプルコード解説。キュー送受とセマフォ取得の3タスク、キューとセマフォ追加後、FSPがタスク毎entry.c生成。ベアメタルとRTOS両方対応FSPが開発の鍵で習得はRAベアメタルテンプレートが適す。