[H8-ML(6100)] Re: スタートアップルーチンについて
From: オンボード 杉本 <ob_henry@xxxxxxxxxxxxxxxx>
Date: 2007年05月05日(土)11時26分47秒
 オンボード 杉本です。

HEW で新規に生成させると、アセンブラー
、C言語の雛形が出来ていませんか?

良く纏まっており、実用性の高い設計例となる
と、なかなかロハでは入手できないのですが、
SH2,3,4の例が アルファープロジェクトさん
のWEBで公開されていますから片っ端からソース
を落として追って見ましょう。 基本的な構成
は変わりません。


”H8マイコン完全マニュアル”
”C言語でH8マイコンを使いこなす”
(OHM社) の2冊が良いでしょう。


HEW が使えるので有れば、R15(SP)以外は
組み込み関数で扱えるので、多重割り込み等
も、C言語のみで扱え、アセンブラーソース
は不要となりますが、痒いところに手を入れや
すくするために、セクション定義のみは残して
います。

注意点としては、SP を扱うためには インラ
インアセンブル関数が必須となるので、コンパ
イルSWにアセンブラーコードの吐き出しを設定
する必要が有ります。 これが出来ればブート
直後にCPU内蔵のSRAMをスタックとして、C函数
を呼んで、外部SRAMのメモリーテスト等も実行
可能になります。


自分的には、HEWが生成したファイルは全て破棄
し、

// ------------ フラッシュ専用
sectionF.sr	フラッシュ向けセクション定義
bootF.c		フラッシュ向けエントリールー
		チン(コールドブート)
// ------------ デバッグ専用
debug.sub	デバッガー向けレジスター初期
        化サブコマンド
        E10Aでは XXX.MCR 

sectionD.src	デバッグ向けセクション定義
bootD.c		RAM実行エントリールーチン

// -----------	以下は共通
intr.c		割り込み処理
main.c		メインループ
scu1.c		RS232C
usb.c		USB ターゲット
.....		その他もろもろ

の構成として、デバッグ、リリース向けブート部
を分離します。


スレッド概略
[6099(R)](起点)
 └[表示中]
   └[6102(1)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]