微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 蓝牙主机连接问题

蓝牙主机连接问题

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

你好:

有几个问题需要请教下:

1、主机怎么能搜到从机的广播数据,并且获得从机广播数据以及从机地址

2、主机的使能通知和从机消息接收是如下程序么?

使能通知

uint8 ValueBuf[2];
gattPrepareWriteReq_t req;

req.handle = 0x0039;
req.len = 2;
ValueBuf[0] = 0x01;
ValueBuf[1] = 0x00;
req.offset = 0;
req.pValue = osal_msg_allocate(2);
osal_memcpy(req.pValue,ValueBuf,2);
GATT_WriteLongCharValue( simpleBLEConnHandle, &req, simpleBLETaskId );

HalUARTWrite(0,"enable notic\n",10 );
return(events ^ ENABLE_NOTICE_EVT );

从机通知消息接收

else if ( ( pMsg->method == ATT_HANDLE_VALUE_NOTI ) ) //通知
{
if( pMsg->msg.handleValueNoti.handle == 0x0038) //CHAR7的通知
{
HalUARTWrite(0,"NOTICE\n",7 );
uint8 i=0;
///////////////////////////////////////////////////////////////////////
if(pMsg->msg.handleValueNoti.value[0] == '*' &&
pMsg->msg.handleValueNoti.value[1] == '0' &&
pMsg->msg.handleValueNoti.value[2] == '0'
)
{
i++;

3、再有就是我的主从机直接可以连接,但是不能通信,请问是什么原因

yongcai,

1. 搜索GAP_DEVICE_INFO_EVENT, 就在这个case下面得到这些信息。

2. 是的。但是你GATT_WriteLongCharValue() 就不对了。关键部分类似下面:

req.sig = 0;
req.cmd = 0;

status = GATT_WriteCharValue(自己填参数);

3. 如2, 再不行再检查一下代码,再不行就空中抓包。

上一篇:添加特征值
下一篇:cc254x rssi

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

网站地图

Top