CC2650设计相关 - RF内核、HAL、协议相关及实例 (3)

+荐课 提问/讨论 评论 收藏
  • 本课程为精品课,您可以登录eeworld继续观看:
  • CC2650设计相关 - RF内核、HAL、协议相关及实例 (3)
  • 登录
我们刚才已经在两块板子里面 分别烧录了 web-demo 和一个 rpl 这样一个路由环境 所以我们现在来实际地看一看它们的一个表现 我们首先需要安装一个虚拟的 32 口 那这个里面呢我们可以具体一下 百度或者是其他的一些搜索引擎 他们会告诉我们怎么去安装 我们可以看到在 dev 里面 我们已经安装了tap0 和 tap1 这样的一个虚拟的一个设备端口 现在我们进入我们的工程 里面的 tools 下面 我们首先生成 contiki 提供给我们的这样一个工具 这个工具呢就是用串口 来作为我们的一个传输手段 Device 下的 tty 我们用 aaaa::1 来作为我们的路由器的地址 啊这个具体的地址呢大家可以去了解一下 IPV6 的一些情况 这里链接上它 链接上它之后呢 我们再看看我们的 demo 的一些情况 可以当看到我们这个 demo 启动 这个是 contiki 版本 我们可以看到它的一些地址 这个地址本身呢是用 CC26xx 这个芯片里面的工程出厂的 给的这样一个地址 作为它的 mac 地址 那么我们 IPV6 跟 mac 地址之间的关系 大家也可以去简单了解一下 我们可以用我们的 mac 来做我们的 IPV6 里面的某一部分 这样做一个唯一的这样一个标识 也省去了我们在 32 位 IPV4 的时候 我们需要指定大量 ip 地址的这样一种烦恼 我们现在可以直接利用它的 mac 地址 作为ip地址的某一部分 比如说这里我们可以看到它已经建立了 在这个里面的路由我们可以看到 aaaa::2124b00...6586 作为我们路由器的这样一个本机地址 那我们的另外一个板子呢 aaaa::2124b00...4106 是我们 demo 的这样一个例子 但这两个例子我们可以看到 我们在 layer 里面我们可以看到 4106这里面是一样的 07af 对吧 4b00这个一样 这样一个组成的这样一种方式 所以说我们可以用 mac 很方便地 来凑成我们的这样一个 IPV6 的地址 好我们这里已经建立了路由 建立路由之后 我们就可以对它进行一个操作 我们可以去看看 我们可以看到在这里面 虽然说延迟有点大 但是至少整个通路还是通的 可以看到 那如果说是我们现在 临时的断掉我们的这样一个路由 就是把它这个进程杀掉 我们可以看到 就是 ping 的话呢就是我们的4106 就是我们的 demo 已经变成了一个不可答的这样一种状态 好我们现在重新把它这个路由加上去 我们可以看到它又变成一个可答状态 就说明我们这个路由 这样一种转发的这样一个 这样一种转发的这样一个 无线转发的这样一种功能 我们现在可以根据 web-demo 这个例子呢打开 一个 COAP 的这样一种状况 我们可以在 Firefox 里面去安装一个 copper 这样一个插件 这个插件呢就是 Firefox 能够支持我们的 COAP 这样一个协议 那我们先用 COAP4106 那我们先用 COAP4106 这个地址端口号是 5683 我们可以找到它里面的一些资源 可以来看一看 这个资源 discovering 接下来搜索一下里面有什么东西 我们可以找到 这些东西有 sensor 有 net 看看它具体的一些资源当中的分析 也就是说我们确实也通过 我们的路由 IPV6 路由 在demo web-demo 里面 找到了所有协议能够支持的一些我们的资源 具体的 6loWPAN 或者说是 contiki 的一些东西呢 因为毕竟不是重点 所以说我们在这里就不做太多介绍 我们现在来看一看 板子的一个具体的表现 因为这个一只手要拿手机录板子这边的话 所以说这个界面上有一些东西就已经先敲好了 等会就是看能拷就拷 这个现在看的是路由器 然后我们打开它的开关 现在跑了一遍 跑了一遍的话 同时我们在我们的界面上 就可以把这个路由加上 然后同时呢我们再打开我们的 web-demo 我们可以看到她这个灯 绿色这个灯的一直都在闪烁 闪烁同时呢 就是说他没有找到我们的 router 现在它的闪烁的频率 相对来说比较就比较低 因为它在我们界面上我们可以看到 它迅速的就跟我们的路由器 已经达成了一个路由关系 我们现在可以重新来启动一下它 来看看界面上的一些显示 它还是在不断的闪不断的闪 你可以看见他的一直闪 那我们看见他这个时候 他已经建立了我们的路由关系 那我们就来 ping 这个地址 可以看到我们这个现在已经 ping 通了 最后我们来看一看 TI CC2650 这颗芯片 在 Contiki 里当中的一些实际的使用情况 我们可以在 Contiki 下面找到我们的 芯片相关的一些文件 包括这里的时钟 包括它的一些地址 包括它的低功耗的东西 包括它的实时时钟 还有一些串口的网络协议 这个 SLIP 在我们刚才 rbl 路由应用当中也有所使用 现在来看我们关注的 RF core 这个文件 这里面最关键的几个文件呢 包括我们的 RF core 这个是一个与协议无关的 RF 子系统的这样一个操作 IEEE-mode.c 这个是 与 802.15.4 协议相关的 这样一个 RF 子系统的这样一个操作 然后比较重要的呢 就是我们的 common_cmd 就是说我们的通用的命令 和我们的 IEEE 协议相关的命令 我们来看 common_cmd 里面实际的一些 包括我们都是以 struct 结构的形式 来对我们所有命令进行一些定义 包括我们的 radio operator 和我们的立即命令 还有我们的直接命令等等 我们来看比如说 common radio setup 这样一条命令 第二条命令呢 我们同样也可以在手册当中 发现它在哪里 这就是我们的命令 包括我们的手册 我们可以看到它前面 14 个字节 都是没有描述的 但是呢我们前面的 14 个字节是在这个地方 就是说协议头里面对它进行描述 它一共 14 个字节 包括 command number status conditon 等等 触发条件等等 第 15 个字节开始呢我们就是 command radio setup 这条命令 它自己相关的一些字段域 可以看到它这里面包括它的命令号 802 包括之前前面的 condition command number status 这样一个公共的一个头 结构头 后面是他们 是这条命令 command radio setup 自己的一些相关的一些域 但是我们在这个手册里面呢 我们也可以看到 这些域的描述 有些东西呢我们是可以理解的 但是有一些呢 在这个整个手册的上下文当中 应该表现得不是特别的明显 所以说有很多相关的域 包括 Regoverride 这里面相关的一些 很多操作的方式 我们也确实没有办法在这样一个手册 和没有其他的 TI 官方例程的情况下 能够更深入的了解 他这些所需要表达的一些什么意思 所以说我们这里也就没有办法再深入的去 追究这些各个域里面的一些情况 那么我们现在开始来填充这个 radio setup 这样一个命令 我们可以看到在 ieee_mode.c 里面 我们有一个 RF radio setup 这个命令 我们可以看到在这里面的话 就相当于是在内存里面 开辟了一个这个命令的一个空间 也就是 RAM 里面的一个空间 那么首先呢 对这条命令进行一个简单的初始化 我们可以看到把它的命令号填进去 把它的一些条件填进去 然后呢对我们这条命令的 radio setup 特殊的地方 相关的地方特定的地方进行一些填充 填充之后呢我们就需要执行一个 RF core send cmd 这个东西 其实这个相对来说 也是比较简单的一种操作方式 它最核心的是在这里 就相当于是我们 把我们的 command 的这个地址 你可以看到这个地址 填充到我们的 doorbell 这个寄存器的 command register 这样一个寄存器里面去 我们看这个提示 它提示就是 4004 1000+0 这个寄存器呢在我们手册里面 也可以看到是在这个地方 就是我们的 doorbell command register 也就相当于我们把它写进去之后呢 在仲裁它可以运行的时候 它就把我们 command 里面 按照我们前面填充的所有字段的信息 进行一个执行 在这里呢然后我们马上就开始 从 command status 里面 读取这个命令具体的一些执行的一些状态 一直到我们没有错误的时候退出来了 然后我们就开始进行下面的一个操作
课程介绍 共计11课时,3小时7分49秒

EEworld原创:大话TI CC2650

TI 无线 Wi-Fi CC2650 Wi-Fi产品

     本系列视频由电子工程世界(EEworld)联合TI重磅推出。
     该视频由EEworld社区资深工程师主讲,结合802.15无线器件,组网,应用等使用经验,讲述CC26xx芯片分析介绍、CC2650DK出厂演示程序使用和用途分析,射频相关基础闲聊等。旨在帮助新进工程师快速开启最新最潮的cc26xx系列无线设计。

推荐帖子

了解一下线性稳压器的基本知识
      长期以来,线性稳压器一直得到业界的广泛采用。在开关模式电源于上世纪60年代后成为主流之前,线性稳压器曾经是电源行业的基础。即使在今天,线性稳压器仍然在众多的应用中广为使用。下面我们来就针对线性稳压器的基本知识作一一相关介绍。 线性稳压器的基本概念       线性稳压器(Linear Regulator...
qwqwqw2088 模拟与混合信号
TI DSP最新课程九重奏,总有一课适合你!
之前有朋友希望多一些TI DSP方面的课程,现在就来了一大波,看看有没有适合你的~~ 课程链接:>>点击查看详情 Keystone 调试经验 通过RAM / UBI文件系统引导Linux内核 通过CCS5在K II EVM板上调试U-Boot ARM CCS基础介绍 ARM与DSP通信 HPC开发套件 - TI 高性能计算软件开发套件介绍 Keystone 多核网络模块介绍...
soso DSP 与 ARM 处理器
MSP432学习笔记 -初识开发板和IDE
开箱时里面的介绍: 整体布局介绍:英文版: 翻译版: MSP432P401: 板子上面为仿真电路和功耗测量电路,下面为432主控芯片和外围器件我用的开发环境是,他的版本号是(通过方式查看版本号) MSP432处理器也可以用库函数和寄存器两种方式来编写程序的,库函数是用的最多的方式,我也用库函数的方式来编写MSP432的程序。MSP432P401R LaunchPad包...
小硕硕 微控制器 MCU
紧急求助
安装ccs,提示failed to create the java virtual Machine,,修改eclipse.ini,没用。谁知道方法??计算机已经安装jre-7u7-windows-i586.exe ...
newnew0601 微控制器 MCU
分享到X
微博
QQ
QQ空间
微信

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新文章 手机版

站点相关: EEWORLD首页 EE大学堂 论坛 下载中心 Datasheet 活动专区 博客

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved