如果想要實(shí)現(xiàn)利用中斷復(fù)位,我所知道的有兩種方式:看門狗中斷和無中斷服務(wù)程序的中斷。
一、利用看門狗中斷實(shí)現(xiàn)復(fù)位
單片機(jī)中看門狗的作用在這里就不詳細(xì)說了,看門狗中斷的功能之一是,防止單片機(jī)程序陷入預(yù)料之外的死循環(huán)或者單片機(jī)程序跑飛。
如何實(shí)現(xiàn)看門狗中斷復(fù)位呢?首先我們要預(yù)估一段程序的最長運(yùn)行時(shí)間,估算出來后,再加上一些時(shí)間余量,把這個(gè)時(shí)間作為看門狗的“喂狗”時(shí)間,在這個(gè)時(shí)間即將達(dá)到時(shí),要及時(shí)“喂狗”(也就是把看門狗時(shí)間配置寄存器的值重新設(shè)置),這樣看門狗會重新計(jì)時(shí),程序繼續(xù)正常運(yùn)行。一旦程序跑飛或者進(jìn)入一個(gè)預(yù)料之外的死循環(huán),那么因?yàn)槌绦蛞恢痹谶@里運(yùn)行,不會再運(yùn)行到“喂狗”程序中,所以當(dāng)看門狗寄存器的值達(dá)到預(yù)定值后,就產(chǎn)生了中斷,這個(gè)中斷讓單片機(jī)復(fù)位。
二、利用沒有中斷服務(wù)程序的中斷復(fù)位
這個(gè)功能我在MSP430單片機(jī)上試驗(yàn)過,沒有再別的單片機(jī)上實(shí)驗(yàn),所以不確定別的單片機(jī)是否也會這樣。
具體實(shí)現(xiàn)過程是,在程序中使能某個(gè)中斷,例如端口中斷,串口中斷等,但是不寫這個(gè)中斷的服務(wù)程序,這樣,當(dāng)滿足這個(gè)中斷的條件出現(xiàn)時(shí),由于找不到中斷服務(wù)程序,單片機(jī)就會復(fù)位。
-
單片機(jī)
+關(guān)注
關(guān)注
6067文章
44997瀏覽量
650767 -
中斷
+關(guān)注
關(guān)注
5文章
905瀏覽量
42827
原文標(biāo)題:單片機(jī)利用中斷復(fù)位的兩種方式
文章出處:【微信號:changxuemcu,微信公眾號:暢學(xué)單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
STM32實(shí)現(xiàn)復(fù)位的三種常用方式問題
簡單談?wù)?b class='flag-5'>兩種復(fù)位電路的工作原理
51單片機(jī)的外部中斷有哪些觸發(fā)方式

使用單片機(jī)實(shí)現(xiàn)流水燈的兩種代碼免費(fèi)下載

使用51單片機(jī)C語言和匯編兩種方式實(shí)現(xiàn)設(shè)計(jì)時(shí)鐘的程序免費(fèi)下載

STC單片機(jī)不斷電程序下載的方法詳細(xì)說明

單片機(jī)的兩種清0方式有什么區(qū)別
單片機(jī)常用的兩種延時(shí)控制方式

51單片機(jī)外部中斷的兩種觸發(fā)方式資料下載

MSP430單片機(jī)的兩種SPI總線實(shí)現(xiàn)方式

51單片機(jī)外部中斷拓展(兩個(gè)以上的外部中斷)

對單片機(jī)通信方式(中斷和輪詢)的理解

評論