CC2640R2F BLE5.0 CC2640R2F软件架构

公司主页 文档归类 淘宝

软件架构

开发模型

下图展示CC2640R2F支持的两种开发模型,本文讲解都集中在图一,也就是整个ble协议栈和应用都工作在一个CC2640R2F的单SOC解决方案。

图4. 单设备处理器和简单网络处理器配置

  • 单一设备:Controller、Host、Profile、应用程序都在CC2640R2F上实现,作为真正意义的单芯片解决方案。这种模型是使用CC2640R2F时最简单和最常见的。TI的大部分示例项目都使用此模型。这种模型是最具成本效益,并提供最低功耗的性能。

  • 简单网络处理器:简单网络处理器(SNP)实现了BLE5-Stack的Controller和Host。此外,SNP公开了一种用于调度协议栈和外部MCU之间的通信的接口。这样的设计促进了双MCU实现,因为应用处理器(AP)只负责管理自定义配置文件和应用程序代码。协议栈相关功能(如安全性)都在SNP上实现。SNP目前支持外设和广播设备的GAPRole。通过SNP API与SNP进行通信。SNP API是基于统一网络处理器接口(UNPI)的,支持UART和SPI传输层。了解更多信息, 请参考Unified Network Processor Interface wiki页面。TI还提供了SAP库,它实现了一个UNPI主数据库和SNP API。SAP库可以移植到任何支持TI-RTOS的处理器,也可以作为开发定制双MCU解决方案的参考。有关SNP的描述,请参阅simple_np文件夹中的README.html页面,高级用户可以阅读SNP API Reference,了解支持命令的概要。

SDK 平台

CC2640R2 BLE5.0 开发环境搭建我们详细讲解了SDK的下载、安装。整个SDK包含了我们蓝牙协议、CC2640R2F外设、TI-RTOS环境、编译链接组件等一系列软件工具集,如下图:

图5. 低功耗蓝牙协议栈开发系统

其中:

  • TI的实时操作系统(TI-RTOS),包含TI-RTOS的内核,优化的电源管理和外设驱动程序(SPI,UART等)
  • CC26xxware DriverLib提供了一个寄存器抽象层,由软件和驱动程序用来控制CC2640R2F SoC。
  • Bluetooth low energy protocol stack将CC2640R2F ROM中协议栈以库的形式提供。
  • Sample applications and profiles方便各种解决方案开始开发。

BLE软件架构

CC2640R2F低功耗蓝牙软件环境由以下部分组成:

  • 具有TI-RTOS内核,驱动程序和蓝牙配置文件的应用程序镜像
  • 实现低功耗蓝牙协议的协议栈镜像或库

TI-RTOS是一个实时的,抢占型的多线程操作系统,利用任务同步运行程序。应用程序和低功耗蓝牙协议栈在RTOS中都作为单独的任务实现。低功耗蓝牙协议栈任务具有最高优先级。ICALL的消息传递机制用于应用程序和协议栈之间的消息交互。
图6. 软件架构示例

  • 协议栈镜像包括低功耗蓝牙协议栈的底层,从LL到GAP和GATT层。协议栈虽然可以作为单独的项目镜像提供,但大多数情况下低功耗蓝牙协议栈都以库的形式提供给应用程序链接使用。
  • 应用程序镜像包括RTOS,配置文件,应用程序代码,驱动程序和ICall模块。

目录结构

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值