微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 程序停在 ZMacInit() 函数

程序停在 ZMacInit() 函数

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

如果不用jtag调试,程序是会停在 ZMacInit() 中的 MAC_Init () 函数, 直到触发了某个按键才往下执行。 该帖子的使用方法在应用层修改,应该不科学,因为  ZMacInit() 在osal初始化之前。

请问您现在使用的例程及协议栈版本是什么?另外能否给出您现在IAR工程的预编译选项呢?

一般停在MacInit,都是外部晶振什么硬件不正常导致的,遇到过好几次了,都是这样解决的

协议版本是 Z-Stack Home 1.2.2a.44539,预编译选项如下;

SECURE=1

TC_LINKKEY_JOIN

NV_INIT

 NV_RESTORE

xHOLD_AUTO_START

ZTOOL_P1    MT_TASK MT_APP_FUNC    MT_SYS_FUNC MT_ZDO_FUNC   xLCD_SUPPORTED=DEBUG     MULTICAST_ENABLED=FALSE     ZCL_READ xZCL_WRITE ZCL_REPORT     xZCL_EZMODE        ZCL_BASIC ZCL_IDENTIFY ZCL_ON_OFF ZCL_SCENES ZCL_GROUPS xZCL_LEVEL_CTRL ZCL_DIAGNOSTIC FEATURE_SYSTEM_STATS SINGLE_KEY KEY WDT_IN_PM1 MANAGED_SCAN

完美解决了.

默认的就是外部时钟源噢。如果外部没有接32K的,需要更改hal_board_cfg.cfg文件里面的设置。

* hal_board_cfg.h




/* ------------------------------------------------------------------------------------------------

*                                          Clock Speed

* ------------------------------------------------------------------------------------------------

*/

#define HAL_CPU_CLOCK_MHZ     32

#define OSC32K_CRYSTAL_INSTALLED     FALSE         // 插入此行!!!!!!!!!!!!!!!!



/* 32 kHz clock source select in CLKCONCMD */

#if !defined (OSC32K_CRYSTAL_INSTALLED) || (defined (OSC32K_CRYSTAL_INSTALLED) && (OSC32K_CRYSTAL_INSTALLED == TRUE))

  #define OSC_32KHZ  0x00 /* external 32 KHz xosc */

#else

  #define OSC_32KHZ  0x80 /* internal 32 KHz rcosc */

#endif

 

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

网站地图

Top