一、

CC2650芯片内部的结构框图如图,内部包含:

一个Cortex-M3主控制器,用来做整个芯片的功能与任务实现

一个Cortex-M0射频控制器,用来驱动RF相关电路

一个Sensor Controller,可以用来在主控制器睡眠时实现传感器数据的采集,以降低系统整体功耗。

【蓝牙数据采集模块】-01-Sensor Controller 功能介绍

由图中我们可以看到,Sensor Controller可以直接控制的模块包括:

1.模拟量采集,2.比较器,3.SPI和I2C接口,4.恒流源,5.定时器,6.2KB SRAM

不仅如此,Sensor Controller还能够访问主控制器的一些外设:

1.UART串口,2.GPIO,

总的来说,CC2650STK中使用到的CC2650RGZ芯片,可以通过Sensor Controller去控制整个芯片当中的16个引脚,其中有8个引脚可以用作模拟量采集。

二、

虽说这个Sensor Controller看起来很厉害,但是用它开发起来还是有一些麻烦的。

1.需要使用专用的开发软件Sensor Controller Studio去进行程序开发;

2.功能调试完毕后需要将软件生成的驱动接口加入CC2650的CCS工程当中;

3.需要协调两者如何去进行数据交互,让主控制器去轮询或者传感器控制器去触发中断。

不管这些了,先看一看Sensor Controller Studio这个软件吧。软件的界面如下。

【蓝牙数据采集模块】-01-Sensor Controller 功能介绍

把右边的Start Page成为导航窗口吧,其中包括了四个项目,

1.工程:建立新工程,打开现有工程,最近的工程目录

2.例程:主要包括了SmartRF06EB和我用到的SensorTag两个板子的例子

3.工具的相关文档目录4.在线文档和资源

因为有现成的例子,咱们直接打开SensorTag的I2C Light Sensor这个例子来介绍这个软件的使用。

双击I2C Light Sensor这个例程,会弹出下面一个窗口

【蓝牙数据采集模块】-01-Sensor Controller 功能介绍

凡是后面带有...按钮的都是可以修改的选项,

第一个是选择一个目录保存该工程,

再下来有一个TI-RTOS releas的选项,因为我之后在CCS中要用2.13进行开发,这里也就选了2.13,

对应的,下面在Overrides中有很多选项,都选择tirtos_simplelink_2_13_00_06版本和xdctools_3_31_01_33_core,至于选别的会不会影响最后的程序调用,我也不清楚,第一次还是不要乱搞了的好

点击OK,直接跳转到了这个工程的配置目录,下图。所有的保持默认即可。

【蓝牙数据采集模块】-01-Sensor Controller 功能介绍

在最下边有一栏叫做Sensor Controller Tasks,可以用来在这个工程中创建新的任务。毕竟这个还是个带操作系统的协处理器,就是高端,还能配置任务。

在左边点击“-”号旁边的目录(这个就是咱们这个工程的第一个Task),可以看到下面的界面。在这个界面当中可以配置该工程使用到的模块,需要哪个,点勾就可以了。其中一些模块还能进行参数配置,这个需要自己慢慢琢磨研究了。当选了一个模块后,这个模块对应的一些宏定义,驱动函数接口,就会自动加入到工程中去了。

【蓝牙数据采集模块】-01-Sensor Controller 功能介绍

在左侧窗口中再往下看,可以看到这个任务重包含了四部分的代码,软件直接定义好了。有初始化代码,执行代码,事件处理代码,结束代码。故名思意,它们的名称就是它们要做的事情。这里就不详细的说了。

直接看Execution Code 和 Event Handler Code的代码。

Execution Code:

 1 // Configure and start the next measurement
 2 i2cStart();
 3 i2cTx(I2C_OP_WRITE | ALS_I2C_ADDR);
 4 i2cTx(ALS_REG_CFG);
 5 i2cTx(ALS_CFG_ONE_SHOT >> 8);
 6 i2cTx(ALS_CFG_ONE_SHOT >> 0);
 7 i2cStop();
 8 
 9 // Read the result after 100 milliseconds + a 20% margin
10 evhSetupTimerTrigger(0, 120, 2);
11 
12 // Schedule the next execution
13 fwScheduleTask(1);
View Code

相关文章:

  • 2021-06-08
  • 2021-07-14
  • 2022-01-09
  • 2021-07-07
  • 2021-09-11
  • 2022-12-23
  • 2021-09-09
  • 2021-12-19
猜你喜欢
  • 2021-12-22
  • 2021-08-10
  • 2021-06-12
  • 2022-12-23
  • 2021-09-23
  • 2021-12-18
相关资源
相似解决方案