蓝牙4.0入门(2)开始程序编写(三)BLE的编写

2.3.BLE的编写

  蓝牙程序的编写主要是作为从机s110,和主机s120以及主从机s130。都是需要先下载。教程可参见hex下载教程。

主要参考的资料:n36 (里面详细阐述了第一个ble程序,入门必看的)

                S110以及s120的程序

                Nrf51 sdk

                去官网找问题的答案:https://devzone.nordicsemi.com/question

学习方法:如果以前接触过无线通信的单片机应用理解比较容易,没接触过可以先从整体把握,先不要拘泥于一些细节问题。看观察下方框图,从整体了解,慢慢接触。

学习的话,可以先从ble_app_template,这个例程是一个模板。

                     从机方框图


从机下载前先下s110协议栈,结合程序和方框图分析:从机经过初始化后,就会进入sd_app_evt_wait();但出现event时进入event处理,在ble stack event,即on_ble_evt(ble_evt_t * p_ble_evt)里。一般肯定有处理的中断connected,disconnected,timeout。具体还包含哪些中断可以直接看ble_gap.h。当需要获取rssi时,需要现在connected里开启sd_ble_gap_rssi_start(m_conn_handle);

然后新增event  BLE_GAP_EVT_RSSI_CHANGED:  当rssi发送变化时即进入event处理.


主机方框图


主机下载前先下s120协议栈,结合程序和方框图分析:主机经过初始化后,就会进入sd_app_evt_wait(); 至少有三个event入口。一个硬件连接,一个数据连接,一个客户端连接。

对于rssi的获取,s120目前只有在连接前扫描阶段可以获取,其他时间不行。可参见下面的描述。

https://devzone.nordicsemi.com/question/6975/sd120-central-device-rssi-problem/

 

数据接收:client_handling_ble_evt_handler(ble_evt_t* p_ble_evt)的BLE_GATTC_EVT_HVX:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值