CC2650DK-6LoWPAN开发环境搭建(上)

+荐课 提问/讨论 评论 收藏
  • 本课程为精品课,您可以登录eeworld继续观看:
  • CC2650DK-6LoWPAN开发环境搭建(上)
  • 登录
大家好 今天我给大家介绍 CC2650DK-6LoWPAN 开发环境的搭建 好 我们来看一下准备工作 首先我们需要一个 Linux Linux的环境 那我们可以用虚拟机或者实体机都可以 只要有一个Linux就可以了 接下来我们需要 contiki 的源码 和交叉编译器 最后我们需要一个 srecord 的工具 那我们讲一下这个 srecord 的工具 主要是用于一些编译之后的文件的格式转换 那这也是必不可少的 如果没有这个工具的话 你的用官方的 contiki 的源码中的 make 的话 它会提示报错 Linux 环境 这个看个人喜好 选择一款 Linux 桌面环境即可 在下使用的是 VirtualBox 运行 Ubuntu 作为日常的开发环境 那如果对 Linux 不太熟悉的话 我建议在后续的操作中 大家结合搜索引擎 对一些命令来加以理解 那后续可能会提供 IDE 的开发方式 比如说 IAR Embedded Workbench 那这样的话可能大家熟悉起来会快一点 接下来呢我们要克隆源码 克隆源码 我们这 contiki 官方的 git 代码仓库的 主站是这个这样一个地址 那这样的话我们可以在一些搜索引擎中 都可以搜索到的 那我们这里打开给大家看一下 是这样一个地址 找到之后呢 那这是 official git 代码仓库 分类 contiki 的 operating system 的一些简单的介绍 好 我们这里需要注意一个东西 那就是我们要进入这个 platform 找到我们的 smartRF06-CC26xx 的 那我们这里可以看到一些 Getting started with contiki for TI CC26xx 一些说明文档 那这个文档是非常重要的 我建议大家去好好的去看一下 那我们接着到 smartRF06 里面去看一下 简单就这几个文件 那接着我们来看一下 cpu CPU 里面的 CC26xx 那我们看到这个 library 那我们这个 library 里面其实是空的 但是我们可以通过这里的指引 找到有一个另外一个代码仓库 那我们可以看到这是一个专门针对 contiki OS 的 CC26xx 的这样一个驱动库 那如果你需要一个完整版本的 你可以从 TI 去下载这个驱动库 那我不知道 TI 下载的这个驱动库 能不能直接放在这里编译过去 所以我建议大家这里直接使用 这里这个代码仓库提供的源码 那我们在克隆的时候需要注意 先去克隆 contiki 的源码 接着我们进入到 CPU CC26xx library 下面去 把这个 CC26xx 为这个空的文件夹删掉 然后我们直接在这个地方 在这个路径下面去克隆 另外一份源码就直接就是 它就相当于就克隆到你需要的地方了 那么在克隆的时候 我们需要注意一个要克隆 path 这克隆 path 可以理解为你当前 开发 CC2650DK 的这样的一个工作目录 这里也讲了 我们要进入到这个 CC26xx library 就是 cpu 的这个目录下面去 把这个空的文件夹删掉 然后去在这个位置就克隆 CC26xxware 的驱动的那个代码 那我们这里我的克隆 path ...C2650DK 也就是说我进入了 C2650DK 这个目录下面去 我去克隆 Contiki 的源码就可以了 那这个就是我的克隆的路径 也就是我的工作目录了 那后面我们都会用到的 你克隆在哪 你就是把你的这里全部介绍到的 克隆 path 全部替换成你自己的就可以了 CC26xx 我们那个库 库克隆的另外一个驱动的代码 是在这个位置去克隆 需要注意这个这一点就可以了 这里可以看到我们的一个代码仓库的 一个代码的截图示意图 主要就是两个源码可能下来就可以了 继续看 这样的话我们把源码克隆下来了 我们可以用命令来看一下我们的代码数 它有一些 apps cores cpus dev doc examples 等等 platform tools 那其实每一个文件夹下面 每个文件夹都是很有用的 就是说大家在后续的学习中 去一点点地了解了解它 接下来我们要安装我们的交叉编译器 比如说我们常说的工具链 那这个地址呢 是 launchpad 就 TI 专门针对 launchpad.net 这样一个网址上 我们可以找到 gcc-arm-embedded 这是一个优化过的 gcc 的编译器 也是很适合 TI 的一系列的 M3 M4 的开发 那我们选择这样的一个文件进行下载 比如 Linux 的也是最新的 4.9 的 2015 年的 Q2 0609 6 月份的比较新的 我们安装比较简单 就解压到你的安装路径就可以了 用 C 去嵌接到你的安装路径就可以了 这个是基本的 Linux 参数 希望大家不了解的去熟悉一下 那这个 install-path 就是你工具链想要安装的路径 那执行的命令是这样子的 我们可以 如果你不是很清楚的话 你直接把这个命令打进去 那 your-install-path 就是你的 path 这里修改一下就可以了 其他的都是一致的 然后解压完成之后 我们还要添加环境变量 然后我们输入以下内容 保存后退出 我们直接把它保存到这个 bashrc 中 那我们可以如下的来告诉这个环境变量 CC2560_toolchain_home home 是什么呢 就是你安装的路径 然后后面是跟上我们这个编译器的名字 也就是我们之前下载的那个 .tar 的那个名字 这个是要一致的 你下载的什么版本的 这里就是什么样的一个文件名 因为他是在里面的 你可以直接去 your install path 里面去看 它解压出来的这个名字 这个文件夹的名字是什么 因为它是这个文件夹后面的 bin 我们可以看到后面 path 是带上这个 bin 的 其实它真的是在这个 bin 里面的 你可以直接把这个 写在这里也是可以的 就不要这一行也可以的 这种就是通用型的 然后重启终端 我们来检查工具链 那我们直接敲入 -v 来检查我们的版本 那这里我们也是检查了我们的版本 -v 我们可以看到这个版本 3.9.3 20510529 接下来我们要安装 Srecord 这个工具 那这个安装也比较简单 我是 Ubuntu 的 直接 apt-get install srecord 就可以了 那项目的主页在这里 大家如果想了解的话 可以去看一下 那简单的说这个工具 主要就是将 .hex 格式的文件 就是 i16hex 就是英特尔的 16 进制的 hex 文件 转化成标准的 hex 格式的文件 我们看一下这里 这个是我们安装之后的 工具链的版本 我们可以去这样去检测 那这样的话我们的工具链就已经安装完成了 我们接着讲 我们这里呢以两个简单的项目 来介绍一下如何去编译我们的 contiki 编码 那首先我们用一个最简单的 hello world 来讲解如何去编译 如何去下载 其次我们讲一个针对 CC2650 的 6loWPAN 的 这样一个应用的 demo 首先 hello world 那我们首先呢是要进入这个 contiki 源码的 examples/hello-world 当中 这里的 your-clone-path 就是你克隆 contiki 的源码的那个路径 那这个后面我就不讲了 直接就是这个hello world 那编译的时候我们 make target 我们要把这个 target 指定 指定成什么呢 就是我们的 SmartRF06CC2650 那这里的话 在我们的 make target 中 已经指定了他的固定的文件名称 就是 srf06-CC26xx 那后面跟的就是我们编译的目标文件 hello world 那我们也可以通过下面的方法保存 到 makefile.target 这种 make target=srf06-cc26xx savetarget 这样下次就可以直接用 make 来编译了 而不需要去指定 target 因为这个 target 已经被 指定到这个 makefile.target 当中 我们可以看出 make 最后会执行以下两条命令 也就是我们的那个 srec 命令 就是一些 hex 文件的转化 还有一个就是我们的 bin 文件的生成 我们这里可以看一下 看一下这是一个编译的结果 我们发现它编译出来了 编译出来之后 我们可以看到它有一个 bin 文件 还有 hex 文件 其实我们这里用 bin 文件就可以了 有个题外话这里说一下 关于 contiki 的 makefile 结构 我们这个需要参考 contiki/readme-building.md 这样的一个说明 那这里面讲的是比较详细的 它主要涵盖的一些内容 我这里简单的给大家说一下 那 make file 的项目 项目的 make file 在项目的目录下 也就是我们的一个 example 下面 比如说我们的hello world 这下面是有一个直接的 make file 的 那这个就是他的 你 make 的时候 直接找到了 makefile 那接着我们可以看到 另外一个就是 makefile.target 那就是我们的平台的 这个 target 是当前平台的名称 那是它主要是呢是什么作用呢 就是特殊平台的编译规则 在平台的子目录下 platform 那我们可以看到 platform platform 下面我们有一个 srf06-CC26xx 那这个就是和我们前面的那个指定 target 时候 就是直接就对应上 就是这样一个统一的名称 makefile.CPU 就是另外一种 makefile 那他是 CPU 是当前平台使用的 CPU MCU 的结构名称 CPU 结构编译规则 就是CPU的那个编译规则 在 CPU 结构目录下面 与 CPU CC26xx 那在CC26xx 下面 会有个 makefile 是针对 26xx 的 它会以点什么什么的形式告诉你 它这个 CPU 就是当前使用平台的 这样一个名称 那最后还有还有一类 makefile 就是 makefile.app 那这个 APP 呢 是应用的名称 APP 下面的的应用的编译规则 也就是说我们这个应用要依赖哪些规则 它每个应用都有它自己独立的 makefile 那这个的话我们可以阅读源码中去了解它 关于下载呢 其实我们可以采用 SmartRF flash programmer 2 进行下载 那它可以通过调试和串行接口 对德州仪器基于 ARM 的 低功耗射频无线 MCU 中的闪存进行编程 CC2650DK 中就集成了 XDS100V3 的调试接口 我们详细的可以参考这个网址 我们下载的过程是怎样的呢 就是首先连接上我们的设备 打开这个什么 SmartRF flash programmer 2 第一步我们先刷新找到我们的设备 找到设备之后呢 我们可以看到这里有些设备信息 就是我们连接的是哪一个芯片 已经识别到了 识别了之后 我们接下来要选择我们的 hex 文件给他 那最后我们要做的一些动作 那我们先擦除 编程 然后校验 最后我们启动它 最终我们可以在这里 在状态栏看到它是否成功 那这个是我们烧写完 hello world 之后 那个一些调试信息 那么可以看到 starting contiki 2.6 版本 然后 driver lib 的版本 然后以及我们的平台 smartRF06EB-CC26xx EB module 使用的是CC2650 那最后我们看到可以看到 它打印出了 hello world
课程介绍 共计11课时,3小时7分49秒

EEworld原创:大话TI CC2650

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

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

推荐帖子

请教大家,TI_RTOS(Sys/bios) 中创建HWI与430硬件如何对应?
如题,例如静态创建一个HWI var hwi1Params = new Hwi.Params(); hwi1Params.instance.name = "hwi1"; hwi1Params.arg = 0; Program.global.hwi1 = Hwi.create(51, "&iUsbInterruptHandler", hwi1Params); 1、这个51就是中...
chinasunjia123 微控制器 MCU
pic16f877 tm0使LED每隔10ms闪亮代码
/* * File:   main.c * Author: ssais * * Created on 2018年9月19日, 上午8:54 */ #include #define LED RB0 #define TO_10MS 100 char A; void __interrupt() ISR(void); void main() {   ...
Jacktang 微控制器 MCU
拆了个可编程电源,上面用了不少TI的芯片
本帖最后由 dontium 于 2015-1-23 11:09 编辑 2颗16位DA,一颗24位AD; 不过这电源老坏; 有一个叫的蓉儿朋友,买了他们的电子负载,不到1天就坏了,不过幸好返修包邮费;不过厂家的态度挺好的; 曾经的经历: 有一次刚好客户过来参观,用了这家公司的电源,给这台电源通了AC220V后,电源竟然无缘无故冒烟; 打开看后,里面的电容爆了,后来询问厂家,厂家说中间有一...
music_586 模拟与混合信号
TMS320F28035 双向 400V-12V DC/DC 转换器设计
    双向 400V-12V 直流/直流转换器参考设计通过基于微控制器的方式实现了一种隔离式双向直流/直流转换器。具有同步整流的相移全桥 (PSFB) 以降压模式控制从 400V 总线/电池到 12V 电池的能流,而推挽级则以升压模式控制从低压电池到高压总线/电池的反向能流。此实施方案使用位于低压侧的德州仪器 (TI) 32 位微控制器 TMS320F28035 来实现对双向...
Jacktang 微控制器 MCU

szwtyh

学习了,很好的一款芯片

2022年01月04日 14:19:30

大明58

讲述CC26xx芯片分析介绍

2020年05月11日 09:07:55

hawkier

好好学习,不断长进

2019年11月05日 13:05:45

熊猫仙

老师讲的很详细,挺好的

2019年06月24日 11:53:52

zwei9

学习一下

2019年04月06日 00:29:37

dingxilindy

好好学习天天向上学习学习。

2019年04月04日 13:11:04

hellokt43

好好学习天天向上

2019年02月13日 10:50:05

cyrus1992

学习下

2018年12月15日 00:15:58

dl265361

学习

2018年12月12日 22:32:57

天马行空0

学习学习

2018年12月10日 17:02:31

分享到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-2023 EEWORLD.com.cn, Inc. All rights reserved