a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 關于AVR的BOD

關于AVR的BOD

作者: 時間:2013-05-11 來源:網絡 收藏

作為一個正式的系統或產品,當系統基本功能調試完成后,一旦進行現場測試階段,請注意馬上改寫熔絲位的配置,啟用的電源檢測()功能。

對于5V系統,設置電平為4.0V;對于3V系統,設置電平為2.7V。然后允許BOD檢測。

這樣,一旦的供電電壓低于BOD電平,進入RESET(不執行程序了)。而當電源恢復到BOD電平以上,AVR才正式開始從頭執行程序。保證了系統的可靠性!

原因分析如下:

AVR是工作的芯片,當電壓跌至2.5V,系統程序還能工作。這是有2個可怕的現象可能出現,

1。外圍芯片工作已經混亂,AVR讀到的東西不正確,造成程序的執行發生邏輯錯誤(不是AVR本身的原因)。

2。當電源低到臨界點,如2.4V時,并且在此互上互下的,AVR本身的程序執行也不正常,取指令、讀數據都可能發生錯誤,或程序亂飛、不穩定(AVR本身的原因,實際任何的單片機都是這樣的),非常容易造成EEPROM、FALSH的破壞。有人問51怎么不會?實際上51也是這樣,只是51內部沒有直接寫EEPROM、FLASH的指令,它的程序亂飛留不下痕跡。還有人有疑問:外掛EEPROM,掉電時怎么不會改寫?實際是外掛EEPROM,當電壓低于4V(2.7V)時,它已經不工作了,程序去改內容也改不了。而AVR內部的東西在臨界電壓時都能工作,但非常不穩定。

AVR的BOD功能必須要使用,我早期使用51時,凡是產品外部都要使用電源監測芯片,現在AVR自己本身就有該功能,一定要使用。

下面是AVR獵手的經驗之談:

在做的一個控制系統,現場環境提供給我的電源是DC 24V,我的系統需要兩個電壓,一個是DC 12V 3A,一個是DC 5V 200mA。12V穩壓選用了1501A12開關穩壓IC(此芯片最大電流可以承受5A,如果要達到這么大的電流,配套的電感很重要,必須使用藍綠磁環,0.85mm的漆包線繞制,22uH的電感量)。5V的電源用7805對12V電源進行穩壓。單片機用的是ATMEGA48,使用洞洞板焊接做實驗,芯片的熔絲只修改了下振蕩源為外部晶體振蕩和關閉8分頻功能,未開啟BOD。

因為12V的電壓系統要帶動一個直流電機,由12V的繼電器進行帶動控制,因為電機工作時帶動的負載有可能會被外力阻擋而造成電機停轉過載,這個時候電機的堵轉電流可能達到3A左右,所以在硬件上我做了保護,采用AVR的ADC檢測電機的工作電流,如果發生過載,則馬上停止電機工作。

這個手工焊接的控制板測試時工作正常,包括電機過載測試,都未發生什么故障。

都測試通過后,制板回來,燒寫程序的時候順便打開AVR的BOD,設置為4.3V。然后開始著手做一些過載測試,發現一過載MCU就馬上復位~~~超級郁悶啊~~~以為自己又改了什么程序導致不穩定,或者是啟動電機工作后的延時時間不夠(大家都知道:在驅動大功率負載的時候,在接通繼電器的時候,MCU的指令控制一定要再延時幾十個毫秒~幾百個毫秒左右,否則會出現繼電器吸合后馬上斷開的問題。詳細原因不在本文討論范圍之內就不多說了,書本上都有詳細說明這些用法),真的很打擊人~ 想想AVR也沒這么脆弱~~或者是我布板設計不合理???沒這個理由的,以前的板子可是用洞洞板焊接的,以前不管怎么測試都不會復位。試著增加了輸出控制的延時時間,還是一樣的結果,一過載就復位。

軟件改了~不行~~~寫入以前的軟件~也不行

換回以前的洞洞板測試,OK,沒問題。不會吧~~~

靜下心來仔細想想,兩個板的差異,硬件一樣,軟件一樣,芯片一樣。等等…好象…對了!新做的板子都開啟了BOD使能。馬上先把BOD關了,果然,系統沒有再發生過一次復位的情況。問題是解決了,但總得給個理由吧,總不能就放著BOD不用~~~再用眼睛仔細觀察電機過載時電路板的一些狀態,發現12V的LED電源指示燈會在電機過載的瞬間暗了一下,哇靠~!火眼金睛啊~!多帶了個眼鏡果然不一樣!^_^哈哈,知道哪里的問題了。應該是電機過載時,12V的電壓有所跌落,然后導致經過7805穩壓后的5V電壓也有所跌落,雖然這個電壓的跌落只是瞬間,可能有跌到 4.3V以下,但這個瞬間馬上被BOD檢測到了,BOD強制MCU復位。這個瞬間的跌落用萬用表是檢測不出的,特別是用數字表更看不出了,有示波器的話就可以看下這個的跌落波形了。我手上只有兩個數字表,所以沒法把這個瞬間的波形捕捉出來給大家看了。(有些時候數字表還不如指針表,指針表可能還會更直觀的顯示出一些瞬態變化,如果有指針表應該也可以看出一些細微的電壓波動)

解決方法:BOD的作用上面馬老師已經說了,所以還是不能關掉了事,設置為2.7V即可,我這樣做有沒有道理大家自己想咯^_^

把自己使用BOD的過程分享出來是想告訴大家:使用BOD的時候不是隨手開下就了事的,要注意實際工作的一些異常狀況的發生,設置好適合系統的BOD電壓才能保證你的系統工作的更可靠。



關鍵詞: AVR BOD 寬電壓

評論


相關推薦

技術專區

關閉