- - PR -
これまでこの連載では、タスクやハンドラといった組み込み分野の基礎技術を取り上げてきました。
今回は連載のまとめとして、T-Engineの大きな強みの1つであるデバイスドライバ(以下ドライバ)を取り上げます。デジタル温度計のプログラムを通して、T-Engineでのドライバ開発と、ドライバを利用したアプリケーション開発をマスターしましょう。
デジタル温度計のシステム構成
この連載の想定環境であるTeaboardのボード上には、温度センサが実装されています。これを利用して現在の温度を測定し、7セグメントLEDに表示します。Teaboardにはイーサネットポートも付いているので、これを活用して「Web配信機能付きデジタル温度計」にしてみましょう。つまり、Teaboardをネットワークに接続しておけば、別の場所にあるPCからWebブラウザでTeaboardにアクセスすることで、現在の温度を表示させることができます。
今回使用するデバイスは、図1のとおりです。
![]() |
| 図1 今回使うTeaboard上のデバイス |
次にソフト設計です。図2のように、Teaboard側は次の5個のモジュールで構成しました。
- LEDドライバ
前回までは直接7セグメントLEDを制御していました。今回はアプリケーションから独立したLEDドライバを作成し、アプリケーションからドライバにライトする(書き込む)ことでLED表示を行います。
- 温度センサドライバ
同じく温度センサのドライバも作成して、アプリケーションからドライバをリードする(読み出す)ことで温度を読み出せるようにします。
- アプリケーションプロセス
アプリケーション本体は、前回取り上げたマルチタスクの技法を用いて、3つのタスクで構成します。
- メインタスク
温度センサドライバから現在の温度をリードして、その値をLEDドライバにライトします。
- Webサーバタスク
Webブラウザからのコネクトを受け付け、後の処理をセッションタスクに渡します。
- セッションタスク
温度センサドライバから現在の温度をリードして、その値をWebブラウザにHTMLで返します。
- メインタスク
- TCP/IPマネージャ
ネットワークについては、Teaboardに標準で付属しているTCP/IPマネージャというミドルウェアを使います。
- LANドライバ
LANドライバもTeaboardに標準で付属しています。TCP/IPマネージャ内部から呼び出されるので、アプリケーションから直接呼ぶことは通常ありません。
![]() |
| 図2 デジタル温度計のモジュール構成 |
このように、バイナリレベルでモジュール化できるところがT-Engineの大きな特徴です。各モジュールは完全に独立して開発し、個別にロードやデバッグ、変更ができます。作成したモジュールを別の開発案件に再利用することも簡単です。
| コラム プロセスとは |
| プロセスとは、タスクに独立したメモリ空間と資源を与えたもので、T-Kernel Extensionで実現されます。プロセスはメモリ保護が行われるので、自プロセス以外のメモリ内容を破壊することはありません。 また、ミドルウェアの資源もプロセス単位で管理されます。例えばプロセスが異常終了しても、そのプロセスがオープンしていたデバイスは自動的にクローズされます。このような理由で、プロセスは安全なシステム構築に役立ちます。 |
関連記事 設計/開発技法
- 特集:Javaは組み込みに“不向き”は本当か?
- 連載:BREWアプリケーション開発入門(全10回)
- 連載:イチから作って丸ごと学ぶ! H8マイコン道(全12回)
- 連載:−ザ・組み込み−ソフトウェアのハードウェア化(連載中)
- 連載:組み込みLinux開発入門(全3回)
- 連載:T-Engineプログラミング入門(全4回)
- 連載:Symbian OS開発の勘所(全10回)
- 連載:Symbian OSアプリ開発の手引き(連載中)
- 連載:解説! ロボット開発環境Robotics Studio(全4回)
- 連載:Robotics Studio活用術 はじめて作るサービス(全5回)
- 連載:生産性向上への道 Eclipseで行うC/C++開発(全4回)
組み込み開発フォーラム 新着記事
- フルスクラッチの“Hello World”を動かしてみよう(2011/3/31)
- FlexRayプロトコルの概要(その2)(2011/3/29)
- JASA、東北地域に拠点を置く会員企業を支援(2011/3/25)
- NEC、震災の影響を受けた4拠点の生産再開を発表(2011/3/23)
- 内部ブロック図の基礎と共通要素(2011/3/22)
- インテル、被災地におけるITインフラの復旧を支援(2011/3/22)
- Facts on AUTOSAR/AUTOSAR導入の現実(2011/3/18)
- 計測器・震災被害ホットラインを開設、テクトロニクス(2011/3/18)
- ZMP、地震の揺れを多角的に計測するアプリ無償配布(2011/3/16)
- メンター、3Dテレビ・マルチメディア検証プラットフォーム(2011/3/16)
- 【番外編】タチの良い計測値、悪い計測値とは?(2011/3/15)
- tarファイルシステムをAndroidに組み込む!!(2011/3/10)












