TOPPERS 活用アイデア・アプリケーション開発
コンテスト

部門

： 活用アイデア部門

アプリケーション開発部門

作品のタイトル： 組込みソフトウェア学習用教材ボード
NCES TRAINING BOARDと教材テキスト，サンプルプログラム一式

作成者： 松浦光洋，本田晋也

対象者： 組込み学習者

使用する開発成果物： TOPPERS/ASP カーネル

目的・狙い
組込みプログラム初心者・学習者向けのマイコンボードと開発環境がセットとなった学習用教材を提供する．安価
安価で入手性が良く，開発環境の構築も簡単．
初心者にありがち安価 入手性が良く，開発環境の構築も簡単．また初心者にありがち入手性が良く，開発環境の構築も簡単．
なトラブルを起こさない配慮もしている．ボードは学習以外への活用活用をも考えて様々なデなトラブルを起こさない活用バイスを搭載した．

アプリケーションの概要
１．背景
１．背景
NCES（名古屋大学大学院情報科学研究科附属組込みシステム研究センター）では人材教育
プ ロ グ ラ ム (NEP) と し て 多 数 の 教 材 を ウ ェ ブ サ イ ト(http://www.nces.is.nagoya-u.ac.jp/NEP/materials/ )で無償公開している．
その中の「組込みソフトウェア開発技術の基礎」では，以前まで M16C マイコンボードを使う実習テキストとサンプルプログラムが提供されていた．

しかし M16C 用の開発ツールは今後のウィンドウズでは使用出来なくなる事が判明し，マイコンと開発ツールを他の物に変更する必要に迫られた．
安価に，かつ手軽に組込みシステムの基礎からリアルタイム OS の活用の学習が出来ることを目指して検討した結果，マイコンボードはルネサスエレクトロニクスの RX63N を搭載した割安感のある若松通商のボード「GR-SAKURA(写真５)」を，開発ツールはインストールが簡単で無料の CubeSuite＋無償評価版(リンクサイズ 128 キロバイト制限有り)を使用することにした．しかし実習に必要な LED やスイッチ類が足らない．そこで様々なデバイスを使えるよう拡張基板を設計・製造し，「NCES TRAINING BOARD」として頒布することにした．またボードに合わせて教材テキストスライド，サンプルプログラムも改変してNEP のウェブサイトで公開した．
２．シールド２．シールド「GR-SAKURA」には「Arduino※1」と同等の拡張コネクタがあるので，ここに装着する「シールド※2」を設計した．
シールドには実習に必要な部品※3 だけでなく，教材の実習では必要ないが有用と思われる部品※4 を搭載することにした．

写真 1 NCES TRAINING BOARD の外観

※1: AVR のマイコン評価ボード※2: Arduino では拡張基板をこう呼ぶ．センサ等の様々なハードウェアを搭載したシールドが世界中で販売されている．これらは「GR-SAKURA」でも使用可能なため，NEP 教材の実習を終えた後もシールドを付け替えて活用する事が出来る．
※3:LED×４，スライドスイッチ×４，プッシュスイッチ×２，ブザー※4:７セグメント LED×4 桁(ダイナミック点灯の学習)，
CdS 光導電セル(AD 変換の学習)，
CAN インターフェース
３．TOPPERS/ASP
３．TOPPERS/ASP カーネルの移植
カーネルの移植
旧教材では TOPPERS/JSP カーネルを使って RTOS アプリのプログラミングを学習する構成になっていた．しかし JSP から ASP に置き換えた方が良いだろうという事になった．
ASP の RX 版は RX610 版と RX62N 版(CQ 出版インターフェース誌 2011 年 9 月号)がある
が，開発環境が HEW のため CubeSuite+ に移植した．また，実習教材のサンプルプログ
ラムも移植した．これらは教材一式に含まれて公開されている．
４．開発環境４．開発環境前述のようにルネサスエレクトロニクスの「CubeSuite+無償評価版」を使用するが，これだけでは十分なデバッグが出来ない．E1 デバッガを用意すれば良いが，価格が 1 万円以上するので金銭的ハードルが上がってしまう．
そんなとき，いいタイミングで「RX シリアルデバッガ」がリリースされた．マイコンに専用のモニタプログラムを書き込み，シリアル経由でパソコンの CubeSuite＋と通信することでデバッグを行う，いわゆる「リモートデバッガ」である．長時間の割り込み禁止が出来ない等の制約はあるが，若干の対応により実習では問題がない事が分かったのでこれを採用する事にした．ただし最近のパソコンにはシリアルポートが無いため USB-UART 変換モジュールが必要である．それとは別に実習のサンプルプログラムでは syslog を PC で表示するために USB-UART 変換が必要なので，１つの USB で UART が 2 チャネル使える
秋月電子通商の「AE-FT2232」をシールド裏側に搭載した(写真２)．また，トラブルになりがちな UART の通信状態が見えるように LED のインジケータも付けた(写真３)．
USB からボードの電源(5V)も供給出来るため接続は USB ケーブル 1 本だけである(写真４)．
なお，GR-SAKURA 側にも USB-B コネクタが付いているがこちらは実習で使用しない．
実際に間違えてこちらにケーブルを刺す事例が頻発したためゴム製のコネクタキャップを取り付けてトラブルを防止している．

また TOPPERS/ASP にも上記の割り込み禁止時間の制約を回避する対策とリンカの適切なアドレス配置等を行った．
RX シリアルデバッガのマイコンに書き込むモニタプログラムも GR-SAKURA の UART ポート構成に対応し，教材一式と一緒に公開している．
GR-SAKURA には元々足は付いておらず，部品のピンで机の表面に傷が付く恐れがあるた
めゴム足を付けた．

写真２ 裏面（緑の基板が AE-FT2232）

写真３ 通信インジケータ

写真４ USB ケーブル１本で接続完了
参考情報
GR-SAKURA には無線モジュール XBee を取り付けるパターンが用意されている．RX シ
リアルデバッガを有線 UART から XBee に変更すれば ロボット等の動くターゲットに対しても離れた PC からダウンロード，ブレーク，トレース，メモリの読出しが可能である．
５．技術
５．技術セミナー等の技術セミナー等の採用セミナー等の採用事例
採用事例
宮城県産業技術総合センターで 6 月 11~13 日に実施済み（本田・松浦が出張講師を担当）
同センターで 12 月頃（未定）に RTOS 編を実施予定（講師はセンター職員）
http://www.mit.pref.miyagi.jp/kenshu/14/index.html
組込みソフトウェア技術コンソーシアム(HEPT)では 10 月 22 日，29 日に実施予定（本田が出張講師を担当）
http://architect.inf.shizuoka.ac.jp/hept/index.php/cpro-schedule
また，某社では AUTOSAR の学習用としてボードを活用している．

６．独学での活用
６．独学での活用
セミナーを受講しなくても，学習に必要なテキストやサンプルプログラムは無償公開されているので，NCES TRAINING BOARD を販売ページ※5 から購入すれば独学でも学習することが出来る．

図１ 公開されているテキストスライドファイル
ボード変更に伴い 05,06,07,11,12 を刷新，付録を追加
シールドの回路図も公開※6 しているので，GR-SAKURA（下側のピンク色のボード）単品を若松通商か RS コンポーネンツから購入し，実習に必要な部品だけを用意すれば費用も抑えられる．
※5 http://homepage3.nifty.com/fpga/files/board/nces_shield/※6
http://homepage3.nifty.com/fpga/files/board/nces_shield/%E5%9B%9E%E8%B7%AF%E
5%9B%B3_r2.pdf

７．おまけGR-SAKURA は「がじぇっとるねさすプロジェクト※7」の名の下に，初心者にも易しい「クラウド開発環境」とユーザーフォーラム※8 がある．もし教材の実習に挫折してもそちらからトライが出来る事もメリットである．
（図１に示す「付録.GR-SAKURA 編」参照）

写真５ GR-SAKURA※7 http://japan.renesas.com/products/promotion/gr/index.jsp※8 http://japan.renesasrulz.com/gr_user_forum_japanese/default.aspx

写真６ NCES TRAINING BOARD を持つ 秋葉原メイド喫茶「橙幻郷」しおんちゃん