微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 利用 cc2540 1.4 發送 iBeacon 封包

利用 cc2540 1.4 發送 iBeacon 封包

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

TI 你好

目前客戶有一個應用,就是將 sensor 的資料透過客戶那邊的 MCU 再透過 I2C 介面將資料傳到 BLE module ,再把資料以iBeacon  broacast 出去,broadcast 完之後會需要進入PM3 sleep,等有需要再做喚醒 。

因為 cc2540 沒有 I2C 介面,所以要用軟體去模擬 slave 行為。這方面支援的廠商已經再進行。我這邊做的動作是要把 I2C get 到的資料轉成 iBeacon 封包格式。

目前搜尋各帖子得到的結果,可以透過 adverData[] 修改,並將它以 iBeacon 發送出去。 BLE modlue 只做 broadcast 動作,所以使用 SimpleBLEBroadcast project。

但現在案子很趕,對於它的運作方式或者可能要修改到的沒有一個底,所以想來問一問....

1 SimpleBLEBroadcast 如果沒去改它,是不是會自己進入 PM3 mode? 如果要做外部喚醒,應該會有個機制,但這個機制是啥? 是 I2C get 的資料有變動?

2 要如何做到動態更新 adverData  ,在 1.4 中, GAPRole_SetParameter function 中已經有 GAP_UpdateAdvertisingData 了,所以我只要在  GAPRole_SetParameter 之前,修改 adverData 裡面的值就好了嗎? 

尋求意見,萬分感激

1.原始代码应该是一直broadcast的,所以不会进入PM3。进入的条件是没有广播,没有连接,没有其他周期工作的事件。进入PM3必须通过外部中断唤醒

2. 修改应该在开始广播之前,如果已经在广播中了调用应该不起效

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

网站地图

Top