微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > CC2640看门狗无法正常工作

CC2640看门狗无法正常工作

时间:10-02 整理:3721RD 点击:

Hi,TI的工程师,我在使用2640的WD时出现如下问题:

在烧完程序后看门狗无法正常工作,必须硬件复位一次,才能正常启动(我打开看门狗但是不喂狗,发现不复位程序直接跑飞了)

void wdtCallback(UArg handle)   
{  
//    Watchdog_clear((Watchdog_Handle)handle);  
}  
  
void wdtInitFxn(void)   
{  
    Watchdog_Params wp;  
    Watchdog_Handle watchdog;  
    Watchdog_Params_init(&wp);  
    wp.callbackFxn    = wdtCallback;  
    wp.debugStallMode = Watchdog_DEBUG_STALL_ON;  
    wp.resetMode      = Watchdog_RESET_ON;  
  
    watchdog = Watchdog_open(Board_WATCHDOG, &wp);  
    Watchdog_setReload(watchdog, 500000); // 1sec (WDT runs always at 48MHz/32) 
}

我参考网上写的,在Board.c和Board.h中分别进行了相应的配置

也添加了的watchdog.c、watchdog.h、watchdogCC26XX.c和watchdogCC26xx.h

另外,我使用寄存器配置的结果和使用Ti提供的API完全一致

void wdtInitFxn(void)   
{  
  HWREG(WDT_BASE + 0xc00) = 0x1ACCE551;
  HWREG(WDT_BASE + 0x00) = 0x7A120;
  HWREG(WDT_BASE + 0x08) = 0x03;
  
  HWREG(WDT_BASE + 0xc00) = 0x01;
}

也是必须硬件复位一次WD才能工作,希望TI工程师帮忙解答下,谢谢

跑飞了,中断一下,看看是否在某个异常中断里。

Hi HG,

添加看门狗之后,用IAR仿真,一开Debug就提示错误自动终止了

能否提供下具体的错误提示呢?

Hi Yang

仿真报错是

 这样的。

另外我在hal_mcu.h中查到Reset Marco中有说明:

/* ------------------------------------------------------------------------------------------------
 *                                        Reset Macro
 * ------------------------------------------------------------------------------------------------
 */
// Perform the equivalent of a PIN Reset (hard reset).
// The cc26xx system has not been design to handle soft reset.
// Making a soft reset can make the system unstable. 
// All soft reset needs to be replace by Hard reset.

#define HAL_SYSTEM_RESET()  (HWREG( AON_SYSCTL_BASE + AON_SYSCTL_O_RESETCTL ) |= AON_SYSCTL_RESETCTL_SYSRESET_M);

是否和watchdog初次启动程序跑死有关?

另,watchdog重启是否对外部RESET引脚有要求呢?期待解答

TI 的工程师们,请问这个看门狗,或者说软件复位功能到底怎么用呀?

我按照数据手册的配置过

烧完程序后需要硬件复位一次WD才能正常工作,并且我在开发板上添加看门狗模块,也是同样的效果。

如果有解决方法,能不能告知一声,毕竟WD的资料就那么一点,也没有查到更多有价值的信息了

感谢!

参考看门狗例程 http://dev.ti.com/tirex/#/?link=Software%2FSimpleLink%20CC13x0%20SDK%2FExamples%2FDevelopment%20Tools%2FCC1310%20LaunchPad%2FTI%20Drivers%2Fwatchdog

Hi Butterfly

感谢你的回复,我还在下载你给的链接,不过我在hal_mcu.c里看到一段TI的注解,请问下

/* ------------------------------------------------------------------------------------------------
 *                                        Reset Macro
 * ------------------------------------------------------------------------------------------------
 */
// Perform the equivalent of a PIN Reset (hard reset).
// The cc26xx system has not been design to handle soft reset.
// Making a soft reset can make the system unstable. 
// All soft reset needs to be replace by Hard reset.

这段注解是啥意思?是否应该尽量避免软件复位,使用硬件复位呢?

谢谢

问题已经解决,查看数据手册解决的

谢谢

你好,我现在也出现了相同的问题,请问你是怎么解决的?谢谢

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top