フォト
無料ブログはココログ

MyList

« RSで買い物 | トップページ | Interface 2012/12 ARMコンピュータでI/O »

2012年11月11日 (日)

8052BASIC(6)

プログラムがEEPROMにセーブできない原因を調べていた。

 配線を調べたが間違っていないようなので、EEPROM書き込みタイミングの問題かと思いEEPROMをSRAMに変えてみたが症状は変わらない。
 ロジアナを持ち出して調べてみたところ、EEPROMの#WE、#OE、#CE、R/#Bは問題ないようだ。
良く見るとデータが全て00Hである??。

 EEPROMをダンププログラムでダンプするとちゃんと読めている。問題はEEPROMではないのではと思いEEPROMを取り外してROMのアドレスをダンプすると全て00hである。
Dump8000h

あれれ、EEPROMを取り外したので、全てFFHが読み出されるはずだ。
誰かがデータ・バスをLにドライブしている?ともう一度配線をチェックすると
Pullup

データバスをプルアップしている集合抵抗の左端はVccに接続しなければならないのだが、よく見るとGNDに接続されていてプルダウンされているではないか!!更に、この集合抵抗は7素子でAD7には何も接続されていない。お粗末>自分

 原因がわかったところで、集合抵抗を8素子の物に変えて、本当にプルアップしたら
Dump8000h_ff

全てFFHが読み出されるようになった。

 EEPROMを戻して、プログラムがセーブすると
Fprog1

エラー無く書き込まれた。EEPROMのアドレス8000hをダンプすると、ちゃんと書き込まれているようだ。

 ROMにセーブされたプログラムの一覧を表示するプログラムを書こうかと思ったら、ここにあった。
Romdir

プログラム番号、先頭アドレス、サイズ、先頭のREMを表示してくれる。

« RSで買い物 | トップページ | Interface 2012/12 ARMコンピュータでI/O »

8031/8052 SBC」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: 8052BASIC(6):

« RSで買い物 | トップページ | Interface 2012/12 ARMコンピュータでI/O »