■はじめに
リアルタイムOSのμT-Kernel 2.0に興味を持つと、最初の開発環境の候補はIoT-Engine開発キットになりますが、20万円の価格ですと、個人ではなかなか手が出しにくいです。
次の候補のマイコンボードの「C-First」は、Cプログラミング教科書が付いて、8,640円とだいぶハードルが下がります。
C-Firstには、ルネサス製のRL78/G14のCPUとLED,スイッチ,温度センサ,照度センサ,加速度センサなどが実装されており,μT-Kernel 2.0を初めて試してみるには手頃な環境です。
C-Firstを触ってみた時の手順について、忘備録代わりにまとめます。
■モノの入手
◇「基板付きキット 絵解きマイコンCプログラミング教科書」を購入し、マイコンのC-Firstを入手する
https://www.amazon.co.jp/dp/4789845273/
・C-First単品も購入できますが、C-Firstのハードウェア仕様も書かれている、Cプログラミング教科書も一緒に購入することを強くお勧めします。
例えば、入出力モード指定用の「ポート・モード・レジスタ」や入出力データを読み書き用の「ポート・レジスタ」の、メモリマップ上のアドレスなどの情報が記載されているためです。
なお、教員・学生は発売元のCQ出版より、アカデミック価格(8,640円→5,400円)で入手できるようです。
https://shop.cqpub.co.jp/hanbai/books/45/45271/45271-1.pdf
◇C-First用のμT-Kernelのソースコードをダウンロードする
http://www.tron.org/download/
・「RL78(C-First)対応μT-Kernel2.0」を選択する
・「ボックスに入れる」ボタンを押す
・「申請手続き開始」ボタンを押す
・「新規のお客様」で必要事項を記入しアカウントを入手する
・アカウントでログインする
・ライセンスに同意し、利用目的のチェックを入れる。
・「続ける」の先の画面でダウンロードを実施する。
・ダウンロードしたソースコード(zipファイル)を任意のフォルダに展開する
◇統合開発環境 (IAR Embedded Workbench)の評価版を入手する
注: 以下、IAR Embedded Workbenchを
・「RL78無償評価版をダウンロードする」を選択
・「ダウンロード」を選択
・ダウンロードしたインストーラのexeファイルを実行する
・「IAR Embedded Workbench Renesas RL78用のインストール」を選択する
・インストール後に、「IAR Embedded Workbench」を起動する
・初回のライセンス画面で、[IAR システムズに登録し
て評価用ライセンスを入手]を選択し、インターネット経由で評価用ライセンスのオンライン登録をする
・登録アドレスに以下の題名のメールが届く
登録確認のお願い: IAR Embedded Workbench for Renesas RL78, 16K KickStart Edition, v. 4.10
・メール本文のURLをクリックすると、「ライセンス番号」が表示されるので、ライセンス画面に入力する
■ 開発環境の準備
◇C-Firstと開発用PCの接続
・「基板付きキット 絵解きマイコンCプログラミング教科書」に含まれるC-Firstのマイコンと開発用のPCを付属のUSBケーブルで繋ぐ。C-FirstのPOWERのオレンジのLEDが光ることを確認する
■ μT-Kernel2.0のビルド
・ダウンロードしたμT-Kernel2.0のzipファイルを展開したフォルダに移動する
・展開したzipの中のEWRL78\utkernel_source\ide\ewの下のC_First.ewwをダブルクリックして、「IAR Embedded Workbench」を起動する
・「プロジェクト」メニューの「ダウンロードしてデバック」を選択するかCtrl-Dを押してビルド(メイク)を開始する
・もしビルド中に以下の「致命的なエラー」が出力された場合は、C-First本体のSW3とSW4の両方のスイッチを、右のVCOM側から左のOCD側に動かしてから、Ctrl-Dでビルドを再実行する
「致命的なエラー: CPU@@@@@@@@@@@@@.@@@B
Communication error. Check your hardware configuration.
You might also select 'Erase flash before next ID check' in the Hardware Setup dialog box.」
注: SW3とSW4のスイッチの操作については、ソースコードのzipファイルの中のRL78(C-First)対応μT-Kernel2.0取扱説明書(EWRL78).pdfに記載されていることがあとからわかったが、エラーメッセージでググっても見つからないので注意。
・「デバック」メニューの「実行」の選択またはF5キーを押すとサンプルプログラム(※)が実行され、LED0が点滅する
※: kernel\usermain\usermain_sample.c
・「デバック」メニューの「ブレーク」を選択すると、サンプルプログラムが停止する
■周辺機能レジスタの定義
・周辺レジスタ(例えばLED0のポートレジスタの"P1")は、ior5f104.le.hのヘッダファイルに定義されている。
・「ファイル」画面のusermain_sample.cの前の"+"をクリックして"-"に開くと、インクルードしているヘッダファイルの一覧が開かれる。
・ior5f104le.hをダブルクリックで参照画面を開き、Ctrl-Fで検索ダイアログを表示し、例えば"P1"で検索を続けると、定義がみつかる。