« CQ出版『現代版 真空管入門』 | トップページ | CPU.BACHさんから、お届け物が・・・ »

2022年6月25日 (土)

AVRマイコンのSUT、BODヒューズ

Arduino-UNOのようにIPLがプログラムされた出来合いの
マイコンを使う時はなにも考えなくて済むのですが、
「UART←→IrDA」変換IC、MCP2122のクロック供給 #2
でのATtiny13AやATtiny25~85のようにAVRマイコンを
「裸」のままプログラムする時に忘れてはならないのが
ヒューズビットの書き換えです。

  ※これをしないままだと・・・
    「動いたけど、なんか遅いぞ
    「なにやら、音が低い
   なんてことが生じます。
   これはCKDIV8ヒューズ
   デフォルトである1/8になったまま
   だから。  よくある話です。

今回、ATtiny13Aをゴソゴソしたので、
BODレベル」と「SUT:Start up time」の様子を調べて
おきました。

この設定、二つのヒューズデータに分かれています。
Ee31
Ee32

BODが電圧低下検出回路の電圧設定。
Ee1_20220625101601

SUT
ではBOD有効、Fast rising powerか
Slowly rising powerかを切り替えます。
Ee2_20220625101601

この表を見て・・・疑問が生じませんか?
「SUT 0,0」だと「BOD enabel」。
ところが「0,1」や「1,0」になるとrising powerのことが
書かれていますが、BODがどうなるか記されていません。

この表の読み方として、
  ・BODを使いたい時は「SUT 0,0」に。
     これはこう読めます。

  ・SUT 0,1や1,0だとBODはオフになるのか、
   それともオンにしてくれるのか?
     表からの情報はありません。

SUT 0,1 1,0でどうなるのかを実際に確かめてみました。

上側の波形はタイマーコンペアマッチ出力(153.6kHz出力)。
初期設定でパルスを出しています。
下側が電源電圧。 ゆっくり5Vまで上昇させてからオフ。

BODのヒューズは4.3Vに設定。
まず、SUT 0,0で「BOD enable」に設定。
Ee41

電源電圧がBODに到達後、リセットが解除されて
すぐにプログラムが走り始め、出力パルスが出ています。

次にSUT 1,0にしてSlowly rising powerに。
Ee42

電源電圧がBODに到達後、少し遅れてから
リセットが解除されて走り始めている様子が見えます。

つまり、SUT 0,1 1,0でも設定したBODが有効になる
ということで、BODは無視されるのかという心配は無用
なりました。

|

« CQ出版『現代版 真空管入門』 | トップページ | CPU.BACHさんから、お届け物が・・・ »

重箱の隅」カテゴリの記事

AVRマイコン」カテゴリの記事

コメント

コメントを書く



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




« CQ出版『現代版 真空管入門』 | トップページ | CPU.BACHさんから、お届け物が・・・ »