谢谢以上两位前辈的指点!!!<br /><br />没有你们的指点,我看书和写程序还会那么模糊; 嘿嘿.我不用再逃避用狗狗了<br />再看开发板提供的详细资料,仔细看了"伪中断"讲得很仔细,很有收获.再看论坛以前发过的有关看门狗的主题.我采用了以下程序,问题得到基本解决,但是"周立功开发板资料"里面提到两个伪中断问题以及3种解决方案,我学习到第一种最好,可是我又自己能力还没有用那第一方案.暂时用以下程序,问题得到控制.<br />void ResetWDT()<br />{<br /> uint32 tmp;<br /> __asm<br /> {<br /> MRS tmp,CPSR<br /> ORR tmp,tmp,#0x80<br /> MSR CPSR_c,tmp<br /> }<br /> WDFEED = 0XAA;<br /> WDFEED = 0X55;<br /> __asm<br /> {<br /> MRS tmp,CPSR<br /> BIC tmp,tmp,#0x80<br /> MSR CPSR_c,tmp<br /> } <br />}<br />其实这就是采用的第2种解决方案(我的理解),在现在测试里面没有任何问题;等段时间产品的各种试验后看会有特殊情况发生不,理论上应该不会.哈哈.现在安心.<br /><br />再次谢谢zlgARM,洪七公两位前辈,继续看开发板资料学习,继续学习,继续学习,呵呵.<br /><br />仔细去再看伪中断,还模糊着呢.不逃避用看门狗,特别是无人职守产品;再多中断情况下,注适时的开关中断.
|