微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 板子上的程序独立工作一天,协议栈的osal时间会慢20几分钟,求助!

板子上的程序独立工作一天,协议栈的osal时间会慢20几分钟,求助!

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

app开始时设置下时间,然后断开连接, 板子自己工作, 跑一天下来, 板子上的时间会慢20几分钟,这个是什么原因?有办法解决吗? 请指导下!

用的协议栈版本1.3.2

Hi eric

你说的慢20分钟是什么情况呢?用osal定时器做类似于时钟之类的功能吗?

(SDK中有说明osal提供的定时器是非精准的定时。)

做个定时功能,就是app开始设置osal的时间和app相同, 然后断开,板子独自跑一天,最后发现osal的时间慢了

这个很正常的!

首先osal提供的timer是并非精准的定时;

使用osal的timer只是定时后挂起一个事件,还要等到任务调度的时候采取执行,这个不同于硬件的中断。

我不是说定个几秒那个timer. 我是指, 在osal层不是有个变量记录当前时间的秒数吗,开始和app时间(unix timestamp, 4字节)设置一样, 比如8点钟, 到了晚上,app是8点,可以板子上的时间是7点多,要慢很多分钟

你接了外部32KHz的晶振了吗?

接了的,省电模式不知会不会影响时间,我测试是在非省电模式。

蓝牙规范定义了一个time profile(Current Time Service)用来获取当前时间,是不是意味着设备本来就无法做到准确的时间?

用了的,我也是在非省电模式下测试。不知省电模式不知会不会有影响

蓝牙规范profile里有个current time service,是不是cc2540设备本来就做不到准确的日期时间?

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

网站地图

Top