はじめに anchor.png

SH7145Fマイコンボードに対応した弊社オリジナルブートローダです。
マイコンに備わったSCIを経由してホストからマイコンボードのSRAMないしフラッシュROMへユーザプログラムを転送及び書き込んだり、書き込まれたユーザプログラムを実行するといった機能を持ちます。
付属のバッチファイルにてソースプログラムからコンパイルでき、ユーザ自身による改造も可能です。
ファイルの送受信にはXMODMプロトコルを使用しますが、全てのXMODEMに対応したターミナルクライアントに対応するものではありません。

Page Top

基本仕様 anchor.png

Page Top

適用コンパイラとコンパイル方法 anchor.png

弊社提供のGCC Developer Lite最新版のインストール先に「C:\Program Files\BestTech」フォルダを指定し、インストールコンポーネントとして「SH7145Fでのみ使用」、もしくは「フルインストール」が選択されている必要があります。

  1. ソースをダウンロードし適宜解凍
  2. GCC Developer Liteにてtimsh7145.cを開き、コンパイラオプションで「SH7145F (Intenal Flash)」を選択してコンパイル
  3. マイコンボードをブートモードにし、timsh7145.motをFLASH WRITERにて書き込む
  4. マイコンボードをモード2にして作業完了
Page Top

ソースのダウンロード anchor.png

公開日: 2009/06/25

更新内容

  • ダウンロード成功時のメッセージ送信タイミングを遅く
Page Top

メモリマップ anchor.png

ブートローダはマイコン内蔵のフラッシュROMに書き込まれ、内蔵フラッシュROM及び外部バスが使用できるMCUモード2で動作するプログラムです。

sh7145bootloader_map.png

ユーザが使用できるメモリエリアは外部メモリ全般となります。

Page Top

ブートローダの動作フロー anchor.png

SH7145_SCI_BOOT_FLOW.png

マイコンがリセットされるとユーザプログラムへ実行が遷移するか、ブートローダがコマンドモードになるかの2つの状態に動作が分岐します。
ユーザプログラムへ実行が遷移する前にユーザ自らの操作でコマンドモードに遷移させる場合は、リセット直後に'!'を素早く3回入力する必要があります。全ての外部メモリにユーザプログラムが書き込まれていなければ、常にコマンドモードとなります。
なお、最新バージョンでは外部フラッシュROMにSRAM上で動作するプログラムを書き込んでおき、外部フラッシュROMからSRAM上にコピーして実行させる機能が盛り込まれているため、起動フローが少々複雑になっています。

Page Top

使用方法 anchor.png

SIMPLE TERMからのキー入力にて各種機能を実行します。

Page Top

コマンド anchor.png

Page Top
ヘルプ 'h' anchor.png

コマンドのリストを表示します。

>h
 --< TIM7145 Ver1.32 by BestTechnology >--",
 [w]:UPLOAD TO ExRAM [f]:UPLOAD TO ExFLASH
 [r]:DOWNLOAD [g]:BOOT [x]:REBOOT
 [i]:FLASH INFO [e]:ERASE ExFLASH [c]:CLEAR ExRAM
>

また、以下に紹介するコマンドキー以外の入力でも、コマンドのリストが表示されます。

Page Top
外部SRAMへの書き込み 'w' anchor.png

ホストからマイコンボードに搭載されたSRAMへファイルを転送及び書き込みを行います。

>w
 START UPLOAD TO ExRAM...
 ARE YOU SURE? (Y/N)

ここでyを入力すると転送を待ち受ける状態となりますので、STERMから任意のファイルを選択しXMODEMプロトコルで転送を開始させます。
成功すれば<SUCCESS>、失敗すると<ERROR>と表示されます。

>w
 START UPLOAD TO ExRAM...
 ARE YOU SURE? (Y/N) y
 <SUCCESS>
>

本コマンドはユーザプログラムの実行は行わず、処理が完了するとコマンドモードに戻ります。

Page Top
外部フラッシュROMへの書き込み 'f' anchor.png

ホストからマイコンボードに搭載されたフラッシュROMへファイルを転送及び書き込みを行います。

>f
 START UPLOAD TO ExFLASH...
 ARE YOU SURE? (Y/N)

ここでyを入力すると転送を待ち受ける状態となりますので、STERMから任意のファイルを選択しXMODEMプロトコルで転送を開始させます。
成功すれば<SUCCESS>、失敗すると<ERROR>と表示されます。

>f
 START UPLOAD TO ExFLASH...
 ARE YOU SURE? (Y/N) y
 <SUCCESS>
 ERASE ExFLASH 0000
 FLASH WRITE .........................................
 VERIFY CHECK .........................................
 <SUCCESS>
>

本コマンドはユーザプログラムの実行は行わず、処理が完了するとコマンドモードに戻ります。

Page Top
実行 'g' anchor.png

外部フラッシュROMないし外部SRAMに書き込まれたユーザプログラムを実行します。
実行には外部FLASH>外部SRAMという優先順位がありますので、常時外部SRAMから実行させる場合は外部FLASHを消去しておく必要があります。
いずれのメモリにもユーザプログラムが書き込まれていなければ、

>g
 EMPTY
>

というメッセージを表示してコマンドモードに戻ります。

  • 外部SRAM上にのみユーザプログラムが書き込まれている場合
    >g
     GO ExRAM PROGRAM !!
    このメッセージが表示された後、外部SRAMのユーザプログラムが実行されます。
  • 外部フラッシュROMに外部SRAMを想定したユーザプログラムが書き込まれている場合
    本来外部SRAMに書き込んで実行されるべきですが、電源を切った状態で外部SRAMの内容が維持される時間には制限があります。その場合は外部フラッシュROMに書き込んでおけば、実行時に外部フラッシュROMから外部SRAMに全データコピーした後、外部SRAM上から実行を開始します。
    >g
     CPY ExFLASH TO ExRAM & EXEC FROM ExRAM
    このメッセージが表示された後、外部SRAMのユーザプログラムが実行されます。
  • 外部フラッシュROM上で動作するプログラムが外部フラッシュROMに書き込まれている場合
    >g
     EXEC FROM ExFLASH
    このメッセージが表示された後、外部フラッシュROMのユーザプログラムが実行されます。
  :idea:外部バスに関する諸設定は再初期化されず、活性化された状態のままユーザプログラムが実行されます。
また、ユーザプログラムにてバスを再設定すると、その瞬間に実行中のコード自身が行方を失い暴走します。

Page Top
外部フラッシュステータス 'i' anchor.png

マイコンボードに搭載されたフラッシュROMの情報を表示します。

>i
 Manufactur ID:$01
 Device ID:$22C4
 Sector Protect SA[30..0]:$b0000000000000000000000000000000
 Execute Status:Empty
>

本コマンドは処理が完了するとコマンドモードに戻ります。

Page Top
外部フラッシュROMの消去 'e' anchor.png

外部フラッシュROMを完全消去します。

>e
 ERASE ALL ExFLASH
 ARE YOU SURE? (Y/N)

ここでyを入力すると消去を開始します。

>e
 ERASE ALL ExFLASH
 ARE YOU SURE? (Y/N) y...........................................
 COMPLETED.
>

本コマンドは処理が完了するとコマンドモードに戻ります。

Page Top
外部SRAMの消去 'c' anchor.png

外部SRAMを完全消去します。

>c
 ERASE ALL ExRAM
 ARE YOU SURE? (Y/N)

ここでyを入力すると消去を開始します。

>c
 ERASE ALL ExRAM
 ARE YOU SURE? (Y/N) y
 COMPLETED.
>

本コマンドは処理が完了するとコマンドモードに戻ります。

Page Top
再起動 'x' anchor.png

マイコンを再起動し、その後ブートローダのコマンドモードになります。

Page Top

その他 anchor.png

ユーザプログラムにてWDTを使用してシステムをりブートさせると、必ずブートローダのコマンドモードになります。


Front page   Diff ReloadPrint View   Page list Search Recent changes   RSS of recent changes (RSS 1.0) RSS of recent changes (RSS 2.0) RSS of recent changes (RSS Atom)
Last-modified: 2009-07-06 (Mon) 15:09:22 (JST) (4362d)