SH-2A SH7262でTOPPERS/JSPを走らせる
TOP
>
チョロっとμITRON
>
SH-2A SH7262でTOPPERS/JSPを走らせる
雑誌Interface 2010年6月号にはルネサスエレクトロニクス社製の SH7262 が付属しています。
この基板を動かすには部品を実装します。
若松通商でセット販売されています。
SH-2A マイコン基板周辺部品一式
付属SH-2Aマイコン基板と接続するには、
- CN1またはCN2に配線されているTxDnおよびRxDnから、RS-232-Cドライバ/レシーバを経由して、D-Sub9ピン・コネクタにつなぐか、
- USB-シリアル変換ICを経由してUSB仮想シリアルにつなぎます。
拡張ベースボード CQBBまたはCQBB-ELがあれば、SCIFが使えます。
1. 開発環境の用意
1.1. ターゲット側の準備
付属基板のシリアル・フラッシュROM には、あらかじめプログラムが書き込まれており、
まず、それをアップデートする必要があります。
付属SH-2A基板特設ージのSH-2Aマイコン基板スタートアップ・ファイルにアップデートファイルがあります。
ただ、書き込むには HEW を使うので、ソフトウェア開発ツールの入手方法を参考にして下さい。
また、GCC対応シリアル・ダウンローダとROM化ユーザ・プログラム書き込み用プログラムもそれぞれ必要です。
1.2. ホスト側の準備
1.2.1. Cygwin のインストール
Windows を開発環境にする場合、Cygwin を利用するのが簡単でしょう。
Cygwin をインストールする時に、
- binutils
- gcc
- perl
を忘れないようにします。
1.2.2. SH-2A用のコンパイラ
SH-2A用のコンパイラ(sh-hitachi-elf)は
gnu_sh-hitachi-elf_cygwin-2.95.3-1.tar.gz
です。
展開する先(フォルダ)を Cygwin から見える位置にしておきます。
1.2.3. TOPPERS/JSP のソース
SH-7262用の TOPPERS/JSP のソースは、
jsp-1.4.3_cq_frksh2a-20100409.tar.gzです。
1.3. 環境・ソースの修正
1.3.1 TOPPERS/JSPの修正
Cygwin の GCC のバージョンは現在(2010/07/06) 4.4 ですが、ヘッダファイルの読み込み位置が変更されているため、
jsp/cfg の make に失敗します。
そこで、TOPPERS/JSP のソースを修正する必要があります。
jsp/cfg/base/directorymap.h
--- directorymap.org.h2010-07-06 19:32:38.625000000 +0900
+++ directorymap.h2010-07-06 19:35:30.078125000 +0900
@@ -56,6 +56,7 @@
#include
jsp/cfg/base/fc_binutils.cpp
--- fc_binutils.org.cpp2010-07-06 19:40:41.296875000 +0900
+++ fc_binutils.cpp2010-07-06 19:42:50.515625000 +0900
@@ -51,6 +51,7 @@
#include
#include
+#include
#define _isspace(x) isspace(x)
#define _isprint(x) isprint(x)
jsp/base/singleton.h
--- singleton.org.h2010-07-06 19:48:12.062500000 +0900
+++ singleton.h2010-07-06 19:47:57.015625000 +0900
@@ -51,6 +51,7 @@
#include
#include
+#include
/*
* シングルトンパターン 実装
つまり、インクルード文を追加します。
1.3.2. Cygwin の GCC のダウングレード
上記の対策をしても、Cygwin の GCC のビルドオプションが変更されているため、
結局、コンフィギュレータのビルドに失敗します。
仕方ないので、GCC のバージョンを 3.3.x へ落としました。
/etc/alternativesで、
% rm g++
% ln -s /usr/bin/g++-3.exe g++
% rm gcc
% ln -s /usr/bin/gcc-3.exe gcc
つまり g++ と gcc の symlink を g++-3 gcc-3 に貼り直します。
こちらで報告されています。
2. ビルド
2.1. TOPPERS/JSP の tool を作成
% cd jsp/cfg
% make realclean
% make depend
% make
2.2. 環境構築
% cd jsp
% mkdir 00NEW
% cd 00NEW
% ../configure -C sh2 -S cq_frksh2a
つまり、jsp の下に適当なディレクトリを作り、そこから ../configure します。
cq_frksh2a はターゲットボード名で、 jsp/config/(CPU名)/ 以下にあるディレクトリ名のことです。
これで、Makefile sample1.c sample1.h sample1.cfg ができます。
2.3. 実行ファイルのコンパイル
2.3.a 方法その1
% make depend
% make
です
この基板の場合、ダウンロードするファイルはバイナリファイルなので、
% make jsp.bin
して、 最終的に jsp.bin を作成します。
2.3.b 方法その2
Makefile を
*** Makefile.org2010-07-08 22:03:31.000000000 +0900
--- Makefile2010-07-08 21:38:05.890625000 +0900
***************
*** 177,185 ****
#
# ターゲットファイル(複数を同時に選択してはならない)
#
! all: $(OBJFILE)
#all: $(OBJNAME).out
! #all: $(OBJNAME).bin
#all: $(OBJNAME).srec
#
--- 177,185 ----
#
# ターゲットファイル(複数を同時に選択してはならない)
#
! #all: $(OBJFILE)
#all: $(OBJNAME).out
! all: $(OBJNAME).bin
#all: $(OBJNAME).srec
#
にすると、
% make depend
% make
で、最終的な jsp.bin が作成できます。
3. フラッシュROM への書き込み
- JPP2ピンをショートさせた状態で JPP1 をショート(リセット)すると
基板上の仮想シリアル・ダウンローダが動きます。
- TeraTerm 等のシリアル通信を起動します。
設定は下記です。
- 通信速度 115200bps
- データ長 8ビット
- ストップビット 1ビット
- パリティ なし
- フロー制御 なし
- TeraTerm 上で、ub と入力すると、ダウンロード・モードに入ります。
- ファイル送信 で jsp.bin を バイナリファイル欄にチェックを入れて送信します。
- 書き込みが完了すると、プログラムが実行されます。
TOP
>
チョロっとμITRON
>
SH-2A SH7262でTOPPERS/JSPを走らせる
http://www.yumi-chan.com/