BLE模块的几种设计

从功能看吧

1.串口一体化
串口一体化的,相当于将host层和controller层都固化好之后,直接使用AT指令。
相当于一个虚拟化的串口一样,原理上设计两个GATT任务来实现串口的收发。
	比如自己使用过的 汇承的HC-08,用着很爽。
2.controller层固化,host层可编程
一般的芯片都是controller固化,然后通过host层利用HCI命令进行控制。
	比如自己使用的esp32
3.controller与host层都可编程
这个的自由性就很大了,比如nrf52832,这样就相当于一个2.4g模块啦。。。。

从架构看吧

1.Host + controller 双芯片的架构
典型的就是手机,通俗 跑在两个芯片上,且遵循蓝牙协议。下面抄的一堆。其他的也可
以这种方式,比如usb蓝牙模块或者说电脑本身就是。





这个标准把蓝牙协议栈分成host和controller两部分,其中host跑在AP上,controller
跑在蓝牙模块上,两者之间通过HCI协议进行通信,而且host具体包含协议栈那些部
分,controller具体包含协议栈那些部分,两者之间通信的HCI协议如何定义,这些在
蓝牙核心规格中都有详细定义,因此我把它称为双芯片标准方案。只要遵循这套标准
,用户就可以随意替换Host或者Controller方案。
当然,这种方案除了可以应用在手机中,也可以应用在任何其他设备中。AP芯片厂商
一般会直接采用Bluez等开源协议栈来实现Host功能,而Controller部分大部分由蓝牙厂
商自己来实现。
目前比较火的Zephyr开源蓝牙协议栈也支持这种架构。Zephyr最初是风河系统公司在
2015年11月推出的为(IoT)设备开发的“Rocket内核”

在这里插入图片描述

2.单芯片整体方案
就是所有的跑在一个芯片上。host和controller两个在一个上呗。
手机周边蓝牙设备是蓝牙另外一个非常重要的应用场合,通常手机周边设备功能比
较简单,但对成本非常敏感,因此采用一颗芯片来实现整个蓝牙协议栈就是非常明
智的选择,即把蓝牙协议栈所有功能都放在一颗芯片上

在这里插入图片描述

3.自定义双芯片架构,一般来说都是蓝牙的设备
主与从之间通过私有的协议,不一定遵循蓝牙协议

这种方案也非常常见,可以说,除了架构1和架构2之外的架构,都可以称为架构3。架
构3里面有一种非常特殊的情况,即主MCU和蓝牙SoC之间采用了HCI接口进行通信,
由于这里的HCI只是用来进行物理通信,而通信的主体不是host和controller,通信包
应用数据也不遵循蓝牙核心规格规范,因此不能把它看成第1种架构

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值