PIC單片機(jī)內(nèi)部掉電鎖定復(fù)位
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1.設(shè)計(jì)思路
在單片機(jī)應(yīng)用系統(tǒng)中,如果采用干電池或者充電電池供電,則存在電池電壓不斷下降的問(wèn)題,如果采用市電供電,則存在著電壓波動(dòng)和電源干擾的問(wèn)題。
電源電壓的不穩(wěn)定,是造成單片機(jī)執(zhí)行程序發(fā)生混亂甚至死機(jī)的重要原因之一。所以,許多著名半導(dǎo)體制造公司為此目的研制了名叫“電壓檢測(cè)器”或者“uP監(jiān)控器”的專用集成電路。
在PIC系列單片機(jī)中,有許多型號(hào)內(nèi)部就集成了這項(xiàng)功能(BOR)電路,如PIC16F87X。因此,對(duì)于PIC單片機(jī)的開(kāi)發(fā)者來(lái)說(shuō),就可以免用外加專用集成電路,降低了成本,簡(jiǎn)化了電路。
掉電鎖定復(fù)位時(shí)序如圖1所示,圖中均用高電平表示有效的內(nèi)部復(fù)位信號(hào),該圖描繪了3種不同的情況。
圖1 掉電鎖定復(fù)位時(shí)序
· 電源電壓產(chǎn)生了一次獨(dú)立的瞬間跌落,在VDD下降到門檻的下限值BVDDmax時(shí),迫使芯片進(jìn)入復(fù)位狀態(tài),當(dāng)VDD回升到門檻的上限值BVDDmax時(shí),再延時(shí)72ms使單片機(jī)脫離復(fù)位狀態(tài)。
· 兩次鄰近的電壓跌落,其時(shí)間間隔不大于72ms。
· 電壓跌落狀態(tài)維持了較長(zhǎng)的一段時(shí)間。
2.電路設(shè)計(jì)
利用掉電復(fù)位(BOR,brown-out reset),可以為單片機(jī)提供電源跌落的預(yù)警信號(hào)。一旦發(fā)現(xiàn)VDD下降到某一個(gè)門檻值時(shí),就使單片機(jī)及時(shí)復(fù)位以免系統(tǒng)失控。這個(gè)復(fù)位狀態(tài)一直保持到VDD重新上升到門檻值以上之后。
在PIC單片機(jī)中,把實(shí)現(xiàn)該功能的電路稱作掉電鎖定復(fù)位電路。與掉電鎖定復(fù)位有關(guān)的硬件電路如圖2所示,由圖可以看出,內(nèi)部BOR功能是啟用還是禁止,可以通過(guò)系統(tǒng)配置字的BODEN位來(lái)設(shè)定。
圖2 掉電鎖定復(fù)位硬件電路
當(dāng)VDD降低到一個(gè)特定電壓值BVDD以下時(shí),鎖定復(fù)位電路將單片機(jī)推入并且鎖定在復(fù)位狀態(tài)上;當(dāng)VDD回升到BVDD電壓值以上時(shí),定時(shí)器PWRT被啟動(dòng),開(kāi)始延時(shí)72ms,然后才脫離復(fù)位狀態(tài)而進(jìn)入程序運(yùn)行狀態(tài)。
掉電復(fù)位期間,不會(huì)改變各寄存器的值(電源控制寄存器PCON中的掉電鎖定復(fù)位標(biāo)志位BOR被清0除外),原因是這種復(fù)位的目的是使系統(tǒng)在電源恢復(fù)正常之后能夠繼續(xù)運(yùn)行,因此,應(yīng)該使各個(gè)寄存器的內(nèi)容維持原狀。