微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 关于更新协议栈的问题

关于更新协议栈的问题

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

        前期使用旧版协议栈(2.3.0-1.4.0)和IAR7.6开发2530软件,后来遇到一个问题就是osal_start_timerEx( )这个函数里面设置事件周期的变量是UNIT16类型的,最多只能设置成65535ms,也就是65s,但是我想让这个任务执行的周期更长点,达到小时级别,我知道新版协议栈中这个函数里时间变量现在是unit32类型了,周期可以支持最多50天,于是就下载了最新版协议栈,安装了zstack home 1.2.2a,页安装了IAR9.10.3软件,然后打开原有工程,该函数还是老样子,编译没问题,链接的时候就提示?v2、?v3...?v16这些都没有定义。。这是一个问题,然后第二个问题是,我是可以直接将这个函数里的时间变量的类型改成UNIT32然后编译还是要怎么处理才能让这个函数更新一下,变成支持32位时间变量呢?第三个问题就是我试了下,在协议栈开低功耗睡眠功能后,这个函数里的时间变量最高只能设置20000(任务有效执行),也就是20s执行一次,改高一点后就貌似不能执行了,21000也就是21s就不行了,看不到数据发送,是协议栈觉得长时间没任务了进入到了PM3了么?这个20s的界限是怎么来的呢?我整个终端程序就只有一个周期性的任务(另还有一个无线接收数据的任务,不定时),就是每隔几十秒ad采集并无线发送。请大神们帮我看看这些都该怎么解决呢,谢谢了。

1.问题1可以参考这个帖子:http://www.deyisupport.com/question_answer/wireless_connectivity/zigbee/f/104/t/59042.aspx

2.问题2 新协议栈是UINT32类型的:uint8 osal_start_timerEx( uint8 taskID, uint16 event_id, uint32 timeout_value )

感觉是你移植协议栈有问题,你应该把你的应用层的东西拷贝到新协议栈相应目录中再编译。

3.问题3不是很清楚。

        谢谢您的指点,第一项我已下文件,待会试验下效果。第二项我想问问有没有一个详细的指导性的文档或者帖子有讲移植协议栈的步骤呢?我在网上搜这方面的资料一点有用的信息都没找到,所以不知道怎么下手,您应该做过移植协议栈吧,能不能详细介绍下这个过程呢?第三个问题是我开低功耗后出现的,以前不开的时候设置60s都没有问题,所以我怀疑协议栈有可能进入到PM3了,但是为什么是20s这个界限也没看到什么文档说明,所以不知道哪里在阻碍这个比较长的事件周期。希望后面有人能够回答吧。

@ GUI XIE 

问题二可以参考:http://www.deyisupport.com/question_answer/wireless_connectivity/zigbee/f/104/t/76078.aspx

另外移植至最新协议栈后是没有问题一的,所以你可以不用管问题一。

        我也看到这个了,都保存了,准备去试验。还是谢谢您。那一二解决了就只有问题三了。

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

网站地图

Top