【CC2640】CC2640架构及原理

CC2640和CC2640R2F的区别是什么?

CC2640CC2640R2F是低功耗蓝牙SOC的解决方案,两颗芯片的基本架构和工作原理相同,实现的功能略有不同。

CC2640芯片组成?

  • 主MCU(Main CPU):
    MCU是一颗ARM Cortex-M3的处理器,主要运行的是客户的应用程序,同时也包含TIRTOS和底层的驱动。

  • RF射频部分(RF Core):
    射频核,是一个不开放的M0,专门控制射频操作,这部分的操作控制主要由BLE协议栈来完成,BLE产品的开发一般都是在App操作,可以完全不需要关心这部分的操作。

  • 传感器控制器(Sensor Control Engine):
    Sensor Control EngineSCE,是CC2640CC2640R2F区别其他TI BLE SOC一个特有的部分,是一个16位的MCU,独立主MCU Cortex-M3和射频核M0工作,可以在系统其他部分都关掉的情况下,独立实现对外部传感器的采集,从而保持整个系统运行的低功耗。

  • 外设(Peripherals)
    外设接口,则包含了GPIO,Timers(定器),UART/SPI,I2C,I2S,DMA,硬件的AES加密。

CC2640系统是如何工作达到低功耗的?

  • 首先可以看到,当整个系统处于Standby模式的时候,系统RTC和RAM还在保持,这时候功耗是1个微安,如果在ShutDown模式,也就是系统RTCRAM不在保持的状态下,整个系统的功耗则是小于0.15微安;
  • 然后当主MCU进入到工作状态的时候,系统功耗大约为3个毫安,而且由于是M3的内容,BLE协议栈和应用程序的处理速度是非常功耗的,在有BLE事件需要处理的时候M3快速处理完成,整个系统又可以切换到低功耗状态;
  • 当需要有射频收发的时候,RF核才打开工作,TX/RX过程大概是6个毫安,同样的当发送和接受处理完成之后,RF核又处于关闭状态;
  • 通过使用SEC可以控制外部传感器的数据采集,在系统的采集的整个过程中,系统的其他部分都可以保持关闭,这时候整个系统的平均功耗可以达到微安级别。

对使用Sensor Control Engine的介绍

Sensor Control Engine 是一个16位的RSICMCU,有自己独立2K的SRAM,可以独立于主MCU Cortex M3工作,因此可以帮助M3继续采集传感器的数据,从而达到整个系统的低功耗运作。通过整个模块我们可以操作各式各样的传感器,例如,运动检测器、电容式触摸按键、加速度传感器,ADC采样等,另外,当你的系统需要多个串口的时候,也可以通过Sensor Control Engine实现除外设之外的多一个串口,Sensor Control Engine 独立主MCU编程,因此就引出了我们另外的一个工具:Sensor Control Studio

如何对Sensor Control Engine进行编程?

Sensor Contro Studio简称SCS,是一个集成了外部编译环境和调试环境的开发工具。它包含了一个直观的人机操作界面和内键的应用程序实例。使用这个工具的开发可以总结为三个步骤:

  • 参考工具已经提供的多种对不同外设操控的例程,使用类C语言在工具中编程,完成任务的初始化、执行和结束,这个任务运行在SensorControlEngine自己独立的内存找那个。

  • 在工具的测试界面,测试和调试自己的编程任务执行。(如果任务正确执行,就可以执行第三步)

  • 导出代码,并把代码整合应用应用到主工程应用程序中去。

Sensor Control Engine进行编程详细每一步的步骤?

  • Sensor Contro Studio的主界面,我们可以选择适合自己应用的例程打开,并基于整个例程修改自己的应用,一个工程最多可以包含8个Task,每个Task都由初始化代码、执行代码和终止代码组成这些代码部分可以使用类C语言进行编程,可以调用的系统接口全部列表显示在屏幕的右下角,可以参考工具的内键文档,了解每个接口的函数说明。如果需要配置使用到的PIN脚定义可以进入IO Mapping进行配置。在完成Task的编程之后,可以进入Task Testing模块对Task运行进行调试。调试模式多种多样,例如:单步调试、设置断点调试等等,这个工具都可以支持。单个任务以一个预先定义好的间隔时间来工作,如果工程中有多个任务,则可以对每个任务设置自己的间隔时间。当我完成了对SensorControl的编程之后,进入Code Generate模块。

  • 进入Generate Code模块,点击Generate Driver Source Code,即可导出程序的映像以及基于TIRTOS的相关驱动,Sensor Control Engine程序的映像即固件,实际上是一段二进制的数组,将数组和连同一起导出的驱动整合到主CPU的应用程序中去即可完成对Sensor Control Engine的操控。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值