IAP でFLASH消去・書き換え
ああ、これって、そりゃそうだよな
いくらエリアがセクタでわけてあるって言っても
部分でも消去中は、FLASHのすべてのエリアが
アクセスできない...(読めない)
STM32F427とかは2バンク持ってるから、
片方のバンクでプログラム実行中に、
反対側のバンクを操作できるけど。
F40xでは一つなので、フラッシュを操作する
プログラムを、フラッシュ上からは実行できないのだ
------
なので、組み込みっぽい手管を使うんだけど。
それを使っているんだけど、なぜかプログラムが
暴走するんだよなあ....
ちょっと気分転換にふろにでも入るか....
とかやってると、体洗っているときに
この現象が起きるメカニズムに思い当たった
ああ、これだろ?
とゆっくり入浴を済ませて、
今日半日悩んだコードに、ほんの数行追加すると.....
はたしてばっちり思い通り、
オンボードフラッシュの操作に成功した
------
そりゃ分かってしまえば、なんてことないんだけど
こういうバグ、回路図見てもプログラムコード見ても、
まあ、そうそう気づくもんじゃないよなあ...
経験があれば早いけど、時間で経験を買うのは
コスパ悪すぎる気がする
ともあれ、これで結構みんながハッピーになる
ツールの実装にめどが立った
これがいわゆる DX ってやつだ
------
最近はすっかりモデルベースが下火で
息してない感じなんだけど、
同じ文脈で、こんどはDXとか言い出していて
ちょっとげんなりする....
エクセルのセル埋めが主業務なのに、
それをDXって呼称するのは、
流石に周りに迷惑なんじゃないかなあ
子供銀行券で支払する、とか
言ってるのに近いよな、これ。
| 固定リンク | 0
コメント