このブログでは評価ボード、コンパイラ、OSなどの情報を公開しています。これらの情報は、開発元や販売元からのものではなく、ビットラン社員の動作テスト結果や感想です。
免責事項
ビットランの各ブログ内の情報にて、利用者の方が損害を被った場合でも弊社は一切責任を負えませんので、利用者の方自身の責任においてこれらの情報をご利用ください。
このブログでは評価ボード、コンパイラ、OSなどの情報を公開しています。これらの情報は、開発元や販売元からのものではなく、ビットラン社員の動作テスト結果や感想です。
免責事項
ビットランの各ブログ内の情報にて、利用者の方が損害を被った場合でも弊社は一切責任を負えませんので、利用者の方自身の責任においてこれらの情報をご利用ください。
ルネサス殿のご協力によりルネサス エレクトロニクス社のR0K572670C000BRにて動作することを確認いたしました。
******************************************************
このCPUをデバッグする際は、特に以下の点をご注意ください。
******************************************************
●SH7266, SH7267 は一部のアドレス信号ピンやWR 信号ピンがRESET 直後、ポート機能になっています。デバッガでボード上のFlash Memory に書き込みを行う場合、事前にCPU のPFC レジスタを設定し、これらの信号が出力される状態にする必要があります。これらの設定はデバッガのJOB 機能で行う事が出来ます。参考までに以下に設定例を載せますので使用するボードに合わせて調整して下さい。
< Port レジスタ設定用JOB 記述例>
// SH7266,SH7267 set Port reg
; PFCR2..A25,A24,A23
>dw FFFE38AA=1110/v0
; PBCR5..A22,A21
>dw FFFE3824=0111/v0
; PCCR0..WE0
>dw FFFE384E=1011/v0
$ENDJOB
●保持用内蔵RAM は、CPU 初期状態ではライト無効状態になっています。書き込みを行う場合はSYSCR5 レジスタの該当ビットを1 にセットして下さい。
ルネサス殿のご協力によりルネサス エレクトロニクス社のR0K7734にて外付けのフラッシュの書込みなどの動作することを確認いたしました。
弊社所有のアルファプロジェクト社のAP-SH2A-5Aにてフラッシュの書込みなど動作することを確認いたしました。
************************
フラッシュ書き込み時の注意
************************
AP-SH2A-5AにはSpansion社のNOR型のパラレルフラッシュが実装されています。ここに書き込み場合はPCCR0レジスタのPC3MD0を1にしてPC3 端子の機能選択を”1:#WE0/DQML”にする必要があります。Jobなどで登録しておいてリセット後必ず設定するようにしておけば便利でしょう。
Job例:
-----------------------------
>DW FFFE384E=1111 /V0
$Endjob
-----------------------------
弊社所有のアルファプロジェクト社のAP-SH2A-4Aにてフラッシュの書込みなど動作することを確認いたしました。
ルネサス殿のご協力によりルネサス エレクトロニクス社のR0P7724にて外付けのフラッシュの書込みなどの動作することを確認いたしました。
ルネサス殿のご協力によりルネサス殿のターゲットボードを借用してにて動作することを確認いたしました。
ルネサス殿のご協力により北斗電子社のHSB8S24249VF-Sにて内蔵フラッシュの書込みなど動作することを確認いたしました。
ルネサス殿のご協力によりルネサス エレクトロニクス社のR0K572390にてフラッシュの書込みなどの動作することを確認いたしました。
弊社所有の北斗電子社のHSB7264にてターゲットが動作することを確認いたしました。
尚、デバッガからは直接シリアルフラッシュメモリに書き込むコマンドはありません。
シリアルフラッシュメモリの書き換え方法は以下の記事を参考にしてください。
ここでは北斗電子社のHSB7264のシリアルフラッシュメモリ(SPI0)の書き換え方法を記載いたします。
HSB7264のシリアルフラッシュメモリ(SPI0)にはモニタプログラムが書かれています。またSPI0はJ22により(出荷時:半田ショート)書き換えられない設定になっています。よって、北斗電子社の方からはHSB7264+HSB7264LCDでの使用を薦められました。HSB7264LCDにもSPI0が実装されており、モニタの入ったHSB7264のSPI0を消さずにすみます。今回は、HSB7264とHSB7264LCDを組み合わせてHSB7264LCD側のSPI0の書き換えを確認しました。また、HSB7264単体ではJ22の半田ショートを外してHSB7264のSPI0の書き換えも確認しました。
では、確認した手順を簡単にご説明いたします。
大きくは次の2つのステップに分けられます。
ステップ1. ダウンロード
各プログラムを作成してターゲットRAMにダウンロードします。
ステップ2. 実行して書き込む
書き込み用プログラムを実行してローダプログラムとアプリケーションプログラムをシリアルフラッシュメモリ(SPI0)に書き込みます。
以下が概要解説図になります

今回のサンプルのローダプログラムは、アプリケーションプログラムをシリアルフラッシュメモリ上から大容量内蔵RAMに転送して、処理をアプリケーションプログラムに移るようにします。サイズは8Kバイト固定になります。
アプリケーションプログラムは、システムに応じて作成されたプログラムです。
ダウンローダは、ローダプログラムとアプリケーションプログラムをシリアルフラッシュメモリへ書き込む目的のためだけのプログラムです。
まずは、ルネサス エレクトロニクス社のホームページからシリアルフラッシュメモリ用のサンプルを入手してください。
参照:SH7262/SH7264 シリアルフラッシュメモリ用のサンプル入手方法
サンプルプログラムを展開すると、ローダプログラム(sh7264_sflash_loader_prog.hws)、アプリケーションプログラム(sh7264_sflash_app.hws)、ダウンローダ(sh7264_sflash_downloader.hws)が作成されます。そえぞれをHEWからビルドしてアブソリュートファイル(abs)を作成してください。
次にデバッガを起動して各プログラムをダウンロードします。
●Code DebuggerとHSB7264をH-UDIまたはAUDにて接続してください。
●Code Stageを起動します。
ターゲットの設定は以下の設定で起動しました。
CPU名:SH7264
JTAGクロック:7.5MHz
AUDクロック:1/4 Clock
「デバッグ動作」で「ローディング後の処理」が「エントリポイントへ」になっているかチェックしてください。
まずはローダプログラム(sh7264_sflash_loader_prog.abs)を読み込みます。
次にアプリケーションプログラム(sh7264_sflash_app.abs)を読み込みます。
「既に読み込んだデバッグ情報があります。以前の情報を破棄してよろしいですか?」と出たら「はい」を選択します。
最後にダウンローダ(sh7264_sflash_downloader.abs)を読み込みます。
「既に読み込んだデバッグ情報があります。以前の情報を破棄してよろしいですか?」と出たら「はい」を選択します。
最後に読み込んだダウンローダ(sh7264_sflash_downloader.abs)を実行してRAMに展開されているローダプログラムとアプリケーションプログラムをシリアルフラッシュメモリに書き込みます。
まずは書き込みが成功したかどうかわかるようにブレークポイントを張っておきます。
main.cの286行目のhalt関数と同じくmain.cの307行目のerror関数に対して左の●ボタンをダブルクリックしてブレークポイントを設定します。
次にスタート番地を設定します。
downloader.srcを開いてカーソルを34行目に持っていきます。
ここでマウスの右ボタンをクリックして「PCの変更」を実行します。
PCが変更されます。
プログラムを実行します。
halt関数でブレークしたら書き込み完了です。
デバッガでリセットして再実行したり、CPU単体で動作させたりしてプログラムが更新しているか確認してください。
最近のコメント