- 本课程为精品课,您可以登录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秒
猜你喜欢
换一换
推荐帖子
- 了解一下线性稳压器的基本知识
- 长期以来,线性稳压器一直得到业界的广泛采用。在开关模式电源于上世纪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