エッジAI導入アプローチ

実エッジAI応用例からMCUとMPU/SBCでAI導入アプローチが異なる事を示した。MCUは追加ハードウェア無し低コストAI実装、MPU/SBCは拡張性重視。実装AIは今後増加予想のためより高電力効率で高性能処理コアが求められるのはMCUもMPU/SBCも同じ。

HALとMCUソフトウェア開発

MCUソフトウェアはHAL APIを使うと高移植アプリケーション開発が可能。BSPやMCU Firmware Packageは依存性を無くす手段。汎用MCU HAL APIプロトタイプ開発ソフトウェアは高移植ユーザアプリケーション資産化期待大。

ソフトウェア視点のMCU選び方

MCU選び方をソフトウェア開発視点から示した。内蔵ハードウェア、処理性能、価格も異なるMCUは製品MCU選択肢が広すぎるのが難点。選定ミスを少なくソフトウェア開発も効率的にできる汎用MCUとHALドライバのプロトタイプ開発方法を示した。

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プロトタイプシールドを勧めた。