TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2650 软件定时器中,周期性执行的 period里面的具体执行函数的运行时间一般不能够超过多少

蓝牙任务中,有一个软件定时器,20ms定时执行函数A。

请问A占用CPU的时间是否不宜过长,否则蓝牙连上后 很容易断开,然后再也搜索不到?

A占用CPU的时间多长合适, 如果A占用CPU的时间无法减小,请问怎样解决这个问题呢?

Viki Shi:

这个时间跟你自己设置的连接参数相关,参考这边类似问题:e2echina.ti.com/…/161765

user1388075:

回复 Viki Shi:

问题是,断后,就扫描不到了……

user1388075:

回复 Viki Shi:

他这个是中断

我的是蓝牙任务中的软件定时器,定时事件中的函数执行时间偏长。

Viki Shi:

回复 user1388075:

断开后搜索不到,该设备断开后有在广播吗?

user1388075:

回复 Viki Shi:

程序中是有的。

顺便问下怎样获取bios系统的系统计数器值 类似GetTickCount 这种

Viki Shi:

回复 user1388075:

程序中有不代表真的在广播,用其他工具【比如BLE scanner】看看能不能搜到

Timer_getCount()

user1388075:

回复 Viki Shi:

那就是没有了,因为手机app搜不到蓝牙设备了。
蓝牙任务中的周期性执行函数所占用CPU的时间最大为多少。

Viki Shi:

回复 user1388075:

上面已说明,跟你的连接参数设置有关,不能超过你设置的值Connection interval,Slave latency,Supervisor timeout自己去估算下

user1388075:

回复 Viki Shi:

如果超过,就会造成手机搜不到该蓝牙设备的情况是吧

user1388075:

回复 Viki Shi:

这是我参数:
// Fast advertising interval in 625us units.
#define DEFAULT_FAST_ADV_INTERVAL32

// Duration of fast advertising duration in ms.
#define DEFAULT_FAST_ADV_DURATION30000

// Slow advertising interval in 625us units.
#define DEFAULT_SLOW_ADV_INTERVAL1600

// Slow advertising duration in ms (set to 0 for continuous advertising).
#define DEFAULT_SLOW_ADV_DURATION0

// How often to perform heart rate periodic event.
#define DEFAULT_HEARTRATE_PERIOD20//8//8//MS

// Whether to enable automatic parameter update request when a connection is
// formed.
#define DEFAULT_ENABLE_UPDATE_REQUESTGAPROLE_LINK_PARAM_UPDATE_WAIT_BOTH_PARAMS

// Minimum connection interval (units of 1.25ms) if automatic parameter update
// request is enabled.
#define DEFAULT_DESIRED_MIN_CONN_INTERVAL200

// Maximum connection interval (units of 1.25ms) if automatic parameter update
// request is enabled.
#define DEFAULT_DESIRED_MAX_CONN_INTERVAL1600

// Slave latency to use if automatic parameter update request is enabled.
#define DEFAULT_DESIRED_SLAVE_LATENCY1

// Supervision timeout value (units of 10ms) if automatic parameter update
// request is enabled.
#define DEFAULT_DESIRED_CONN_TIMEOUT1000

// Battery level is critical when it is less than this %
#define DEFAULT_BATT_CRITICAL_LEVEL6

赞(0)
未经允许不得转载:TI中文支持网 » CC2650 软件定时器中,周期性执行的 period里面的具体执行函数的运行时间一般不能够超过多少
分享到: 更多 (0)