在單片機(jī)系統(tǒng)中,看門狗系統(tǒng)對整個(gè)單片機(jī)的運(yùn)行起著特別重要的作用,電子臺(tái)秤所有的干擾源不可能全部被隔離或去除,一旦進(jìn)入CPU干擾程序的正常運(yùn)行,那么復(fù)位系統(tǒng)結(jié)合軟件處理措施就成了一道有效的糾錯(cuò)防御的屏障了。常用的復(fù)位系統(tǒng)有以下兩種: ① 外部復(fù)位系統(tǒng)。外部“看門狗”電路可以自己設(shè)計(jì)也可以用專門的“看門狗”芯片來搭建。然而,他們各有優(yōu)缺點(diǎn),大部分“看門狗”芯片對低頻“喂狗”信號 不能響應(yīng),而高頻“喂狗”信號都能響應(yīng),使其在低頻“喂狗”信號下產(chǎn)生復(fù)位動(dòng)作而在高頻的“喂狗”信號下不產(chǎn)生復(fù)位動(dòng)作,這樣,如果程序系統(tǒng)陷入一個(gè)死循環(huán),而該循環(huán)中恰巧有著“喂狗”信號的話,那么該復(fù)位電路就無法實(shí)現(xiàn)它的應(yīng)有的功能了。然而,我們自己可以設(shè)計(jì)一個(gè)具有帶通的“喂狗”電路和其他復(fù)位電路 構(gòu)成的系統(tǒng)就是一個(gè)很有效外部監(jiān)控系統(tǒng)了。 ② 現(xiàn)在越來越多的單片機(jī)都帶有自己的片上復(fù)位系統(tǒng),這樣用戶就可以很方便的使用其內(nèi)部的復(fù)位定時(shí)器了,但是,有一些型號的單片機(jī)它的復(fù)位指令太過于簡單,這樣也會(huì)存在象上述死循環(huán)那樣的“喂狗”指令,使其失去監(jiān)控作用。有一些單片機(jī)的片上復(fù)位指令就做的比較好,一般他們把“喂狗”信號做成固定格式的多條指令 依順序來執(zhí)行,如果有一定錯(cuò)誤則該“喂狗”操作無效,這樣就大大提高了復(fù)位電路的可靠性。 |