CC2650之射频(上)
Loading the player...
将在30s后自动为您播放下一课程
大家好 今天呢我们来一起看看 TI CC2650 这个芯片 它的射频相关的一些内容 我们按照这个次序 来对今天的这个视频进行讲解 首先我们来看一看 RF 内核的一些情况 然后来看一看硬件抽象层的一些情况 最后后面是协议相关的一些情况 最后我们用 contiki 的示例 来结束本次视频 CC2650 它里面集成有一颗 Cortex-M0 控制的 2.4G 射频收发控制器 这颗控制器 可以支持低功耗蓝牙 BLE IEEE 802.15.4 和专用协议这三种应用 radio 子系统接口 通过接受命令的形式 在 MCU 和 Radio 之间进行消息的传递 消息可以包括命令状态数据事件等等 我们这里所关注的 802.15.4 呢 就是 ZigBee 和 6loWPAN 的底层物理标准 这个射频子系统呢 由 Cortex-M0 控制器 调制器频率综合器 RF接口 内外的一些总线桥 外部的射频驱动 内部的专用 SRAM 还有一些片上的一些驱动库 还有它的安全系统 接口 这些所构成 我们可以看看它的一个整体的框图 这边呢就是我们的系统 MCU 包括它的 Flash 系统的 RAM 还有它的安全接口 我们是挂载在一个总线上面 这个总线呢 通过我们的总线桥 可以跟 RF core 这里面进行一些相关的操作 这个 RF core 呢 里面包括一个 Cortex-M0 包括一些频率相关的一些组件 包括一个外部的 radio 的这样一个接口 在系统的 MCU 呢这一部分系统的 MCU 我们是可以运行 flash 中的代码 也可以在他的boot rom 里面去运行 driverlib 的一些代码 我们也可以运行用户层的一些应用 这个 MCU 呢它还要运行无线的一些协议栈 包括 ZigBee 的协议栈 6loWPAN 协议栈等等 比如说 BLE 低功耗蓝牙的协议栈等等 我们还需要在系统 MCU 里面呢 保持各种协议栈和应用的一些配置 并且处理一些协议栈中上层 MAC 的一些特性 系统 MCU 就是在这一头 系统的 RAM 20KB 的这样一个系统 RAM 它里面存放的是数据报负载 也就是TX和RX的包 还有各种的配置参数 安全子系统的 我们是可以直接被 RF core 来使用的 它呢主要提供验证和授权的这样一个功能 DMA 这一块 DMA它是一个主设备 BUS Master 主设备 它可以在 RF core 专用的 4K SRAM 和 MCU SRAM 之间进行数据的搬运 我们也可以看到在 RF 这一侧 RF core 这一侧 它里面有 RF 的 MCU 这一块 M0 的 MCU 它是接收来自 系统 MCU 的命令 调度这些命令实际的运行 他还有一个调制频率综合器 和 RF 接口就是这一块 它是在 bit 信息与调制信号之间 相互转换的这样一个外设 一个机构 RF 内核接收来自 MCU 的命令 验证并且执行这些命令 这些命令包括了发送接收这些面向应用的命令 也包括校准测试调试等等面向环境维护的命令 也包括校准测试调试等等面向环境维护的命令 RF 内核从系统 RAM 或者是 RF 专用 RAM 中 取得数据和配置参数 共享内存是 RF 内核与系统 MCU 的信息交互手段 这样的手段呢 可以减小 RF 内核自身对存储的需求 同时呢 MCU 和 RF 内核之间 避免了不必要的传输操作 从总体上面减小功耗 RF 内核收到数据报之后 对数据报进行解码 附带上它的一些状态信息 一起存储在系统 RAM 中 RF 内核可以使用 MCU 中的一个安全子系统 RF 内核呢也识别来自系统 MCU 的复杂指令 比如说 CCA 传输 RX 自动应答等等 这些呢在 802.15.4 里面有一些专门的论述 大家有兴趣的话可以去看一看 RF 内核内部将这些指令分解成子命令 然后自动的执行 这个当中我们是不需要有系统 MCU 的干涉的 Radio doorbell 是内核的一个模块 直译是门铃的意思 其实它就是一套命令系统 就比如说我们 MCU 里面的 event fabric 就是前面我们讲的一个路由 其实也就是消息路由这个东西 所以说名字很不知道什么意思 但是我们也能够知道他其实就是一个命令系统 这套命令系统 也叫做 CPE Command and Packet Engine CPE 这是一个简写 他负责在系统 MCU 和 RFMCU 之间传递信息 CPE 在 MCU 空间当中可以用 RFC_DBELL 这个寄存器进行访问 doorbell 呢他是有访问寄存器 参数和数据的一些 RAM 不管是在系统里面 还是在 RF 这个系统里面 一些数据和参数 还有它的一些中断的情况 RAM 呢数据和参数都是放在 RAM 当中 既可以是 SYS 也就是系统的RAM系统 MCU 的 RAM 也可以是RF自己的专用 RAM 如果这个信息是放在系统的 RAM 当中的话呢 系统 MCU 是不可以关闭电源的 因为关了的话这个信息就没有了 如果信息是存放在 RF 自己的 RAM 当中的话 系统 MCU 是可以切断电源降低功耗的 这个时候他的所有信息 都是保存在 RF 自己的 RAM 当中 具体上来说呢 我们 RF MCU 从 RAM 中读取数据和参数 这个具体的操作我们可以在后面的 contiki 的实际应用当中看到 然后操作这些 RF 不管是调制也好 还是解调也好 更新 RAM 当中的数据和参数 根据状态发出我们的中断 中断它只分了四个 有 CPE 0 1 hardware 中断 和 CMD_ACK 应答中断 这些中断呢 在我们的手册里面 都有一个详细的一个说明 这里面就不仔细说 可以查看在 interrupt 这里 使用上呢 每一个中断都基本上 和 Cortex 本身的使用没有太大的区别 只是说中断源是从 RF core 里面出来的 我们需要在 MCU system MCU里面 抓住这些中断的一些钩子 然后来执行它 RF core 它这个里面呢 还包括了一个自由的时钟 自由运行的时钟 这个时钟呢 是以四兆赫兹的固定频率来运行的 它有八个比较和捕获的这样一个功能 八个通道其中五个呢被 RF内核使用 剩下三个是可以用户自己使用的 手册里面也有相关的一些描述 是在 radio timer 这个里面 这个时钟呢使用上面 和我们普通的时钟也基本上是类似的 大家可以有兴趣看一看 我们硬件抽象层呢它是由命令组成的 这个命令呢 它也同时包括 RAM 内存中的命令结构 也包括 ROM 当中可调用的一些函数 我们在 TI 官方的公开资料当中呢 也没有找到特别详细的一些描述 这个例子呢也没有特别好的例子 所以说我们也不得不查看 contiki 它的一种操作 命令分三种形式的命令 第一种是radio操作命令 第二种是立即操作命令 第三个是直接操作命令 这张图呢我们也可以看到 这个命令的具体的一些格式 pointer to command structure 这个里面告诉我们 这个命令是以 structure 的形式存在的 后面我们可以看到这个 structure 的 一些具体形式 这个命令的形式呢是 direct command 就是直接命令的一些操作形式 那么这三个命令之间有什么区别呢 我们可以看到 radio 命令 它的操作是和 RF 相关的 比如说初始化 RF TX RX 这些一些 BUFFER 协议相关的等等 大多数的这些 radio 操作命令呢 只能在 RF idle 也就是说不工作的这样一种状态下面发出命令 立即命令它是有关修改或者是设置 RF 状态 操作 RX TX队列等等这样一种操作 我们在任何时刻都可以发出立即命令 然而大多数立即命令的响应 都希望能够得到正在运行的 RF 内核的一些状态 还有就是我们的直接命令 直接命令 direct direct command 这个直接命令 它其实就是简单的没有参数 或者是一两个字节参数的立即命令 那我们可以看看这些命令的一些具体状态 这里是它的响应状态 响应状态的话 我们也是按照一个字 按照一个字节的形式 result 给出来 command status 32 的这样一个字段 但是最后的八位一个字节 我们是一个 result 就叫相当于是我们的状态 然后剩下的三个字节 就是我们的一个返回的字节 我们可以在这个列表里面查看到一些 result 和一些 return byte 的一些东西 这个在手册上面也有 我们的命令和数据呢 可以有三种形式的访问 两种形式的访问 两种形式访问 第一种形式是直接访问 就是说我们在我们的数据结构里面 直接把它填充进去 第二种形式是单链表形式的这样一个访问 我们在我们的命令字段 命令数据结构里面 有相应的链表图指向下一个命令 和我们下一个下一个命令 比如说我们把所有的命令 通过一个单链表的形式把它串起来 这样的话我们在 RF core 里面 可以自动的按照一个命令 chain 命令链表的形式来执行每一个命令 我们每一个命令呢 还可以有它自己的触发条件 每一个触发条件呢 有一些它的一些触发的触发源 触发的一些标准 触发的判断等等这些我们在手册里面的 这个这里面也能够有一个比较好的描述 包括他的 trigger never 永远不触发等等 随着 2650 这颗芯片当中的 系统 MCU 和我们的 RF MCU之间 是通过 SRAM 进行了一个共享内存 这种形式的信息交互 所以说我们呢 需要有一些命令的一些列表 这个东西我们可以在手册上面 看的比较仔细一些 包括协议无关的一些操作 包括 NOP Radio 的建立 频率的一些东西 包括我们的 RX 其他的一些测试等等 也包括跟协议相关的一些命令 比如说我们的 Command IEEE 读取信号的一些 SCAN 等等 这里面呢比较有意思的是 它是用的是两部分 一部分称之为命令的头部 也就是说所有命令 只要是 radio operation command 这个命令 它都必须要有的 这 14 个字节 一个是命令的体 命题体也就是说每一个命令 比如说这里的 command radio setup 有它自己的一个特殊的体 包括我们在这里看到的第 14 个字节 第 15 个字节 跟这里所显示的一共 14 个字节接起来之后 形成一个完整的 command radio setup 这样一个命令 command radio setup 这样一个命令 因为也就说我们这里 每一部分都是不完整的 但是他们需要合起来 那么它就是一个完整的这样一个命令 这种命令呢我们也可以在手册里面的 比如说 radio command setup 这里是第 15 个字节 那么我们前面的 这里就是我们的命令的头部 就是它的 radio operation command 一个公共的这样一个头部 接下来呢我们用一个 contiki 的一个 运行的一个演示 来结束本次的这样一个视频
大家好 今天呢我们来一起看看 TI CC2650 这个芯片 它的射频相关的一些内容 我们按照这个次序 来对今天的这个视频进行讲解 首先我们来看一看 RF 内核的一些情况 然后来看一看硬件抽象层的一些情况 最后后面是协议相关的一些情况 最后我们用 contiki 的示例 来结束本次视频 CC2650 它里面集成有一颗 Cortex-M0 控制的 2.4G 射频收发控制器 这颗控制器 可以支持低功耗蓝牙 BLE IEEE 802.15.4 和专用协议这三种应用 radio 子系统接口 通过接受命令的形式 在 MCU 和 Radio 之间进行消息的传递 消息可以包括命令状态数据事件等等 我们这里所关注的 802.15.4 呢 就是 ZigBee 和 6loWPAN 的底层物理标准 这个射频子系统呢 由 Cortex-M0 控制器 调制器频率综合器 RF接口 内外的一些总线桥 外部的射频驱动 内部的专用 SRAM 还有一些片上的一些驱动库 还有它的安全系统 接口 这些所构成 我们可以看看它的一个整体的框图 这边呢就是我们的系统 MCU 包括它的 Flash 系统的 RAM 还有它的安全接口 我们是挂载在一个总线上面 这个总线呢 通过我们的总线桥 可以跟 RF core 这里面进行一些相关的操作 这个 RF core 呢 里面包括一个 Cortex-M0 包括一些频率相关的一些组件 包括一个外部的 radio 的这样一个接口 在系统的 MCU 呢这一部分系统的 MCU 我们是可以运行 flash 中的代码 也可以在他的boot rom 里面去运行 driverlib 的一些代码 我们也可以运行用户层的一些应用 这个 MCU 呢它还要运行无线的一些协议栈 包括 ZigBee 的协议栈 6loWPAN 协议栈等等 比如说 BLE 低功耗蓝牙的协议栈等等 我们还需要在系统 MCU 里面呢 保持各种协议栈和应用的一些配置 并且处理一些协议栈中上层 MAC 的一些特性 系统 MCU 就是在这一头 系统的 RAM 20KB 的这样一个系统 RAM 它里面存放的是数据报负载 也就是TX和RX的包 还有各种的配置参数 安全子系统的 我们是可以直接被 RF core 来使用的 它呢主要提供验证和授权的这样一个功能 DMA 这一块 DMA它是一个主设备 BUS Master 主设备 它可以在 RF core 专用的 4K SRAM 和 MCU SRAM 之间进行数据的搬运 我们也可以看到在 RF 这一侧 RF core 这一侧 它里面有 RF 的 MCU 这一块 M0 的 MCU 它是接收来自 系统 MCU 的命令 调度这些命令实际的运行 他还有一个调制频率综合器 和 RF 接口就是这一块 它是在 bit 信息与调制信号之间 相互转换的这样一个外设 一个机构 RF 内核接收来自 MCU 的命令 验证并且执行这些命令 这些命令包括了发送接收这些面向应用的命令 也包括校准测试调试等等面向环境维护的命令 也包括校准测试调试等等面向环境维护的命令 RF 内核从系统 RAM 或者是 RF 专用 RAM 中 取得数据和配置参数 共享内存是 RF 内核与系统 MCU 的信息交互手段 这样的手段呢 可以减小 RF 内核自身对存储的需求 同时呢 MCU 和 RF 内核之间 避免了不必要的传输操作 从总体上面减小功耗 RF 内核收到数据报之后 对数据报进行解码 附带上它的一些状态信息 一起存储在系统 RAM 中 RF 内核可以使用 MCU 中的一个安全子系统 RF 内核呢也识别来自系统 MCU 的复杂指令 比如说 CCA 传输 RX 自动应答等等 这些呢在 802.15.4 里面有一些专门的论述 大家有兴趣的话可以去看一看 RF 内核内部将这些指令分解成子命令 然后自动的执行 这个当中我们是不需要有系统 MCU 的干涉的 Radio doorbell 是内核的一个模块 直译是门铃的意思 其实它就是一套命令系统 就比如说我们 MCU 里面的 event fabric 就是前面我们讲的一个路由 其实也就是消息路由这个东西 所以说名字很不知道什么意思 但是我们也能够知道他其实就是一个命令系统 这套命令系统 也叫做 CPE Command and Packet Engine CPE 这是一个简写 他负责在系统 MCU 和 RFMCU 之间传递信息 CPE 在 MCU 空间当中可以用 RFC_DBELL 这个寄存器进行访问 doorbell 呢他是有访问寄存器 参数和数据的一些 RAM 不管是在系统里面 还是在 RF 这个系统里面 一些数据和参数 还有它的一些中断的情况 RAM 呢数据和参数都是放在 RAM 当中 既可以是 SYS 也就是系统的RAM系统 MCU 的 RAM 也可以是RF自己的专用 RAM 如果这个信息是放在系统的 RAM 当中的话呢 系统 MCU 是不可以关闭电源的 因为关了的话这个信息就没有了 如果信息是存放在 RF 自己的 RAM 当中的话 系统 MCU 是可以切断电源降低功耗的 这个时候他的所有信息 都是保存在 RF 自己的 RAM 当中 具体上来说呢 我们 RF MCU 从 RAM 中读取数据和参数 这个具体的操作我们可以在后面的 contiki 的实际应用当中看到 然后操作这些 RF 不管是调制也好 还是解调也好 更新 RAM 当中的数据和参数 根据状态发出我们的中断 中断它只分了四个 有 CPE 0 1 hardware 中断 和 CMD_ACK 应答中断 这些中断呢 在我们的手册里面 都有一个详细的一个说明 这里面就不仔细说 可以查看在 interrupt 这里 使用上呢 每一个中断都基本上 和 Cortex 本身的使用没有太大的区别 只是说中断源是从 RF core 里面出来的 我们需要在 MCU system MCU里面 抓住这些中断的一些钩子 然后来执行它 RF core 它这个里面呢 还包括了一个自由的时钟 自由运行的时钟 这个时钟呢 是以四兆赫兹的固定频率来运行的 它有八个比较和捕获的这样一个功能 八个通道其中五个呢被 RF内核使用 剩下三个是可以用户自己使用的 手册里面也有相关的一些描述 是在 radio timer 这个里面 这个时钟呢使用上面 和我们普通的时钟也基本上是类似的 大家可以有兴趣看一看 我们硬件抽象层呢它是由命令组成的 这个命令呢 它也同时包括 RAM 内存中的命令结构 也包括 ROM 当中可调用的一些函数 我们在 TI 官方的公开资料当中呢 也没有找到特别详细的一些描述 这个例子呢也没有特别好的例子 所以说我们也不得不查看 contiki 它的一种操作 命令分三种形式的命令 第一种是radio操作命令 第二种是立即操作命令 第三个是直接操作命令 这张图呢我们也可以看到 这个命令的具体的一些格式 pointer to command structure 这个里面告诉我们 这个命令是以 structure 的形式存在的 后面我们可以看到这个 structure 的 一些具体形式 这个命令的形式呢是 direct command 就是直接命令的一些操作形式 那么这三个命令之间有什么区别呢 我们可以看到 radio 命令 它的操作是和 RF 相关的 比如说初始化 RF TX RX 这些一些 BUFFER 协议相关的等等 大多数的这些 radio 操作命令呢 只能在 RF idle 也就是说不工作的这样一种状态下面发出命令 立即命令它是有关修改或者是设置 RF 状态 操作 RX TX队列等等这样一种操作 我们在任何时刻都可以发出立即命令 然而大多数立即命令的响应 都希望能够得到正在运行的 RF 内核的一些状态 还有就是我们的直接命令 直接命令 direct direct command 这个直接命令 它其实就是简单的没有参数 或者是一两个字节参数的立即命令 那我们可以看看这些命令的一些具体状态 这里是它的响应状态 响应状态的话 我们也是按照一个字 按照一个字节的形式 result 给出来 command status 32 的这样一个字段 但是最后的八位一个字节 我们是一个 result 就叫相当于是我们的状态 然后剩下的三个字节 就是我们的一个返回的字节 我们可以在这个列表里面查看到一些 result 和一些 return byte 的一些东西 这个在手册上面也有 我们的命令和数据呢 可以有三种形式的访问 两种形式的访问 两种形式访问 第一种形式是直接访问 就是说我们在我们的数据结构里面 直接把它填充进去 第二种形式是单链表形式的这样一个访问 我们在我们的命令字段 命令数据结构里面 有相应的链表图指向下一个命令 和我们下一个下一个命令 比如说我们把所有的命令 通过一个单链表的形式把它串起来 这样的话我们在 RF core 里面 可以自动的按照一个命令 chain 命令链表的形式来执行每一个命令 我们每一个命令呢 还可以有它自己的触发条件 每一个触发条件呢 有一些它的一些触发的触发源 触发的一些标准 触发的判断等等这些我们在手册里面的 这个这里面也能够有一个比较好的描述 包括他的 trigger never 永远不触发等等 随着 2650 这颗芯片当中的 系统 MCU 和我们的 RF MCU之间 是通过 SRAM 进行了一个共享内存 这种形式的信息交互 所以说我们呢 需要有一些命令的一些列表 这个东西我们可以在手册上面 看的比较仔细一些 包括协议无关的一些操作 包括 NOP Radio 的建立 频率的一些东西 包括我们的 RX 其他的一些测试等等 也包括跟协议相关的一些命令 比如说我们的 Command IEEE 读取信号的一些 SCAN 等等 这里面呢比较有意思的是 它是用的是两部分 一部分称之为命令的头部 也就是说所有命令 只要是 radio operation command 这个命令 它都必须要有的 这 14 个字节 一个是命令的体 命题体也就是说每一个命令 比如说这里的 command radio setup 有它自己的一个特殊的体 包括我们在这里看到的第 14 个字节 第 15 个字节 跟这里所显示的一共 14 个字节接起来之后 形成一个完整的 command radio setup 这样一个命令 command radio setup 这样一个命令 因为也就说我们这里 每一部分都是不完整的 但是他们需要合起来 那么它就是一个完整的这样一个命令 这种命令呢我们也可以在手册里面的 比如说 radio command setup 这里是第 15 个字节 那么我们前面的 这里就是我们的命令的头部 就是它的 radio operation command 一个公共的这样一个头部 接下来呢我们用一个 contiki 的一个 运行的一个演示 来结束本次的这样一个视频
大家好
今天呢我们来一起看看
TI CC2650 这个芯片
它的射频相关的一些内容
我们按照这个次序
来对今天的这个视频进行讲解
首先我们来看一看 RF 内核的一些情况
然后来看一看硬件抽象层的一些情况
最后后面是协议相关的一些情况
最后我们用 contiki 的示例
来结束本次视频
CC2650 它里面集成有一颗 Cortex-M0
控制的 2.4G 射频收发控制器
这颗控制器
可以支持低功耗蓝牙 BLE
IEEE 802.15.4 和专用协议这三种应用
radio 子系统接口
通过接受命令的形式
在 MCU 和 Radio 之间进行消息的传递
消息可以包括命令状态数据事件等等
我们这里所关注的 802.15.4 呢
就是 ZigBee 和 6loWPAN 的底层物理标准
这个射频子系统呢
由 Cortex-M0 控制器
调制器频率综合器 RF接口
内外的一些总线桥 外部的射频驱动
内部的专用 SRAM
还有一些片上的一些驱动库
还有它的安全系统 接口
这些所构成
我们可以看看它的一个整体的框图
这边呢就是我们的系统 MCU
包括它的 Flash 系统的 RAM
还有它的安全接口
我们是挂载在一个总线上面
这个总线呢 通过我们的总线桥
可以跟 RF core 这里面进行一些相关的操作
这个 RF core 呢
里面包括一个 Cortex-M0
包括一些频率相关的一些组件
包括一个外部的 radio 的这样一个接口
在系统的 MCU 呢这一部分系统的 MCU
我们是可以运行 flash 中的代码
也可以在他的boot rom
里面去运行 driverlib 的一些代码
我们也可以运行用户层的一些应用
这个 MCU 呢它还要运行无线的一些协议栈
包括 ZigBee 的协议栈
6loWPAN 协议栈等等
比如说 BLE 低功耗蓝牙的协议栈等等
我们还需要在系统 MCU 里面呢
保持各种协议栈和应用的一些配置
并且处理一些协议栈中上层 MAC 的一些特性
系统 MCU 就是在这一头
系统的 RAM 20KB 的这样一个系统 RAM
它里面存放的是数据报负载
也就是TX和RX的包
还有各种的配置参数
安全子系统的
我们是可以直接被 RF core 来使用的
它呢主要提供验证和授权的这样一个功能
DMA 这一块 DMA它是一个主设备
BUS Master 主设备
它可以在 RF core 专用的 4K SRAM
和 MCU SRAM 之间进行数据的搬运
我们也可以看到在 RF 这一侧
RF core 这一侧
它里面有 RF 的 MCU 这一块
M0 的 MCU 它是接收来自
系统 MCU 的命令
调度这些命令实际的运行
他还有一个调制频率综合器
和 RF 接口就是这一块
它是在 bit 信息与调制信号之间
相互转换的这样一个外设 一个机构
RF 内核接收来自 MCU 的命令
验证并且执行这些命令
这些命令包括了发送接收这些面向应用的命令
也包括校准测试调试等等面向环境维护的命令
也包括校准测试调试等等面向环境维护的命令
RF 内核从系统 RAM 或者是 RF 专用 RAM 中
取得数据和配置参数
共享内存是 RF 内核与系统 MCU 的信息交互手段
这样的手段呢
可以减小 RF 内核自身对存储的需求
同时呢 MCU 和 RF 内核之间
避免了不必要的传输操作
从总体上面减小功耗
RF 内核收到数据报之后
对数据报进行解码
附带上它的一些状态信息
一起存储在系统 RAM 中
RF 内核可以使用 MCU 中的一个安全子系统
RF 内核呢也识别来自系统 MCU 的复杂指令
比如说 CCA 传输
RX 自动应答等等
这些呢在 802.15.4 里面有一些专门的论述
大家有兴趣的话可以去看一看
RF 内核内部将这些指令分解成子命令
然后自动的执行
这个当中我们是不需要有系统 MCU 的干涉的
Radio doorbell 是内核的一个模块
直译是门铃的意思
其实它就是一套命令系统
就比如说我们 MCU 里面的 event fabric
就是前面我们讲的一个路由
其实也就是消息路由这个东西
所以说名字很不知道什么意思
但是我们也能够知道他其实就是一个命令系统
这套命令系统 也叫做 CPE
Command and Packet Engine CPE
这是一个简写
他负责在系统 MCU 和 RFMCU 之间传递信息
CPE 在 MCU 空间当中可以用 RFC_DBELL
这个寄存器进行访问
doorbell 呢他是有访问寄存器
参数和数据的一些 RAM
不管是在系统里面
还是在 RF 这个系统里面
一些数据和参数
还有它的一些中断的情况
RAM 呢数据和参数都是放在 RAM 当中
既可以是 SYS 也就是系统的RAM系统 MCU 的 RAM
也可以是RF自己的专用 RAM
如果这个信息是放在系统的 RAM 当中的话呢
系统 MCU 是不可以关闭电源的
因为关了的话这个信息就没有了
如果信息是存放在 RF 自己的 RAM 当中的话
系统 MCU 是可以切断电源降低功耗的
这个时候他的所有信息
都是保存在 RF 自己的 RAM 当中
具体上来说呢
我们 RF MCU 从 RAM 中读取数据和参数
这个具体的操作我们可以在后面的
contiki 的实际应用当中看到
然后操作这些
RF 不管是调制也好
还是解调也好
更新 RAM 当中的数据和参数
根据状态发出我们的中断
中断它只分了四个
有 CPE 0 1 hardware 中断
和 CMD_ACK 应答中断
这些中断呢
在我们的手册里面
都有一个详细的一个说明
这里面就不仔细说
可以查看在 interrupt 这里
使用上呢
每一个中断都基本上
和 Cortex 本身的使用没有太大的区别
只是说中断源是从 RF core 里面出来的
我们需要在 MCU system MCU里面
抓住这些中断的一些钩子
然后来执行它
RF core 它这个里面呢
还包括了一个自由的时钟
自由运行的时钟
这个时钟呢
是以四兆赫兹的固定频率来运行的
它有八个比较和捕获的这样一个功能
八个通道其中五个呢被 RF内核使用
剩下三个是可以用户自己使用的
手册里面也有相关的一些描述
是在 radio timer 这个里面
这个时钟呢使用上面
和我们普通的时钟也基本上是类似的
大家可以有兴趣看一看
我们硬件抽象层呢它是由命令组成的
这个命令呢
它也同时包括 RAM 内存中的命令结构
也包括 ROM 当中可调用的一些函数
我们在 TI 官方的公开资料当中呢
也没有找到特别详细的一些描述
这个例子呢也没有特别好的例子
所以说我们也不得不查看 contiki 它的一种操作
命令分三种形式的命令
第一种是radio操作命令
第二种是立即操作命令
第三个是直接操作命令
这张图呢我们也可以看到
这个命令的具体的一些格式
pointer to command structure
这个里面告诉我们
这个命令是以 structure 的形式存在的
后面我们可以看到这个 structure 的
一些具体形式
这个命令的形式呢是 direct command
就是直接命令的一些操作形式
那么这三个命令之间有什么区别呢
我们可以看到 radio 命令
它的操作是和 RF 相关的
比如说初始化 RF TX RX
这些一些 BUFFER 协议相关的等等
大多数的这些 radio 操作命令呢
只能在 RF idle
也就是说不工作的这样一种状态下面发出命令
立即命令它是有关修改或者是设置 RF 状态
操作 RX TX队列等等这样一种操作
我们在任何时刻都可以发出立即命令
然而大多数立即命令的响应
都希望能够得到正在运行的 RF 内核的一些状态
还有就是我们的直接命令
直接命令 direct
direct command 这个直接命令
它其实就是简单的没有参数
或者是一两个字节参数的立即命令
那我们可以看看这些命令的一些具体状态
这里是它的响应状态
响应状态的话
我们也是按照一个字
按照一个字节的形式 result 给出来
command status 32 的这样一个字段
但是最后的八位一个字节
我们是一个 result
就叫相当于是我们的状态
然后剩下的三个字节
就是我们的一个返回的字节
我们可以在这个列表里面查看到一些 result
和一些 return byte 的一些东西
这个在手册上面也有
我们的命令和数据呢
可以有三种形式的访问
两种形式的访问
两种形式访问
第一种形式是直接访问
就是说我们在我们的数据结构里面
直接把它填充进去
第二种形式是单链表形式的这样一个访问
我们在我们的命令字段
命令数据结构里面
有相应的链表图指向下一个命令
和我们下一个下一个命令
比如说我们把所有的命令
通过一个单链表的形式把它串起来
这样的话我们在 RF core 里面
可以自动的按照一个命令 chain
命令链表的形式来执行每一个命令
我们每一个命令呢
还可以有它自己的触发条件
每一个触发条件呢
有一些它的一些触发的触发源
触发的一些标准
触发的判断等等这些我们在手册里面的
这个这里面也能够有一个比较好的描述
包括他的 trigger never
永远不触发等等
随着 2650 这颗芯片当中的
系统 MCU 和我们的 RF MCU之间
是通过 SRAM 进行了一个共享内存
这种形式的信息交互
所以说我们呢
需要有一些命令的一些列表
这个东西我们可以在手册上面
看的比较仔细一些
包括协议无关的一些操作
包括 NOP Radio 的建立 频率的一些东西
包括我们的 RX 其他的一些测试等等
也包括跟协议相关的一些命令
比如说我们的 Command IEEE
读取信号的一些 SCAN 等等
这里面呢比较有意思的是
它是用的是两部分
一部分称之为命令的头部
也就是说所有命令
只要是 radio operation command 这个命令
它都必须要有的
这 14 个字节
一个是命令的体
命题体也就是说每一个命令
比如说这里的 command radio setup
有它自己的一个特殊的体
包括我们在这里看到的第 14 个字节
第 15 个字节
跟这里所显示的一共 14 个字节接起来之后
形成一个完整的
command radio setup 这样一个命令
command radio setup 这样一个命令
因为也就说我们这里
每一部分都是不完整的
但是他们需要合起来
那么它就是一个完整的这样一个命令
这种命令呢我们也可以在手册里面的
比如说 radio command setup
这里是第 15 个字节
那么我们前面的
这里就是我们的命令的头部
就是它的 radio operation command
一个公共的这样一个头部
接下来呢我们用一个 contiki 的一个
运行的一个演示
来结束本次的这样一个视频
大家好 今天呢我们来一起看看 TI CC2650 这个芯片 它的射频相关的一些内容 我们按照这个次序 来对今天的这个视频进行讲解 首先我们来看一看 RF 内核的一些情况 然后来看一看硬件抽象层的一些情况 最后后面是协议相关的一些情况 最后我们用 contiki 的示例 来结束本次视频 CC2650 它里面集成有一颗 Cortex-M0 控制的 2.4G 射频收发控制器 这颗控制器 可以支持低功耗蓝牙 BLE IEEE 802.15.4 和专用协议这三种应用 radio 子系统接口 通过接受命令的形式 在 MCU 和 Radio 之间进行消息的传递 消息可以包括命令状态数据事件等等 我们这里所关注的 802.15.4 呢 就是 ZigBee 和 6loWPAN 的底层物理标准 这个射频子系统呢 由 Cortex-M0 控制器 调制器频率综合器 RF接口 内外的一些总线桥 外部的射频驱动 内部的专用 SRAM 还有一些片上的一些驱动库 还有它的安全系统 接口 这些所构成 我们可以看看它的一个整体的框图 这边呢就是我们的系统 MCU 包括它的 Flash 系统的 RAM 还有它的安全接口 我们是挂载在一个总线上面 这个总线呢 通过我们的总线桥 可以跟 RF core 这里面进行一些相关的操作 这个 RF core 呢 里面包括一个 Cortex-M0 包括一些频率相关的一些组件 包括一个外部的 radio 的这样一个接口 在系统的 MCU 呢这一部分系统的 MCU 我们是可以运行 flash 中的代码 也可以在他的boot rom 里面去运行 driverlib 的一些代码 我们也可以运行用户层的一些应用 这个 MCU 呢它还要运行无线的一些协议栈 包括 ZigBee 的协议栈 6loWPAN 协议栈等等 比如说 BLE 低功耗蓝牙的协议栈等等 我们还需要在系统 MCU 里面呢 保持各种协议栈和应用的一些配置 并且处理一些协议栈中上层 MAC 的一些特性 系统 MCU 就是在这一头 系统的 RAM 20KB 的这样一个系统 RAM 它里面存放的是数据报负载 也就是TX和RX的包 还有各种的配置参数 安全子系统的 我们是可以直接被 RF core 来使用的 它呢主要提供验证和授权的这样一个功能 DMA 这一块 DMA它是一个主设备 BUS Master 主设备 它可以在 RF core 专用的 4K SRAM 和 MCU SRAM 之间进行数据的搬运 我们也可以看到在 RF 这一侧 RF core 这一侧 它里面有 RF 的 MCU 这一块 M0 的 MCU 它是接收来自 系统 MCU 的命令 调度这些命令实际的运行 他还有一个调制频率综合器 和 RF 接口就是这一块 它是在 bit 信息与调制信号之间 相互转换的这样一个外设 一个机构 RF 内核接收来自 MCU 的命令 验证并且执行这些命令 这些命令包括了发送接收这些面向应用的命令 也包括校准测试调试等等面向环境维护的命令 也包括校准测试调试等等面向环境维护的命令 RF 内核从系统 RAM 或者是 RF 专用 RAM 中 取得数据和配置参数 共享内存是 RF 内核与系统 MCU 的信息交互手段 这样的手段呢 可以减小 RF 内核自身对存储的需求 同时呢 MCU 和 RF 内核之间 避免了不必要的传输操作 从总体上面减小功耗 RF 内核收到数据报之后 对数据报进行解码 附带上它的一些状态信息 一起存储在系统 RAM 中 RF 内核可以使用 MCU 中的一个安全子系统 RF 内核呢也识别来自系统 MCU 的复杂指令 比如说 CCA 传输 RX 自动应答等等 这些呢在 802.15.4 里面有一些专门的论述 大家有兴趣的话可以去看一看 RF 内核内部将这些指令分解成子命令 然后自动的执行 这个当中我们是不需要有系统 MCU 的干涉的 Radio doorbell 是内核的一个模块 直译是门铃的意思 其实它就是一套命令系统 就比如说我们 MCU 里面的 event fabric 就是前面我们讲的一个路由 其实也就是消息路由这个东西 所以说名字很不知道什么意思 但是我们也能够知道他其实就是一个命令系统 这套命令系统 也叫做 CPE Command and Packet Engine CPE 这是一个简写 他负责在系统 MCU 和 RFMCU 之间传递信息 CPE 在 MCU 空间当中可以用 RFC_DBELL 这个寄存器进行访问 doorbell 呢他是有访问寄存器 参数和数据的一些 RAM 不管是在系统里面 还是在 RF 这个系统里面 一些数据和参数 还有它的一些中断的情况 RAM 呢数据和参数都是放在 RAM 当中 既可以是 SYS 也就是系统的RAM系统 MCU 的 RAM 也可以是RF自己的专用 RAM 如果这个信息是放在系统的 RAM 当中的话呢 系统 MCU 是不可以关闭电源的 因为关了的话这个信息就没有了 如果信息是存放在 RF 自己的 RAM 当中的话 系统 MCU 是可以切断电源降低功耗的 这个时候他的所有信息 都是保存在 RF 自己的 RAM 当中 具体上来说呢 我们 RF MCU 从 RAM 中读取数据和参数 这个具体的操作我们可以在后面的 contiki 的实际应用当中看到 然后操作这些 RF 不管是调制也好 还是解调也好 更新 RAM 当中的数据和参数 根据状态发出我们的中断 中断它只分了四个 有 CPE 0 1 hardware 中断 和 CMD_ACK 应答中断 这些中断呢 在我们的手册里面 都有一个详细的一个说明 这里面就不仔细说 可以查看在 interrupt 这里 使用上呢 每一个中断都基本上 和 Cortex 本身的使用没有太大的区别 只是说中断源是从 RF core 里面出来的 我们需要在 MCU system MCU里面 抓住这些中断的一些钩子 然后来执行它 RF core 它这个里面呢 还包括了一个自由的时钟 自由运行的时钟 这个时钟呢 是以四兆赫兹的固定频率来运行的 它有八个比较和捕获的这样一个功能 八个通道其中五个呢被 RF内核使用 剩下三个是可以用户自己使用的 手册里面也有相关的一些描述 是在 radio timer 这个里面 这个时钟呢使用上面 和我们普通的时钟也基本上是类似的 大家可以有兴趣看一看 我们硬件抽象层呢它是由命令组成的 这个命令呢 它也同时包括 RAM 内存中的命令结构 也包括 ROM 当中可调用的一些函数 我们在 TI 官方的公开资料当中呢 也没有找到特别详细的一些描述 这个例子呢也没有特别好的例子 所以说我们也不得不查看 contiki 它的一种操作 命令分三种形式的命令 第一种是radio操作命令 第二种是立即操作命令 第三个是直接操作命令 这张图呢我们也可以看到 这个命令的具体的一些格式 pointer to command structure 这个里面告诉我们 这个命令是以 structure 的形式存在的 后面我们可以看到这个 structure 的 一些具体形式 这个命令的形式呢是 direct command 就是直接命令的一些操作形式 那么这三个命令之间有什么区别呢 我们可以看到 radio 命令 它的操作是和 RF 相关的 比如说初始化 RF TX RX 这些一些 BUFFER 协议相关的等等 大多数的这些 radio 操作命令呢 只能在 RF idle 也就是说不工作的这样一种状态下面发出命令 立即命令它是有关修改或者是设置 RF 状态 操作 RX TX队列等等这样一种操作 我们在任何时刻都可以发出立即命令 然而大多数立即命令的响应 都希望能够得到正在运行的 RF 内核的一些状态 还有就是我们的直接命令 直接命令 direct direct command 这个直接命令 它其实就是简单的没有参数 或者是一两个字节参数的立即命令 那我们可以看看这些命令的一些具体状态 这里是它的响应状态 响应状态的话 我们也是按照一个字 按照一个字节的形式 result 给出来 command status 32 的这样一个字段 但是最后的八位一个字节 我们是一个 result 就叫相当于是我们的状态 然后剩下的三个字节 就是我们的一个返回的字节 我们可以在这个列表里面查看到一些 result 和一些 return byte 的一些东西 这个在手册上面也有 我们的命令和数据呢 可以有三种形式的访问 两种形式的访问 两种形式访问 第一种形式是直接访问 就是说我们在我们的数据结构里面 直接把它填充进去 第二种形式是单链表形式的这样一个访问 我们在我们的命令字段 命令数据结构里面 有相应的链表图指向下一个命令 和我们下一个下一个命令 比如说我们把所有的命令 通过一个单链表的形式把它串起来 这样的话我们在 RF core 里面 可以自动的按照一个命令 chain 命令链表的形式来执行每一个命令 我们每一个命令呢 还可以有它自己的触发条件 每一个触发条件呢 有一些它的一些触发的触发源 触发的一些标准 触发的判断等等这些我们在手册里面的 这个这里面也能够有一个比较好的描述 包括他的 trigger never 永远不触发等等 随着 2650 这颗芯片当中的 系统 MCU 和我们的 RF MCU之间 是通过 SRAM 进行了一个共享内存 这种形式的信息交互 所以说我们呢 需要有一些命令的一些列表 这个东西我们可以在手册上面 看的比较仔细一些 包括协议无关的一些操作 包括 NOP Radio 的建立 频率的一些东西 包括我们的 RX 其他的一些测试等等 也包括跟协议相关的一些命令 比如说我们的 Command IEEE 读取信号的一些 SCAN 等等 这里面呢比较有意思的是 它是用的是两部分 一部分称之为命令的头部 也就是说所有命令 只要是 radio operation command 这个命令 它都必须要有的 这 14 个字节 一个是命令的体 命题体也就是说每一个命令 比如说这里的 command radio setup 有它自己的一个特殊的体 包括我们在这里看到的第 14 个字节 第 15 个字节 跟这里所显示的一共 14 个字节接起来之后 形成一个完整的 command radio setup 这样一个命令 command radio setup 这样一个命令 因为也就说我们这里 每一部分都是不完整的 但是他们需要合起来 那么它就是一个完整的这样一个命令 这种命令呢我们也可以在手册里面的 比如说 radio command setup 这里是第 15 个字节 那么我们前面的 这里就是我们的命令的头部 就是它的 radio operation command 一个公共的这样一个头部 接下来呢我们用一个 contiki 的一个 运行的一个演示 来结束本次的这样一个视频
大家好
今天呢我们来一起看看
TI CC2650 这个芯片
它的射频相关的一些内容
我们按照这个次序
来对今天的这个视频进行讲解
首先我们来看一看 RF 内核的一些情况
然后来看一看硬件抽象层的一些情况
最后后面是协议相关的一些情况
最后我们用 contiki 的示例
来结束本次视频
CC2650 它里面集成有一颗 Cortex-M0
控制的 2.4G 射频收发控制器
这颗控制器
可以支持低功耗蓝牙 BLE
IEEE 802.15.4 和专用协议这三种应用
radio 子系统接口
通过接受命令的形式
在 MCU 和 Radio 之间进行消息的传递
消息可以包括命令状态数据事件等等
我们这里所关注的 802.15.4 呢
就是 ZigBee 和 6loWPAN 的底层物理标准
这个射频子系统呢
由 Cortex-M0 控制器
调制器频率综合器 RF接口
内外的一些总线桥 外部的射频驱动
内部的专用 SRAM
还有一些片上的一些驱动库
还有它的安全系统 接口
这些所构成
我们可以看看它的一个整体的框图
这边呢就是我们的系统 MCU
包括它的 Flash 系统的 RAM
还有它的安全接口
我们是挂载在一个总线上面
这个总线呢 通过我们的总线桥
可以跟 RF core 这里面进行一些相关的操作
这个 RF core 呢
里面包括一个 Cortex-M0
包括一些频率相关的一些组件
包括一个外部的 radio 的这样一个接口
在系统的 MCU 呢这一部分系统的 MCU
我们是可以运行 flash 中的代码
也可以在他的boot rom
里面去运行 driverlib 的一些代码
我们也可以运行用户层的一些应用
这个 MCU 呢它还要运行无线的一些协议栈
包括 ZigBee 的协议栈
6loWPAN 协议栈等等
比如说 BLE 低功耗蓝牙的协议栈等等
我们还需要在系统 MCU 里面呢
保持各种协议栈和应用的一些配置
并且处理一些协议栈中上层 MAC 的一些特性
系统 MCU 就是在这一头
系统的 RAM 20KB 的这样一个系统 RAM
它里面存放的是数据报负载
也就是TX和RX的包
还有各种的配置参数
安全子系统的
我们是可以直接被 RF core 来使用的
它呢主要提供验证和授权的这样一个功能
DMA 这一块 DMA它是一个主设备
BUS Master 主设备
它可以在 RF core 专用的 4K SRAM
和 MCU SRAM 之间进行数据的搬运
我们也可以看到在 RF 这一侧
RF core 这一侧
它里面有 RF 的 MCU 这一块
M0 的 MCU 它是接收来自
系统 MCU 的命令
调度这些命令实际的运行
他还有一个调制频率综合器
和 RF 接口就是这一块
它是在 bit 信息与调制信号之间
相互转换的这样一个外设 一个机构
RF 内核接收来自 MCU 的命令
验证并且执行这些命令
这些命令包括了发送接收这些面向应用的命令
也包括校准测试调试等等面向环境维护的命令
也包括校准测试调试等等面向环境维护的命令
RF 内核从系统 RAM 或者是 RF 专用 RAM 中
取得数据和配置参数
共享内存是 RF 内核与系统 MCU 的信息交互手段
这样的手段呢
可以减小 RF 内核自身对存储的需求
同时呢 MCU 和 RF 内核之间
避免了不必要的传输操作
从总体上面减小功耗
RF 内核收到数据报之后
对数据报进行解码
附带上它的一些状态信息
一起存储在系统 RAM 中
RF 内核可以使用 MCU 中的一个安全子系统
RF 内核呢也识别来自系统 MCU 的复杂指令
比如说 CCA 传输
RX 自动应答等等
这些呢在 802.15.4 里面有一些专门的论述
大家有兴趣的话可以去看一看
RF 内核内部将这些指令分解成子命令
然后自动的执行
这个当中我们是不需要有系统 MCU 的干涉的
Radio doorbell 是内核的一个模块
直译是门铃的意思
其实它就是一套命令系统
就比如说我们 MCU 里面的 event fabric
就是前面我们讲的一个路由
其实也就是消息路由这个东西
所以说名字很不知道什么意思
但是我们也能够知道他其实就是一个命令系统
这套命令系统 也叫做 CPE
Command and Packet Engine CPE
这是一个简写
他负责在系统 MCU 和 RFMCU 之间传递信息
CPE 在 MCU 空间当中可以用 RFC_DBELL
这个寄存器进行访问
doorbell 呢他是有访问寄存器
参数和数据的一些 RAM
不管是在系统里面
还是在 RF 这个系统里面
一些数据和参数
还有它的一些中断的情况
RAM 呢数据和参数都是放在 RAM 当中
既可以是 SYS 也就是系统的RAM系统 MCU 的 RAM
也可以是RF自己的专用 RAM
如果这个信息是放在系统的 RAM 当中的话呢
系统 MCU 是不可以关闭电源的
因为关了的话这个信息就没有了
如果信息是存放在 RF 自己的 RAM 当中的话
系统 MCU 是可以切断电源降低功耗的
这个时候他的所有信息
都是保存在 RF 自己的 RAM 当中
具体上来说呢
我们 RF MCU 从 RAM 中读取数据和参数
这个具体的操作我们可以在后面的
contiki 的实际应用当中看到
然后操作这些
RF 不管是调制也好
还是解调也好
更新 RAM 当中的数据和参数
根据状态发出我们的中断
中断它只分了四个
有 CPE 0 1 hardware 中断
和 CMD_ACK 应答中断
这些中断呢
在我们的手册里面
都有一个详细的一个说明
这里面就不仔细说
可以查看在 interrupt 这里
使用上呢
每一个中断都基本上
和 Cortex 本身的使用没有太大的区别
只是说中断源是从 RF core 里面出来的
我们需要在 MCU system MCU里面
抓住这些中断的一些钩子
然后来执行它
RF core 它这个里面呢
还包括了一个自由的时钟
自由运行的时钟
这个时钟呢
是以四兆赫兹的固定频率来运行的
它有八个比较和捕获的这样一个功能
八个通道其中五个呢被 RF内核使用
剩下三个是可以用户自己使用的
手册里面也有相关的一些描述
是在 radio timer 这个里面
这个时钟呢使用上面
和我们普通的时钟也基本上是类似的
大家可以有兴趣看一看
我们硬件抽象层呢它是由命令组成的
这个命令呢
它也同时包括 RAM 内存中的命令结构
也包括 ROM 当中可调用的一些函数
我们在 TI 官方的公开资料当中呢
也没有找到特别详细的一些描述
这个例子呢也没有特别好的例子
所以说我们也不得不查看 contiki 它的一种操作
命令分三种形式的命令
第一种是radio操作命令
第二种是立即操作命令
第三个是直接操作命令
这张图呢我们也可以看到
这个命令的具体的一些格式
pointer to command structure
这个里面告诉我们
这个命令是以 structure 的形式存在的
后面我们可以看到这个 structure 的
一些具体形式
这个命令的形式呢是 direct command
就是直接命令的一些操作形式
那么这三个命令之间有什么区别呢
我们可以看到 radio 命令
它的操作是和 RF 相关的
比如说初始化 RF TX RX
这些一些 BUFFER 协议相关的等等
大多数的这些 radio 操作命令呢
只能在 RF idle
也就是说不工作的这样一种状态下面发出命令
立即命令它是有关修改或者是设置 RF 状态
操作 RX TX队列等等这样一种操作
我们在任何时刻都可以发出立即命令
然而大多数立即命令的响应
都希望能够得到正在运行的 RF 内核的一些状态
还有就是我们的直接命令
直接命令 direct
direct command 这个直接命令
它其实就是简单的没有参数
或者是一两个字节参数的立即命令
那我们可以看看这些命令的一些具体状态
这里是它的响应状态
响应状态的话
我们也是按照一个字
按照一个字节的形式 result 给出来
command status 32 的这样一个字段
但是最后的八位一个字节
我们是一个 result
就叫相当于是我们的状态
然后剩下的三个字节
就是我们的一个返回的字节
我们可以在这个列表里面查看到一些 result
和一些 return byte 的一些东西
这个在手册上面也有
我们的命令和数据呢
可以有三种形式的访问
两种形式的访问
两种形式访问
第一种形式是直接访问
就是说我们在我们的数据结构里面
直接把它填充进去
第二种形式是单链表形式的这样一个访问
我们在我们的命令字段
命令数据结构里面
有相应的链表图指向下一个命令
和我们下一个下一个命令
比如说我们把所有的命令
通过一个单链表的形式把它串起来
这样的话我们在 RF core 里面
可以自动的按照一个命令 chain
命令链表的形式来执行每一个命令
我们每一个命令呢
还可以有它自己的触发条件
每一个触发条件呢
有一些它的一些触发的触发源
触发的一些标准
触发的判断等等这些我们在手册里面的
这个这里面也能够有一个比较好的描述
包括他的 trigger never
永远不触发等等
随着 2650 这颗芯片当中的
系统 MCU 和我们的 RF MCU之间
是通过 SRAM 进行了一个共享内存
这种形式的信息交互
所以说我们呢
需要有一些命令的一些列表
这个东西我们可以在手册上面
看的比较仔细一些
包括协议无关的一些操作
包括 NOP Radio 的建立 频率的一些东西
包括我们的 RX 其他的一些测试等等
也包括跟协议相关的一些命令
比如说我们的 Command IEEE
读取信号的一些 SCAN 等等
这里面呢比较有意思的是
它是用的是两部分
一部分称之为命令的头部
也就是说所有命令
只要是 radio operation command 这个命令
它都必须要有的
这 14 个字节
一个是命令的体
命题体也就是说每一个命令
比如说这里的 command radio setup
有它自己的一个特殊的体
包括我们在这里看到的第 14 个字节
第 15 个字节
跟这里所显示的一共 14 个字节接起来之后
形成一个完整的
command radio setup 这样一个命令
command radio setup 这样一个命令
因为也就说我们这里
每一部分都是不完整的
但是他们需要合起来
那么它就是一个完整的这样一个命令
这种命令呢我们也可以在手册里面的
比如说 radio command setup
这里是第 15 个字节
那么我们前面的
这里就是我们的命令的头部
就是它的 radio operation command
一个公共的这样一个头部
接下来呢我们用一个 contiki 的一个
运行的一个演示
来结束本次的这样一个视频
视频报错
手机看
扫码用手机观看
收藏本课程
视频简介
CC2650之射频(上)
所属课程:CC2650开发套件详解
发布时间:2015.12.11
视频集数:11
本节视频时长:00:16:09
该视频结合802.15无线器件,组网,应用等使用经验,讲述CC26xx芯片分析介绍、CC2650DK出厂演示程序使用和用途分析,射频相关基础闲聊等。旨在帮助新进工程师快速开启最新最潮的cc26xx系列无线设计。
//=$v1;?>
//=$v['id']?>//=$v['down_category']?>//=$v['link']?>//=$v['is_dl']?>//=$v['link']?>//=$v['name']?>//=$v['name']?>
//=$v['id']?>//=$v['down_category']?>//=$v['path']?>//=$v['is_dl']?>//=$v['path']?>//=$v['name']?>//=$v['name']?>
////=count($lesson['bbsinfo'])?>
//=$elink?>//=$elink?>//=$tags[0]?>//=$tags[0]?>//=$elink?>//= $elink?>//=$tags[1]?>//=$tags[1]?>
//=$lesson['bbs'];?>
//=count($lesson['bbsinfo'])?>