CC2540 需要更改从机广播时间间距为1分钟一次,怎么更改呢?
从从机simpleBLEPeripheral.c文件中DEFAULT_ADVERTISING_INTERVAL这个宏定义了广播时间间隔,但是他是16位的无符号整数,最大65535,如果我要定义一分钟广播一次的话DEFAULT_ADVERTISING_INTERVAL需要96000,明显超过了范围,
但是我发现一个问题用packet sniffer软件抓包发现只要DEFAULT_ADVERTISING_INTERVAL为32000,抓包软件就不能没20s抓包一次,但是DEFAULT_ADVERTISING_INTERVAL为16000时候,抓包软件是可以10s抓包一次的,并且可以在packet list上看到。
你把uint16 advInt = DEFAULT_ADVERTISING_INTERVAL;改成uint32可以么?
这倒没有遇到过,用专业的抓包工具试试呢?
GU:
你这个想法很犀利,直接指出了问题重点所在,可谓高之又高!
不过,请TI的人先把 extern bStatus_t GAP_SetParamValue( gapParamIDs_t paramID, uint16 paramValue );这个函数的源码放出来,谢谢!
mark_xu,
恕不能。不要为难我们holly 美女。
但是可以告诉你,本质上是调用HCI_LE_SetAdvParamCmd(), 在hci.h里面。
GU美女,I am sorry!
Yan,你好!
关于HCI的函数俺也看过,另外,俺也研究了蓝牙4.0的标准,在标准第1059页写的有关于广播间隔的内容,那个地方清楚的写了间隔的范围。如果楼主确实想按非标准来,俺也不拦您,俺只是提醒手机及其它蓝牙设备都是走的标准协议……
谢师傅!那这个一分钟的广播怎么搞?
Holly美女,你好!
首先,向你道歉:对不起!美好的一天,可能被俺的回复给弄糟!真是对不起!
其次,俺是菜鸟,俺真不知道怎么设置的,Yan高手,他或许知道怎么设置的。
哈哈,马克童鞋,不要这么客气,我也在学习。欢迎批评指导。请看协议,max advertising interval。
Yan 大神,我问了你好多问题,麻烦有时间看下菜鸟的问题