微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > CC2540与手机蓝牙连接时如何进行确认连接的

CC2540与手机蓝牙连接时如何进行确认连接的

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

需求: CC2540处于广播等待连接状态,手机打开蓝牙来连接2540时, 需要通过2540上的按键按下后,再与手机蓝牙连接, 不按或者按其他按键不响应手机蓝牙连接请求。 

问题: CC2540 协议栈里面是什么地方确认与外部主蓝牙设备连接的?  如何做到按键控制主设备的连接请求?

BLE-STACK中的keyforb就是这个例子,按下按键,才处于advertisement 状态,才能被发现被连接。

主要是GAPRole_SetParameter( GAPROLE_ADVERT_ENABLED, sizeof( uint8 ), &new_adv_enabled_status )来控制。


// if device is not in a connection, pressing the right key should toggle
// advertising on and off
if( gapProfileState != GAPROLE_CONNECTED )
{
uint8 current_adv_enabled_status;
uint8 new_adv_enabled_status;

//Find the current GAP advertisement status
GAPRole_GetParameter( GAPROLE_ADVERT_ENABLED, &current_adv_enabled_status );

if( current_adv_enabled_status == FALSE )
{
new_adv_enabled_status = TRUE;
}
else
{
new_adv_enabled_status = FALSE;
}

//change the GAP advertisement status to opposite of current status
GAPRole_SetParameter( GAPROLE_ADVERT_ENABLED, sizeof( uint8 ), &new_adv_enabled_status );
}

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

网站地图

Top