adviceLUNA / TRQer サポート
【Tips】フラッシュメモリが書けるかを確認する
フラッシュメモリにダウンロードを行ってもエラーとなる要因の一つに、フラッシュメモリがICEから書き込みできないために、エラーとなっている場合があります。
その場合、下記のコマンドを実行すれば、少なくともフラッシュメモリは正しく繋がっていることが確認でき、ICE作業用RAMやその他要因がダウンロードエラーに関係していることが切り分けられます。
※このコマンドはフラッシュメモリが0x10000000番地にあることを前提として作られています。ご使用の環境に合わせてアドレスを変更してください。
【処理概要】
・コマンドは、バス幅16x2(32x1)、16x1(8x2)、8x1 全てをフォローするように作成しています。
・実施している内容は、以下の4パターンです。
1)初期化
2)内容確認のダンプ
3)イレーズ(消去)ができるか
4)書き込みができるか
・一旦イレーズされ(0xFF)になって、その後データが書き込まれていれば、フラッシュメモリは正しく動作しています。
・実行後、メモリの内容が最初のダンプ結果と変わらない場合、フラッシュメモリが正しく動作していません。ハードのご担当者様にご確認ください。
・実行結果から判断出来ない場合、結果を添えて弊社adviceサポートまでお問い合わせください。
その場合、下記のコマンドを実行すれば、少なくともフラッシュメモリは正しく繋がっていることが確認でき、ICE作業用RAMやその他要因がダウンロードエラーに関係していることが切り分けられます。
※このコマンドはフラッシュメモリが0x10000000番地にあることを前提として作られています。ご使用の環境に合わせてアドレスを変更してください。
【処理概要】
・コマンドは、バス幅16x2(32x1)、16x1(8x2)、8x1 全てをフォローするように作成しています。
・実施している内容は、以下の4パターンです。
1)初期化
2)内容確認のダンプ
3)イレーズ(消去)ができるか
4)書き込みができるか
・一旦イレーズされ(0xFF)になって、その後データが書き込まれていれば、フラッシュメモリは正しく動作しています。
・実行後、メモリの内容が最初のダンプ結果と変わらない場合、フラッシュメモリが正しく動作していません。ハードのご担当者様にご確認ください。
・実行結果から判断出来ない場合、結果を添えて弊社adviceサポートまでお問い合わせください。
備考 | ##--- ここから先をテキストファイルなどにコピーして、microVIEW-PLUSのコマンドファイル(*.mvw)として保存し、実行してください。 echo off echo ダンプ mdump #0x10000000,,0x20 w ################################################# # フラッシュROM書き込みコマンド(JEDEC 16bitx2 32bitx1) ################################################# echo ********** 16bit x 2 ********** echo 初期化 mem w #0x10000000 = 0xF0 off echo セクタプロテクト状態確認(JEDEC 16bit×2) mem w #0x10001554 = 0x00AA off mem w #0x10000AAA = 0x0055 off mem w #0x10001554 = 0x0090 off echo ダンプ mdump #0x10000000,,0x20 w echo 初期化 mem w #0x10000000 = 0xF0 off echo フラッシュROMブロック消去コマンド(JEDEC 16bitx2) mem w #0x10001554 = 0x00AA off mem w #0x10000AA8 = 0x0055 off mem w #0x10001554 = 0x0080 off mem w #0x10001554 = 0x00AA off mem w #0x10000AA8 = 0x0055 off mem w #0x10000000 = 0x0030 off delay 1 echo ダンプ mdump #0x10000000,,0x20 w echo アドレス0x10000000へデータ0x5678を書き込み mem w #0x10001554 = 0x00AA off mem w #0x10000AAA = 0x0055 off mem w #0x10001554 = 0x00A0 off mem w #0x10000000 = 0x5678 off echo ダンプ mdump #0x10000000,,0x20 w ################################################# # フラッシュROM書き込みコマンド(JEDEC 16bitx1 8bitx2) ################################################# echo ********** 16bit x 1 ********** echo 初期化 mem w #0x10000000 = 0xF0 off echo セクタプロテクト状態確認(JEDEC 16bit×1) mem w #0x10000AAA = 0x00AA off mem w #0x10000554 = 0x0055 off mem w #0x10000AAA = 0x0090 off echo ダンプ mdump #0x10000000,,0x20 w echo 初期化 mem w #0x10000000 = 0xF0 off echo フラッシュROMブロック消去コマンド(JEDEC 16bit×1) mem w #0x10000AAA = 0x00AA off mem w #0x10000554 = 0x0055 off mem w #0x10000AAA = 0x0080 off mem w #0x10000AAA = 0x00AA off mem w #0x10000554 = 0x0055 off mem w #0x10000000 = 0x0030 off delay 1 echo ダンプ mdump #0x10000000,,0x20 w echo データ0x1234を書き込み mem w #0x10000AAA = 0x00AA off mem w #0x10000554 = 0x0055 off mem w #0x10000AAA = 0x00A0 off mem w #0x10000000 = 0x1234 off echo ダンプ mdump #0x10000000,,0x20 w ################################################# # フラッシュROM書き込みコマンド(JEDEC 8bitx1) ################################################# echo ********** 8bit x 1 ********** echo ダンプ mdump #0x10000000,,0x20 b echo 初期化 mem b #0x10000000 = 0xF0 off echo セクタプロテクト状態確認(JEDEC 8bitx1) mem b #0x10000AAA = 0xAA off mem b #0x10000555 = 0x55 off mem b #0x10000AAA = 0x90 off echo ダンプ mdump #0x10000000,,0x20 w echo 初期化 mem w #0x10000000 = 0xF0 off echo フラッシュROMブロック消去コマンド(JEDEC 8bitx1) mem b #0x10000AAA = 0xAA off mem b #0x10000555 = 0x55 off mem b #0x10000AAA = 0x80 off mem b #0x10000AAA = 0xAA off mem b #0x10000555 = 0x55 off mem b #0x10000000 = 0x30 off delay 1 echo ダンプ mdump #0x10000000,,0x20 b echo データ0xABを書き込み mem b #0x10000AAA = 0xAA off mem b #0x10000555 = 0x55 off mem b #0x10000AAA = 0xA0 off mem b #0x10000000 = 0xAB off echo ダンプ mdump #0x10000000,,0x20 b |
更新日:2014/09/19
アンケートにご協力お願いします
この解答はお客様のお役に立てましたでしょうか?