首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过hci_read_rssi()轮询RSSI的正确方式

通过hci_read_rssi()轮询RSSI的正确方式
EN

Stack Overflow用户
提问于 2012-09-25 07:47:00
回答 1查看 1.3K关注 0票数 2

我正在尝试定期轮询两个设备(一个Android手机和一个芯片)之间的蓝牙连接的RSSI值。

我使用NDK访问要使用的BlueZ库。

代码语言:javascript
复制
hci_read_rssi(int dd, uint16_t handle, int8_t *rssi, int to)

问题是我不知道如何使用它来传递正确的参数。使用函数的正确方式是什么?

EN

回答 1

Stack Overflow用户

发布于 2013-10-25 04:00:34

对于您来说,这可能是不同的,但是在Bluetopia堆栈中,在我的GAP_LE_Event_Callback函数中,当我收到一个Connection_Complete (即间隙连接)时,我会这样做

代码语言:javascript
复制
     case etLE_Connection_Complete:
        ... 
        Word_t Connection_Handle;
        if ( GAP_LE_Query_Connection_Handle(BluetoothStackID, x->Peer_Address,
              &Connection_Handle) == 0) {

            Word_t Connection_HandleResult;
            SByte_t RSSIResult;
            Byte_t StatusResult;

            if (HCI_Read_RSSI(BluetoothStackID,Connection_Handle, &StatusResult,
                &Connection_HandleResult, &RSSIResult) == 0) {
                Display(("RSSI: %x %x %d\r\n",StatusResult,
                       Connection_HandleResult,RSSIResult));

如果这不起作用,那么您需要通过调用HCI_LE_Create_Connection手动创建一个具有新连接的ConnectionHandle

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12574469

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档