小さな32ビットマイコンSTM32C011シリーズをArduinoでいろいろと触ってみています。

8ピンのSTM32C011J4M7(以下J4)は特に問題なく動いているのですが,20ピンのSTM32C011F4P6(以下F4)がどうも不調で書き込みエラーの頻発の末に動作しなくなってしまいました,,。

J4とF4はピン数が異なるだけで,ICの内容や書き込み様式は一緒なはず,,とは思うのですが,F4には電源をつないでも消費電力0でうんともすんとも動かなくなったので,じっと図を見るです(^^;;;;;。






上の図をじっと見ていて,ふと"BOOT0・SWCLK"のピンにPB6のあるなしがある事に気がつきました。

じゃあF4のBOOT0にもPB6をつないでみるかと,半ばやけになって試してみたら,動いてしまいました(^^;;;;;;。


ジャンパー線で19,20pinを繋いで,書き込み,動作復活のLチカ写真です(^^;;;;。




と,動いたのは良かったのですが,,私には意味がわかりませんし,PB6の他のピンでも動きましたし,プルアップという手段もありました(^^;;;;。

"BOOT0・SWCLK"周りが不安定なんですかねぇ。それとも書き込む際の設定を気づかずにどこかで変えたかのかもしれません,,。

なお,BOOT0・SWCLKを4.7K Ωでプルアップしても書き込めましたが,プルアップしたままでは動作には移行しませんでした。



さて,動きはしましたがこれは勉強が必要ですね,,。

この動きを追いたくてBOOT0・SWCLKの状態を見ようとしたのですが,私のロジアナやオシロではプローブを接続すると書き込みエラーを引き起こしました(^^;;;。

また,例えばSTM32C011のマニュアルではbootloader activation はpattern 11 だと書いてあるのですが,,正直なところ"STM32CubeProgrammer"での設定でnBootなどのチェックのあるなしの意味づけなど,まだ理解できません。




ま,Boot0(pin)はからんだ設定なんでしょうかねぇ,,としかまだ言いようがない状態での事件現場でのメモです(^^;;;;。