TMS320F2812系統(tǒng)中的軟件復位方法
TMS320F2812(以下簡稱2812)是TI公司2000系列的新型DSP芯片,具有32位低功耗定點處理器,最高主頻150 MHz,有強大的操作能力和快速的中斷響應處理能力。片內(nèi)有18 K字高速RAM,128 K字的可加密Flash ROM。片上還集成了豐富的片內(nèi)外設.有SPI、SCI、eCAN和McB—SP等多個串口外圍設備,16通道的12位模數(shù)轉(zhuǎn)換器(ADC),2個事件管理器(EVA、EVB),56個獨立的可編程、多用途通用I/O口(GPIO)。該DSP芯片集成了大量工業(yè)控制領域應用的外設接口,能大大簡化電路設計,同時它也具有足夠的處理能力,是應用于控制領域的一款高性能DSP處理器。
下面介紹三種實現(xiàn)方法。
1 硬件看門狗帶喂狗端口
看門狗芯片一般都帶有電壓監(jiān)控和復位輸出控制,同時還帶有WDI的喂狗引腳,需要系統(tǒng)不停地給芯片脈沖,以保證看門狗芯片不向系統(tǒng)輸出復位信號。這里就出現(xiàn)了第一種軟件方式系統(tǒng)復位方法:需要軟件復位時就長時間不給狗脈沖,這樣看門狗芯片的復位引腳就輸出1個系統(tǒng)需要的復位電平使系統(tǒng)復位。圖1是看門狗芯片圖。圖2是MAX706與2812的接口電路。MAX706芯片內(nèi)部看門狗定時器的輸入WDI可以接到2812的引腳上,2812不斷向WDI輸入脈沖(周期≤1.6 s),WDO輸出的低電平接到2812的XRS端,使系統(tǒng)復位并重新啟動系統(tǒng)。另外當系統(tǒng)電源降到檢測點時也使系統(tǒng)復位。當系統(tǒng)接收到復位命令后,停止對WDI引腳的輸出,使芯片的RESET控制系統(tǒng)復位。
端口初始化程序如下:
2 看門狗芯片不帶喂狗端口
方式1中所采用的是帶WDI端口的看門狗芯片,但有些芯片是不帶WDI端口的,這時看門狗用于電源檢測,當?shù)陀谠O定電壓時,輸出復位信號,使系統(tǒng)復位。第二種方法也采用2812的引腳配合方式,但不需要時時刻刻喂狗。圖3為所采用的看門狗芯片MAX708。圖4為MAX708與2812的接口電路。
2812的GPIOFl4-XF引腳在上電復位后輸出高電平,之后該信號被鎖存。當2812收到系統(tǒng)復位命令后,控制GPIOFl4一XF引腳輸出低電平使系統(tǒng)復位。
端口初始化如下:
[!--empirenews.page--]
3 軟件看門狗復位方式
這種方式是利用2812自帶的軟件看門狗方式,2812的看門狗功能框圖如圖5所示。
通過框圖可以看出2812的軟件看門狗有兩種方式:WDINT的中斷喚醒方式和WDRST方式。這里是要求系統(tǒng)復位,而WDINT是實時監(jiān)控系統(tǒng)的,并不能按要求實現(xiàn)軟件復位,所以需將WDRST信號接到XlRS上,這樣通過程序配合就能實現(xiàn)控制系統(tǒng)復位。2812系統(tǒng)上電初始化需要一定的時間,所以在初始化時先關閉看門狗,等系統(tǒng)初始化完成后,再打開看門狗。
初始化程序說明如下:
這里利用while(1)的死循環(huán)等待看門狗的計數(shù)器超過設定值,然后WDRST信號輸出低電平;而WDRST接到XRS上,所以整個系統(tǒng)復位,重新開始執(zhí)行程序。
看門狗程序如下:
結(jié) 語
第一種和第二種方式基于硬件的實現(xiàn),更加可靠些,第三種方式則可以節(jié)約電路板的空間和成本。需要注意的是,采用軟件看門狗時調(diào)用喂狗程序的間隔不能大于設定值。