首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

LPC2387看门狗功能

LPC2387看门狗功能

最近一个基于LPC2387的方案遇到了棘手的死机问题,板子的网口在客户那运行了十天左右会无法连通。这种现象很难复制,也没有规律。只能祭出大招看门狗,死机时候Ping不通那肯定网络线程Down掉了,那就在网络线程中喂狗吧。

     看门狗驱动:
  • //初始化watchdog
  • void InitWDT(unsigned long t)  
  • {  

  •     WDCLKSEL = 0; //use IRC as watchdog clock
  •     WDTC = t*1000000; // t*4/4MHZ
  •     WDMOD = 0x03;  
  • }  


  • void FeedWDT()  
  • {  
  •     Disable_Int();  //禁止中断,以免喂狗操作被打断出现错误
  •     WDFEED = 0xAA;  
  •     WDFEED = 0x55; //必须连续执行
  •     Enable_Int();  


  • }  


注意事项:
初始玩看门狗后必须紧跟着喂一次狗,否则看门狗功能无法正常运行。
返回列表