查看: 1813|回复: 1

[求助] 帮看看K64的看门狗的程序那里有错误?大侠们,帮帮忙!

[复制链接]

该用户从未签到

51

主题

307

帖子

0

高级会员

Rank: 4

积分
651
最后登录
2020-9-4
发表于 2016-4-11 15:57:28 | 显示全部楼层 |阅读模式
本帖最后由 翱翔太空-423505 于 2016-4-12 09:41 编辑

楼主:


我正在编写K64的看门狗的程序.运行在mqx系统下,现在我作了一个初始化的程序,调用初始化程序后,一直不问狗,但不产生看门狗中断中断.
程序如下:
void wdog_init(uint16_t timeOutMs /*ms*/,void (*timeout_isr)(void))
{
    uint32_t Value;
    uint16_t timeOutValueH;
    uint16_t timeOutValueL;
    uint32_t g_periph_clk_khz = 60000000;
    /* First unlock the watchdog so that we can write to registers */
    //修改控制寄存器,先写入钥匙。 xzf:两个写操作必须在20 个总线周期内完成,必须关闭中断    p520
    WDOG_MemMapPtr reg = WDOG_BASE_PTR;
    Value = ((g_periph_clk_khz/8)*timeOutMs);  //XZF. 必须在busclock 初始化之后
    timeOutValueH = (uint16_t)(((Value>>16)&0xFFFF));
    timeOutValueL = (uint16_t)(Value&0x0000FFFF);
    int_disable();
   
    /* unlock watchdog */
    reg->UNLOCK = 0xc520;
    reg->UNLOCK = 0xd928;   
   
    //默认选择BusClock  设置分频器,设置值为8
    /* WDOG_STCTRLH: ??=0,DISTESTWDOG=0,BYTESEL=0,TESTSEL=0,TESTWDOG=0,??=0,STNDBYEN=1,WAITEN=1,STOPEN=1,DBGEN=0,ALLOWUPDATE=1,WINEN=0,IRQRSTEN=0,CLKSRC=1(alternate clock),WDOGEN=0 */
      //WDOG_BASE_PTR->STCTRLH = (uint16_t)(0x01D3u);  //no need DBGEN = 1??
    reg->STCTRLH = (uint16_t)(0x09F7u);     
    reg->PRESC = WDOG_PRESC_PRESCVAL(7);  //wdog clock = g_periph_clk_khz/(7+1).   
         
    reg->TOVALH = timeOutValueH;
    reg->TOVALL = timeOutValueL;
   
    int_enable();
  
   
    if(timeout_isr != NULL) {
        //WDOG_BASE_PTR->STCTRLH |= WDOG_STCTRLH_IRQRSTEN_MASK;
       _bsp_int_init(INT_Watchdog, 1, 0, FALSE);
    }
}
void wdog_isr(void)
{
   _mqx_uint       n;
   n++;
}
void test_wdog(void)
{
   wdog_init(100,wdog_isr);
   _bsp_int_enable(INT_Watchdog);
   while(1)
   {
        _time_delay(10);
   }
}   
哪位大侠指点一下. 是否正确?多谢!

我知道答案 目前已有1人回答
回复

使用道具 举报

该用户从未签到

51

主题

307

帖子

0

高级会员

Rank: 4

积分
651
最后登录
2020-9-4
 楼主| 发表于 2016-4-12 09:41:42 | 显示全部楼层
自顶一下!
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-20 00:03 , Processed in 0.085494 second(s), 22 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表