對於單片機5V系統,設定BOD電平為4.0V;對於3V系統,設定BOD電平為2.7V。然後允許BOD檢測。
這樣,一旦單片機的供電電壓低於BOD電平,單片機進入RESET(不執行程式了)。而當電源恢復到BOD電平以上,單片機才正式開始從頭執行程式。保證了系統的可靠性!
當電壓跌至2.5V,系統程式還能工作。這時有2個可怕的現象可能出現:
1、外圍晶片工作已經混亂,單片機讀到的東西不正確,造成程式的執行發生邏輯錯誤(不是單片機本身的原因)。
2、當電源低到臨界點,如2.4V時,並且在此忽上忽下的,單片機本身的程式執行也不正常,取指令、讀數據都可能發生錯誤,或程式亂飛、不穩定,非常容易造成EEPROM、FALSH的破壞。有人問51怎么不會?實際上51也是這樣,只是51內部沒有直接寫EEPROM、FLASH的指令,它的程式亂飛留不下痕跡。還有人有疑問:外掛EEPROM,掉電時怎么不會改寫?實際是外掛EEPROM,當電壓低於4V(2.7V)時,它已經不工作了,程式去改內容也改不了。