大家好,我用的是从机的程序。
其中我是这样配置的,协议栈用的是1.4.0的
#define DEFAULT_DISCOVERABLE_MODE GAP_ADTYPE_FLAGS_GENERAL
uint16 gapRole_AdvertOffTime = 0;
GAPRole_SetParameter( GAPROLE_ADVERT_OFF_TIME, sizeof( uint16 ), &gapRole_AdvertOffTime );
为什么模块会不定时的停止广播?这里先谢过各位大牛的指点了。
da qin zheng sheng:
回复 Susan Yang:
学习了。
user4586837:
回复 Susan Yang:
谢谢 Susan Yang ,我试一下
user4586837:
回复 Susan Yang:
多谢指导,我是想有广播间隔,但是不是广播一段时间后就停止广播的
Susan Yang:
回复 user4586837:
那您可以先设置你每次的广播时间,TGAP_GEN_DISC_ADV_MIN = 10000。GAP_SetParamValue(TGAP_GEN_DISC_ADV_MIN,10000)。
然后再设置关闭广播的持续时间,如20秒:
gapRole_AdvertOffTime = 20000。
GAPRole_SetParameter( GAPROLE_ADVERT_OFF_TIME, sizeof( uint16 ), &gapRole_AdvertOffTime );
user4586837:
回复 Susan Yang:
Susan Yang 谢谢你耐心的解答。
我还有一个问题想问您一下,在从机程序中有这样一段说明
// Set advertising interval { uint16 advInt = DEFAULT_ADVERTISING_INTERVAL;
GAP_SetParamValue( TGAP_LIM_DISC_ADV_INT_MIN, advInt ); GAP_SetParamValue( TGAP_LIM_DISC_ADV_INT_MAX, advInt ); GAP_SetParamValue( TGAP_GEN_DISC_ADV_INT_MIN, advInt ); GAP_SetParamValue( TGAP_GEN_DISC_ADV_INT_MAX, advInt ); }
这不是修改广播间隔吗?
TGAP_GEN_DISC_ADV_MIN 和 TGAP_GEN_DISC_ADV_INT_MIN两者有什么关系。
或者说我要周期性广播按您上面说的方法没错可以。
是不是这样修改也可以
1. // What is the advertising interval when device is discoverable (units of 625us, 160=100ms) #define DEFAULT_ADVERTISING_INTERVAL 160
2. #define DEFAULT_DISCOVERABLE_MODE GAP_ADTYPE_FLAGS_GENERAL
3.
// Set advertising interval { uint16 advInt = DEFAULT_ADVERTISING_INTERVAL;
GAP_SetParamValue( TGAP_LIM_DISC_ADV_INT_MIN, advInt ); GAP_SetParamValue( TGAP_LIM_DISC_ADV_INT_MAX, advInt ); GAP_SetParamValue( TGAP_GEN_DISC_ADV_INT_MIN, advInt ); GAP_SetParamValue( TGAP_GEN_DISC_ADV_INT_MAX, advInt ); }
这样是不是可以无限广播且广播间隔为100ms
keyfob有这样一段解释
// Use limited discoverable mode to advertise for 30.72s, and then stop, or// use general discoverable mode to advertise indefinitely#define DEFAULT_DISCOVERABLE_MODE GAP_ADTYPE_FLAGS_LIMITED//#define DEFAULT_DISCOVERABLE_MODE GAP_ADTYPE_FLAGS_GENERAL
user4586837:
回复 user4312984:
谢谢 bo lai