版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
監(jiān)測(cè)站宕機(jī)復(fù)位重啟InternetofThings項(xiàng)目場(chǎng)景說(shuō)明看門狗介紹CC2530與看門狗定時(shí)器項(xiàng)目實(shí)踐項(xiàng)目場(chǎng)景監(jiān)測(cè)站在長(zhǎng)期運(yùn)行的過(guò)程中如果其本身出現(xiàn)了非硬件故障的程序性宕機(jī),那么由工程人員去監(jiān)測(cè)站重啟設(shè)備就很有必要了。然而很多的檢測(cè)站因?yàn)楸O(jiān)測(cè)需要可能泡在水中、埋在土里或者是掛在高處,且傳感器數(shù)量巨大,技術(shù)維護(hù)不方便。應(yīng)對(duì)這種情況要如何處理呢?這個(gè)時(shí)候就可以使用單片機(jī)中的看門狗功能了,當(dāng)看門狗檢測(cè)到系統(tǒng)宕機(jī)時(shí)可自動(dòng)重啟設(shè)備從而省去了小事故大動(dòng)作的煩惱。任務(wù)目標(biāo)使用CC2530單片機(jī)模擬監(jiān)測(cè)站宕機(jī)復(fù)位重啟,通過(guò)編輯程序使用CC2530單片機(jī)的看門狗外設(shè)實(shí)現(xiàn)假設(shè)CC2530單片機(jī)宕機(jī)后的系統(tǒng)復(fù)位重啟,使用按鍵輸入作為CC2530單片機(jī)正常運(yùn)行的條件,通過(guò)連接在CC2530單片機(jī)管腳上的指示燈表示CC2530單片機(jī)當(dāng)前的工作狀態(tài)??撮T狗概念看門狗定時(shí)器(WDT,WatchDogTimer)是單片機(jī)的一個(gè)組成部分,它實(shí)際上是一個(gè)計(jì)數(shù)器,一般給看門狗一個(gè)數(shù)字,程序開(kāi)始運(yùn)行后看門狗開(kāi)始倒計(jì)數(shù)。如果程序運(yùn)行正常,過(guò)一段時(shí)間CPU應(yīng)發(fā)出指令讓看門狗復(fù)位,重新開(kāi)始倒計(jì)數(shù)。如果看門狗減到0就認(rèn)為程序沒(méi)有正常工作,強(qiáng)制整個(gè)系統(tǒng)復(fù)位。看門狗IC的基本原理看門狗,是一個(gè)定時(shí)器電路,一般有一個(gè)輸入,叫喂狗(kickingthedogorservicethedog),一個(gè)輸出到MCU的RST端,MCU正常工作的時(shí)候,每隔一段時(shí)間輸出一個(gè)信號(hào)到喂狗端,給WDT清零。如果超過(guò)規(guī)定的時(shí)間不喂狗(一般在程序跑飛時(shí)),WDT定時(shí)超過(guò),就會(huì)給出一個(gè)復(fù)位信號(hào)到MCU,使MCU復(fù)位以此防止MCU死機(jī)??撮T狗的作用就是防止程序發(fā)生死循環(huán),或者說(shuō)程序跑飛。項(xiàng)目場(chǎng)景說(shuō)明看門狗介紹CC2530與看門狗定時(shí)器項(xiàng)目實(shí)踐CC2530看門狗定時(shí)器介紹CC2530單片機(jī)看門狗定時(shí)器有一下特性:四個(gè)可選的定時(shí)器間隔看門狗模式定時(shí)器模式在定時(shí)器模式下產(chǎn)生中斷請(qǐng)求CC2530看門狗定時(shí)器之看門狗模式在CC2530單片機(jī)系統(tǒng)復(fù)位之后,看門狗定時(shí)器同時(shí)被復(fù)位。此時(shí)要設(shè)置WDT為看門狗模式,必須從新設(shè)置WDCTL.MODE[1:0]位為10。然后啟動(dòng)看門狗,看門狗定時(shí)器的計(jì)數(shù)器就會(huì)從0開(kāi)始遞增。在看門狗模式下,一旦定時(shí)器使能,就不可以禁用該定時(shí)器,因此如果WDT位已經(jīng)運(yùn)行在看門狗模式下,再往WDCTL.MODE[1:0]寫入00或10就不起作用了。CC2530看門狗定時(shí)器之定時(shí)器模式CC2530的看門狗定時(shí)器可以直接配置為定時(shí)器來(lái)使用,若要將WDT設(shè)置為一般定時(shí)器模式,必須把WDCTL.MODE[1:0]位設(shè)置為11。設(shè)置成功后定時(shí)器開(kāi)始執(zhí)行,且計(jì)數(shù)器從0開(kāi)始遞增。當(dāng)計(jì)數(shù)器達(dá)到設(shè)定的計(jì)數(shù)值后,定時(shí)器將產(chǎn)生一個(gè)中斷請(qǐng)求(IRCON2.WDTIF/IEN2.WDTIE)。寄存器介紹CC2530的看門狗的配置寄存器只有一個(gè)WDCTL(看門狗控制寄存器)。位名稱復(fù)位R/W描述7:4CLR[3:0]0000R0/W清除定時(shí)器。當(dāng)0xA跟隨0x5寫到這些位,定時(shí)器被清除(即加載0)。注意定時(shí)器僅寫入0xA后,在1個(gè)看門狗時(shí)鐘周期內(nèi)寫入0x5時(shí)被清除。當(dāng)看門狗定時(shí)器是IDLE為時(shí)寫這些位沒(méi)有影響。當(dāng)運(yùn)行在定時(shí)器模式,定時(shí)器可以通過(guò)寫1到CLR[0](不管其他3位)被清除為0x0000(但是不停止)。3:2MODE[1:0]00R/W模式選擇。該位用于啟動(dòng)WDT處于看門狗模式還是定時(shí)器模式。當(dāng)處于定時(shí)器模式,設(shè)置這些位為IDLE將停止定時(shí)器。注意:當(dāng)運(yùn)行在定時(shí)器模式時(shí)要轉(zhuǎn)換到看門狗模式,首先停止WDT,然后啟動(dòng)WDT處于看門狗模式。當(dāng)運(yùn)行在看門狗模式,寫這些位沒(méi)有影響。00:IDLE01:IDLE(未使用,等于00設(shè)置)10:看門狗模式11:定時(shí)器模式1:0INT[1:0]00R/W定時(shí)器間隔選擇。這些位選擇定時(shí)器間隔定義為32kHz振蕩器周期的規(guī)定數(shù)。注意間隔只能在WDT處于IDLE時(shí)改變,這樣間隔必須在定時(shí)器啟動(dòng)的同時(shí)設(shè)置。00:定時(shí)周期×32,768(~1s)當(dāng)運(yùn)行在32kHzXOSC01:定時(shí)周期×8192(~0.25s)10:定時(shí)周期×512(~15.625ms)11:定時(shí)周期×64(~1.9ms)當(dāng)通過(guò)CLKCONCMD.CLKSPD使能時(shí)鐘分頻時(shí),看門狗定時(shí)器的長(zhǎng)度間隔減少一個(gè)等于當(dāng)前振蕩器時(shí)鐘頻率除以設(shè)定時(shí)鐘的因數(shù)速度。例如,如果選擇32-MHx晶體并且時(shí)鐘速度被設(shè)置為4MHz,則看門狗超時(shí)時(shí)間減少了32MHz/4MHz=8倍。如果看門狗時(shí)間間隔由WDCTL.INT設(shè)置是1秒,名義上是這個(gè)時(shí)鐘分頻因子的1/8秒。項(xiàng)目場(chǎng)景說(shuō)明看門狗介紹CC2530與看門狗定時(shí)器項(xiàng)目實(shí)踐項(xiàng)目分析程序宕機(jī)后要讓設(shè)備自動(dòng)重啟就需要用到CC2530單片機(jī)的看門狗外設(shè),通過(guò)模擬喂狗以保持程序正常運(yùn)行,中斷喂狗則程序復(fù)位重啟。CC2530看門狗的的配置比較簡(jiǎn)單,主要就是對(duì)WDCTL寄存器的配置,首先開(kāi)啟IDLE功能,功能開(kāi)啟后通過(guò)WDCTL寄存器低兩位配置喂狗時(shí)間即可。喂狗操作則是依次向WDCTL寄存器寫入0x0A和0x05即可。程序流程圖項(xiàng)目實(shí)現(xiàn)看門狗初始化程序如下:voidwatchdog_init(void){WDCTL=0x00;//打開(kāi)IDLE才能設(shè)置看門狗WDCTL|=0x08;//定時(shí)器間隔選擇,間隔一秒}項(xiàng)目實(shí)現(xiàn)喂狗程序內(nèi)容如下:voidfeed_dog(void){WDCTL=0xa0;//清除定時(shí)器。當(dāng)0xA跟隨0x5寫到這些位,定時(shí)器被清除WDCTL=0x50;LED2=ON;//系統(tǒng)不復(fù)位LED燈長(zhǎng)亮LED1=ON;//系統(tǒng)不復(fù)位LED燈長(zhǎng)亮}項(xiàng)目實(shí)現(xiàn)按鍵按下,執(zhí)行喂狗操作:while(1){LED2=ON;//沒(méi)有按下按鍵系統(tǒng)走動(dòng)復(fù)位,所以LED0會(huì)閃爍LED1=ON;if(KEY1==ON){//按鍵按下,執(zhí)行喂狗操作,LED0點(diǎn)亮delay_ms(10);//按鍵防抖if(KEY1==ON){
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)安全生產(chǎn)隱患排查與整改建議
- 2025年公司安全培訓(xùn)考試題庫(kù)(答案+解析)
- 2026青海果洛州久治縣醫(yī)共體招聘編外臨聘人員16人備考題庫(kù)完整答案詳解
- 2026重慶南開(kāi)三十二中學(xué)校招聘2人備考題庫(kù)及一套完整答案詳解
- 2026河南鄭州市區(qū)公立醫(yī)院招聘護(hù)理崗備考題庫(kù)完整答案詳解
- 2026湖南長(zhǎng)沙市芙蓉區(qū)教育局屬學(xué)校招聘小學(xué)編外合同制教師33人備考題庫(kù)有答案詳解
- 中共吉水縣委社會(huì)工作部2026年面向社會(huì)公開(kāi)招聘3名暖新驛站管理員的備考題庫(kù)附答案詳解
- 2026福建龍巖市龍洲集團(tuán)股份有限公司招聘2人備考題庫(kù)及完整答案詳解
- 2026福建福州鼓樓區(qū)南街街道專職網(wǎng)格員招聘1人備考題庫(kù)及答案詳解1套
- 安徽阜陽(yáng)市臨泉縣面向2026屆公費(fèi)師范畢業(yè)生招聘教師18人備考題庫(kù)及1套完整答案詳解
- 2026山西離柳焦煤集團(tuán)有限公司專業(yè)技術(shù)人員招聘柳林縣凌志售電有限公司專業(yè)技術(shù)人員4人備考考試題庫(kù)及答案解析
- 2025年護(hù)理“三基”理論考試題附答案
- 建筑物消防設(shè)施遠(yuǎn)程監(jiān)控合同
- 2025年考愛(ài)情的測(cè)試題及答案
- 范可尼綜合征診療指南(2025年版)
- 2026年中國(guó)化工經(jīng)濟(jì)技術(shù)發(fā)展中心招聘?jìng)淇碱}庫(kù)及一套參考答案詳解
- GB/Z 124.1-2025納米技術(shù)石墨烯結(jié)構(gòu)表征第1部分:石墨烯粉末及分散系
- 機(jī)房網(wǎng)絡(luò)改造施工方案
- HAD101-04-2025 核動(dòng)力廠廠址評(píng)價(jià)中的外部人為事件
- 2025年日語(yǔ)n4試題及答案
- 公司網(wǎng)絡(luò)團(tuán)隊(duì)介紹
評(píng)論
0/150
提交評(píng)論