基礎から学ぶ
組込みμT-Kernelプログラミング
リアルタイムOSの初歩から実践テクニックまで
坂村 健 監修
豊山 祐一 著
定価 3,080円(本体 2,800円+税)
ISBN 978-4-89362-373-7
B5変型判 並製 308 頁
2021年12月15日 発売
IoTエッジノード向け世界標準OS「μT-Kernel 3.0」を徹底解説。
リアルタイムOSの基礎からデバイスドライバの開発やOSの移植まで、理解のポイントとプログラム例を分かりやすく説明した入門書の決定版。
書籍版 定価 3,080円 |
|
電子書店版 定価 2,772円 |
|
定価 2,772円 |
- PDF版については「電子書籍ご購入のご案内」をご覧ください。
- お取り扱い電子書店については「電子書店でのご購入のご案内」をご覧ください。
- 内容紹介
- 目次
- ダウンロード
μT-Kernel(マイクロティーカーネル)は、トロンフォーラムがオープンソースで公開している組込みシステム向けのリアルタイムOSです。μT-Kernelの仕様は、IEEE(米国電気電子学会)によってIoTエッジノード向けの世界標準OS
の仕様として採用され、IEEE 2050-2018として公開されています。
本書は、このμT-Kernelの開発関係者が、自分自身の経験で得たノウハウをもとに、μT-Kernelの機能やプログラミングをやさしく解説した入門向けガイドブックです。初心者には理解のポイントを分かりやすく説明した手引書として、経験者にとっては利便性の高い参考書として、IoTエッジノードや組込みシステムのプログラミングを実践的に解説しています。
■参考情報
本書で利用しているマイコンボード「STM32L476 Nucleo-64(STマイクロエレクトロニクス社製)」は、以下のサイトから購入可能です。
- 秋月電子通商
STM32 Nucleo Board STM32L476RG[NUCLEO-L476RG] - マルツオンライン
NUCLEO-64 STM32L476RG DEV EVAL【NUCLEO-L476RG】 - Digi-Key Electronics
NUCLEO-L476RG - アールエスコンポーネンツ(RSオンライン)
STマイクロ STM32 Nucleo-64 開発ボード NUCLEO-L476RG - チップワンストップ
NUCLEO-L476RG - マウザー・エレクトロニクス
NUCLEO-L476RG
トロンフォーラムのウェブサイト上で、本書をベースとして、リアルタイムOSの基本とリアルタイムOSを使用したプログラミングについて説明した記事を掲載しています。
■関連図書紹介
- T-Kernel組込みプログラミング強化書(※1)
- 実践TRON組込みプログラミング
- T-Kernel標準ハンドブック 改訂新版
※1 「強化書」はパーソナルメディア株式会社の登録商標です。
■関連製品
パーソナルメディアの組込み(T-Kernel)関連製品については、こちらをご覧ください。
- 監修のことば
- はじめに
- 目次
- 第1部 基礎編 IoTエッジノードとμT-Kernel
- 1.1 IoTエッジノードとリアルタイムOS
- 1.1.1 IoTエッジノードとは
- 1.1.2 IoTエッジノードと組込みシステム
- 1.1.3 リアルタイムOSとは
- 1.2 TRONプロジェクトとμT-Kernel
- 1.2.1 TRON のリアルタイムOS
- 1.2.2 IoT-EngineとμT-Kernel
- 1.1.3 リアルタイムOSとは
- 1.3 μT-Kernel 3.0の基本
- 1.3.1 μT-Kernel 3.0 のソフトウェア
- 1.3.2 タスク
- 1.3.3 タスクの基本的な同期
- 1.3.4 イベントフラグ
- 1.3.5 セマフォ
- 1.3.6 ミューテックス
- 1.3.7 メッセージバッファ
- 1.3.8 メモリプール管理機能
- 1.3.9 メールボックス
- 1.3.10 時間管理機能
- 1.3.11 アラームハンドラ
- 1.3.12 周期ハンドラ
- 1.3.13 割込みハンドラ
- 第2部 実践編 マイコンボードで組込みプログラミング
- 2.1 マイコンボードで実行するμT-Kernel 3.0
- 2.1.1 マイコンボードと開発環境
- 2.1.2 μT-Kernel 3.0 の入手と開発環境の準備
- 2.1.3 マイコンボードのデバイス制御(LEDとスイッチ)
- 2.2 動かして覚えるリアルタイムOS
- 2.2.1 μT-Kernel 3.0 のプログラミング
- 2.2.2 タスクの生成と実行
- 2.2.3 マルチタスク
- 2.2.4 タスク間の同期
- 2.2.5 イベントフラグによる同期
- 2.2.6 メッセージバッファによる通信
- 2.2.7 メールボックス、メモリプール、時刻管理
- 2.2.8 セマフォによる排他制御
- 2.2.9 ミューテックスによる排他制御
- 2.2.10 周期ハンドラの実行
- 2.2.11 アラームハンドラの実行
- 2.3 μT-Kernel 3.0からI/Oデバイスを制御
- 2.3.1 I/O デバイスとデバイスドライバ
- 2.3.2 A/Dコンバータによるセンサー入力
- 2.3.3 UART によるシリアル通信
- 2.3.4 I2C通信による外部I/Oデバイスの制御
- 2.3.5 割込みによる外部入力信号の検出
- 第3部 応用編 IoTエッジノードへの応用と展開
- 3.1 μT-Kernel 3.0のカスタマイズ
- 3.1.1 カスタマイズの基本
- 3.1.2 システムコンフィグレーション
- 3.1.3 サービスプロファイル
- 3.2 μT-Kernel 3.0のソースコード
- 3.2.1 μT-Kernel 3.0 のソースコード構成
- 3.2.2 ソースコードのハードウェア依存部
- 3.2.3 ハードウェア依存部の実例
- 3.3 μT-Kernel 3.0のポーティング
- 3.3.1 ポーティングの基本
- 3.3.2 起動処理
- 3.3.3 割込み関連処理
- 3.3.4 タイマ関連処理
- 3.3.5 ディスパッチ処理
- 3.4 デバイスドライバの作成
- 3.4.1 デバイスドライバの仕様
- 3.4.2 サンプル・デバイスドライバ
- 付録
- Appendix-1 GitとGitHubによるμT-Kernel 3.0の開発
- A1.1 GitとGitHub
- A1.2 GitHubとμT-Kernel 3.0
- A1.3 Eclipse(STM32CubeIDE)によるGitHub 操作
- Appendix-2 μT-Kernel 3.0のプログラムのデバッグ
- A2.1 μT-Kernel 3.0のデバッグ機能
- A2.2 Eclipse(STM32CubeIDE)によるデバッグ
- 参考資料
- μT-Kernel 関連商品紹介
- 索引
本書掲載のプログラムコードがダウンロードできます。
以下の zip アーカイブ 373_tk.zip をダウンロードし、本書の奥付ページに記されたパスワードを使って展開してください。展開後にブラウザで Readme.html をご覧ください。
なお、下記「ご利用条件 および ご利用上のご注意」をあらかじめご確認ください。
- ■ご利用条件 および ご利用上のご注意
-
- ご使用上のご質問、本書で紹介している開発環境および収録プログラムに関するお問い合わせについては、各開発環境の開発元、著者およびパーソナルメディア株式会社ではお答えできませんのでご了承ください。
- プログラムコードの実行については、個人の責任にて行ってください。
- 本書掲載のハードウェアおよびソフトウェアの製作および実行は、本書使用者の責任において行うものとし、製作および実行により発生したいかなる直接的・間接的被害についても、パーソナルメディア株式会社および著作者、製品販売元はその責任を負いません。
- 収掲載されている商品名や会社名は、各社の登録商標または商標です。また、収録する各プログラムやデータの著作権は各著作者が保有します。
- ご使用上のご質問、本書で紹介している開発環境および収録プログラムに関するお問い合わせについては、各開発環境の開発元、著者およびパーソナルメディア株式会社ではお答えできませんのでご了承ください。