你好:
我的問題是:我用貴司MSC1210Y5設計電路,其中需用到WatchDog功能,但一直試都無作用,我參照MSC1210 User's Guide 於C程式開頭加入
#pragma ASM
CSEG AT 0807EH
DB 0FCH //設置HCR0
DB 0FFH //設置HCR1
#pragma ENDASM
在程式Main{}之While(1)前加入
WDTCON=0x80; //置位EWDT
WDTCON=0x07; //Clear EWDT;set timeout=7,800ms
在 之While(1) 迴圈中加入
WDTCON |=0x20; //置位RWDT
WDTCON &= ~0x20; //清除RWDT
程式運行時正常狀況會在時間內執行 WDTCON |=0x20; 及 WDTCON &= ~0x20; 復位看門狗,若因干擾異常無法及時執行復位時就會Reset程式,重新執行
但我在程式中插入 DelayX1ms(2000);延遲2sec,已超過看門狗800ms 應該要Reset程式但沒有,程式還是正常執行,請指點是哪裡出錯了,謝謝
Susan Yang:
MSC1210Y5 的相关问题建议您去 e2echina.ti.com/…/发帖询问,会有相关的工程师为您解答!
gaoyang9992006:
A watchdog timer reset is enabled and controlled through Hardware Configuration Register 0 (HCR0) and the Watchdog Timer register (WDTCON, 0FFh).
另外
gaoyang9992006:
www.keil.com/…/3333.htm
到这下载头文件和例子。另外你可以完全用C操作。你试试看。使用sbit指令操作某个位。