現在,組み込みシステムのソフトウェア開発は,複雑かつ多様化するシステムに対応するため,リアルタイムOSを搭載する事例が増えている.また,IoT時代に対応したセンサ・ネットワークの構築にも,組み込みリアルタイムOSは欠かせない存在となっている.
本講義の目標は,組み込みリアルタイムOSの最新仕様であるμT-Kernelの機能を理解し,タスク数個の簡単なシステムが構築できる知識を習得することである.
実習では16bitマイコン・ボードC-Firstと拡張ボードをハードウェア・ターゲットとし,ルネサス エレクトロニクス社の統合開発環境CS+用にポーティングされたμT-Kernelのソース・コードを使用する.
また,μT-Kernelのカスタマイズ方法やデバッグ環境の構築についても解説を行う.
*対象とするμT-Kernelは,最新バージョン3.0です.
*本セミナは,以前開催されたセミナ「実習・組み込みリアルタイムOS入門」で対象としていたμT-Kernel 2.0を最新バージョン3.0に変更にし,内容を見直したものです.
●対象聴講者
・これから組み込み系リアルタイムOSを始める方
・μT-Kernelの機能を理解したい方
・C-First用にポーティングされたμT-Kernelの使い方を知りたい方
★C言語の基本的な文法は理解していることが前提となります
●講演の目標
・組み込み系リアルタイムOSの概要が理解できる
・μT-Kernelの機能が理解できる
・μT-Kernelを使った簡単なシステム設計ができるようになる
●内容
1 リアルタイムOS(μT-Kernel)の概要(2.0時間)
1.1 組み込み系リアルタイムOSに求められるもの
1.2 組み込み系リアルタイムOSの最新仕様μT-Kernelの概要
2 タスクのスケジューリング方式(1.5時間)
2.1 タスクの状態遷移とレディキュー
2.2 タスクの状態遷移
2.3 システム・コールのコーディング例
3 タスク管理機能とタスク付属同期機能(1.0時間)
3.1 tk_sta_tskとtk_ext_tsk
3.2 tk_wup_tskとtx_slp_tsk
3.3 起床要求のキューイング
4 イベント・フラグ(1.0時間)
4.1 イベント・フラグの概要
4.2 tk_set_flgとtk_wai_flg
4.3 イベント・フラグによるデータの受け渡し
5 メール・ボックス(1.0時間)
5.1 メール・ボックスの概要
5.2 メッセージのフォーマット形式
5.3 tk_snd_mbxとtk_rcv_mbx
6 メッセージ・バッファ(1.0時間)
6.1 メール・ボックスの概要
6.2 tk_snd_mbfとtk_rcv_mbf
7 総合演習(2.0時間)
7.1 ボリュームのA/D変換とLEDのダイナミック点灯
7.2 システム・コールの選択とコーディング
8 その他の機能(1.5時間)
8.1 セマフォ-とミューテックス
8.2 固定長メモリ・プールと可変長メモリ・プール
8.3 周期ハンドラとアラーム・ハンドラ
スタック見積ツールの画面
開発環境のサンプル画面