開発にあたってのノウハウ
7. Half-Word単位で書き込みが可能なFlash
FRファミリーのフラッシュメモリ内蔵マイコンは、RAM実行によって以下手順でコマンド発行する事で、Half-Word単位での書き込みが可能です。消去はセクタ単位となります。
FLASHメモリ書き込みコマンド
例:MB91260Aシリーズ コマンド
| コマンド シーケンス |
1stバス ライトサイクル |
2ndバス ライトサイクル |
3rdバス ライトサイクル |
4thバス ライトサイクル |
||||
|---|---|---|---|---|---|---|---|---|
| アドレス | データ | アドレス | データ | アドレス | データ | アドレス | データ | |
| 書き込み プログラム |
D5557 | AA | CAAAB | 55 | D5557 | A0 | 書き込み アドレス |
書き込み データ |
コマンド発行プログラム例(RAM実行)
| LDI:20 | #D5557H,R2 | ; FLASH書込みコマンド1stサイクル |
| LDI:8 | #AAH,R3 | |
| STB | R3,@R2 | |
| LDI:20 | LDI:20 | ; FLASH書込みコマンド2ndサイクル |
| LDI:8 | #55H,R3 | |
| STB | R3,@R2 | |
| LDI:20 | #D5557H,R2 | ; FLASH書込みコマンド3rdサイクル |
| LDI:8 | #A0H,R3 | |
| STB | R3,@R2 | |
| LDI:20 | #C0000H,R2 | ; C0000hへ55AAhを書き込む |
| LDI:20 | #55AAH,R3 | |
| STB | R3,@R2 | |
| ・ ・ シーケンスチェック ・ ・ |
