まつぞの です。皆様のおかげで無事 SRAM を認識できるように
なりました (^^)/~
[今回学んだこと]
・ SRAM の場合、アドレス信号間、またはデータ信号間を
入れ換えてつないでも良い
・初期化プログラム中のレジスタの指定
初期化プログラム中のレジスタは @ABWCR:8と書いて「絶対8ビット
アドレス」を明示的に指定した方がオブジェクトコードが短くなる。
[チェックポイント]
・CPU動作モード
1MBit の SRAM を増設したいので、モード5に設定。
(a) 目視による確認
CN5 の 3,4 をジャンパピンでつないでいるか?
(b) モニタコマンドで確認
H8 BSC
で MDCR の値が 101 になっていることの確認
・バスのアクセスモード
8ビットアクセスにしたいのでその確認。
モニタのコマンドで ABWCR の内容を表示させ、全て 1 である
ことを確認。
# 今回は第2ビットが 0 となっており、16ビットアクセスに
# なっていた!
私と同じような初心者のために、動いた初期化ファイルを以下に
つけます
# 初心者以外の皆様ごめんなさい <_o_>
Monitor.sub は前回のものと同様です。
Monitor.src
<------------------------------------------------------------------------
;************************************************************************
;* H8/300H Monitor Program (Advanced Mode) Ver. 2.2A *
;* Copyright (C) Hitachi, Ltd. 1995 *
;* Copyright (C) Hitachi Microcomputer System, Ltd. 1995 *
;************************************************************************
.PROGRAM INITIALIZE ; Program Name
.CPU 300HA ; CPU is H8/300H Advanced
.SECTION ROM,CODE,ALIGN=2 ; ROM Area Section
;************************************************************************
;* Export Define *
;************************************************************************
.EXPORT _INITIALIZE ; User Initialize Module
ABWCR: .EQU H'FFEC
ASTCR: .EQU H'FFED
WCR: .EQU H'FFEE
WCER: .EQU H'FFEF
P1_DDR: .EQU H'FFC0
P2_DDR: .EQU H'FFC1
P5_DDR: .EQU H'FFC8
P8_DDR: .EQU H'FFCD
;************************************************************************
;* User Initialize Module *
;* Input ER5 <-- Return Address *
;* Output Nothing *
;* Used Stack Area --> 0(0) Byte *
;************************************************************************
_INITIALIZE:
; RAM用初期化
MOV.B #H'FF,R0L:8
MOV.B R0L:8,@ABWCR:8 ; CS1領域バス幅8ビット(P4:D0-D7)
MOV.B #H'FF,R0L:8
MOV.B R0L:8,@ASTCR:8 ; CS1領域3ステートアクセス
MOV.B #H'F0,R0L:8
MOV.B R0L:8,@WCR:8 ; 0wait
MOV.B #H'FF,R0L:8
MOV.B R0L:8,@P1_DDR:8 ; P1をアドレスバス(A0-A7)
MOV.B R0L:8,@P2_DDR:8 ; P2をアドレスバス(A8-A15)
MOV.B R0L:8,@P5_DDR:8 ; P5をアドレスバス(A16-A19)
MOV.B #H'E8,R0L:8
MOV.B R0L:8,@P8_DDR:8 ; P8-3 CS1出力
JMP @ER5 ; Goto Monitor Program
.END ;
---------------------------------------------------------------------------->
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/ Keiji Matsuzono k-zono@xxxxxxxxxxxxxxxx _/
_/ fingerprint = 8C E9 4B 40 10 86 0C 2E D3 9B 2E 63 35 59 11 69 _/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/