連載
» 2006年06月06日 00時00分 公開

T-Engineプログラミング入門(1):T-Engineプログラミング環境を構築しよう (2/4)

[中村 大真 パーソナルメディア株式会社,@IT MONOist]

Teaboardの仕様

 まず、今後教材として付き合っていくことになるTeaboardについて、もう少し詳しく知っておくことにしましょう。

Teaboardのハードウェア構成

 Teaboardのハードウェア構成は、表1のとおりです。特徴としては、以下のような点が挙げられます。


CPUチップはMMU内蔵
物理アドレスと論理アドレスの変換を行って仮想記憶をサポートするMMU(Memory Management Unit)により、T-Kernel Extension(プロセスモデルやファイルシステムなどをサポートするT-Kernel拡張機能)が動作する。

開発用PC(ホスト)とUSBで接続
USB経由により、高速なファイル転送やコンソール入出力が可能。

USBによる電源供給
ホストに接続したUSBが電源供給を兼ねるため、電源アダプタが不要。ノートPCとTeaboardがあれば、どこでも開発/デバッグが可能。

SDカード上にファイルを格納して読み書きできる
イーサネットポート搭載
GPIOを介した外部機器接続が容易
GPIO:General Purpose I/O(デジタル入出力ポート)

シリアル(RS-232C)を2ポート搭載
7セグメントLEDや押しボタンスイッチなどの入出力を実装

CPU Freescale MC9328MX1(i.MX1:ARM920Tコア、最大200MHz)
フラッシュROM 2Mbytes
RAM 16Mbytes
入出力
インターフェイス
USB(Function)、RS-232C(シリアル)×2、LAN(10/100BASE-T)、SDカードスロット、拡張バスI/F、JTAG-ICE I/F
汎用スイッチ プッシュスイッチ2bit、トグルスイッチ4bit、ディップスイッチ4bit
LED LED 8bit、7セグメントLED 2けた
I/O D/A、A/Dコンバータ、デジタルIO(GPIO、PWM)
そのほか 圧電ブザー、温度センサ
電源 USBバスパワー(またはACアダプタ)
サイズ 120×75mm(突起物を除く)
表1 Teaboardのハードウェア構成

Teaboardのソフトウェア構成

 Teaboardに付属するソフトウェアは、ボード上で動作するT-Kernelなどと、PC上で動作する開発環境で構成されています(表2)。これらはT-Engine開発キットの構成と同様です。

ターゲットボード側ソフトウェア
T-Monitor PMC T-Monitor
T-Kernel PMC T-Kernel(MMU対応版)
T-Kernel Extension プロセス管理、ファイル管理など
デバイスドライバ SDカード、RS-232Cなど
CLI コマンドラインインタプリタ(ファイル操作、バッチ処理など)
ツール類 SDカードの区画作成、フォーマットなど
ホスト(PC)側開発環境
コンパイラ GNU C/C++コンパイラ(T-Kernel対応済み)
デバッガ GDB(ソースレベルデバッガ)
ライブラリ ANSI Cライブラリ、T-Kernel関連ライブラリなど
付属ドキュメント
マニュアル T-Kernel仕様書、ライブラリ説明書、開発環境説明書など
教材 各種サンプルプログラム、テキスト教材
表2 Teaboardのソフトウェア構成

Teaboardの利用イメージ

 Teaboard紹介の結びとして、Teaboardでどのようなことができるか、いくつか例を挙げてみたいと思います。

例1:ともかく動かして遊んでみる

 1976年に発売された、8bitマイコンボード「TK-80」。マイコンの基礎を修得するトレーニングキットとして有名ですが、Teaboardはいわばその現代版といえます。当時は「組み込みOS」という考え方そのものがほとんどありませんでした。Teaboardであれば、32bit CPUと組み込みOS(T-Kernel)を体験することができます。

 入出力は、取りあえずprintf()などでPC上のコンソールに行うのがお手軽です。もちろん、RS-232CやSDカードへの入出力も簡単です。LAN機能もあるので、TCP/IPを用いたネットワークプログラミングが可能です。Teaboardに標準で付属しているサンプルプログラムの中には、簡易WebサーバやFTP、Telnetクライアントなどもあります。

 外付け回路を製作すれば、デジタル入出力(GPIO)を通じて各種センサに接続したり、モータやソレノイドなどの制御を行うこともできます。

例2:実用的なシステムに組み込む

 Teaboardを実用的なシステムに組み込んで、安価な実行用ボードとして使うこともできます。

 例として、ICカードで扉の鍵を開ける電気錠システムを考えてみましょう。RS-232C接続のICカードリーダであれば、物理的にはそのままTeaboardに接続できます。電気錠への出力や扉の状態の入力には、TeaboardのGPIOを用います。必要であれば、LANでほかのマシンへログ出力を行うこともできます。

Teaboardを使った電気錠システム 図1 Teaboardを使った電気錠システム

 ソフトウェア面では、RS-232CやLANのドライバはTeaboardに付属しているものがそのまま使えます。新規に開発すべきソフトウェアは、基本的にはカードリーダからICカードのIDを読み取り、登録されているIDであれば電気錠へ解錠信号を出すプログラムだけでいいことになります。SDカード上にカードIDのデータを格納しておけば、データを書き換えるだけで新しいカードの追加やカード紛失時の無効化などに柔軟に対応できます。

Copyright © ITmedia, Inc. All Rights Reserved.