如何在Energia开发C2000-LaunchPad应用——以F28027为例
第一次写博客,有不足之处,还请见谅!!!
Energia介绍
Energia 是一个开源和社区驱动型集成开发环境 (IDE) 与软件框架。Energia 基于接线框架,为微控制器编程提供了直观的编码环境和由易于使用的功能 API 及库构成的可靠框架。Energia 支持多种 TI 处理器,主要包括可从 LaunchPad 开发生态系统获得的处理器。Energia 是开源产品,源代码可从 github网站 www.github.com/energia/energia 获得。
简单易用的代码编辑器和编译器,内置有串行监视器/终端
具备由直观的功能 API 构成的可靠框架,可用于控制微控制器外设(即 digitalRead、digitalWrite、Serial.print 等)
支持各种 TI 嵌入式器件(MSP430、TM4C、CC3200、C2000 等)
开源、可从 GitHub 获得
还可获得高级库(Wi-Fi、以太网、显示屏、传感器等)
需要从 IDE 获得更多功能?将 Energia 项目无缝导入 Code Composer Studio v6,让开发人员充分利用 LaunchPad 套件的板载调试器。
- 下载Energia
在http://energia.nu/download/下载0101E0017 版本的Energia,解压缩后,直接运行,但是这时候发现在Tools->Board里面发现没有C2000可以提供选择。
经过了解后,原来需要额外安装C2000的编译器才能选择C2000-LaunchPad进行开发。在该网页里选择c2000 F28027LaunchPad。
于是,在如下地址下载C2000编译器,
http://software-dl.ti.com/codegen/non-esd/downloads/download.htm#C2000
选择最新版本,下载完后,双击.exe。并安装到文件夹:Energia\hardware\tools\c2000,我的是安装路径是:G:\TI_Arduino\energia-0101E0017\hardware\tools\c2000。之后就可以在Energia中选择C2000-LaunchPad开发板了。
- 编译与下载Blink例程
首次编译会出现,编译失败的情况,如下:(这个情况不知道是我电脑原因还是其他原因)
10 errors detected in the compilation of
"G:\TI_Arduino\energia-0101E0017\hardware\c2000\cores\c2000\WString.cpp", line 293: error #136: namespace "std" has no member "ltoa"
"G:\TI_Arduino\energia-0101E0017\hardware\c2000\cores\c2000\WString.cpp".
>> Compilation failure
于是我就找到对应的程序
G:\TI_Arduino\energia-0101E0017\hardware\c2000\cores\c2000\WString.cpp
我试着把WString.cpp删除,再次编译就然成功了。哈哈
这时我们选择串口下载程序到28027Launch Board中,这时又出现问题了,找不到对应的COM口。
COM4是我的电脑蓝牙的端口,这是需要我们按照如下操作,方可显示Launch board与电脑连接的COM口。具体如下:
我们需要到电脑的设备管理器中查看
于是我们需要在Channel B的属性中勾选加载VCP,确定。
把USB数据线拔下再插上,即会显示对应的COM口。
这时我们即可在Energia的Tool/Serial Port中选择对应的COM12.
这里还需要我们设置IO引脚,
将#define LED RED_LED改为#define LED P0 (P0为GPIO0),下载
效果图,就可以看见LED灯闪烁了
- 在CCS6.2中导入Energia程序
打开CCS6.2,选择文件目录,我这里选择F:CCS_workspace_v6_2
在Project栏下选择Import Energia Sketch
选择Energia版本号,设备类型,我们选中LaunchPad TMS28027,再在Sketch file选择我们之前在Energia新建的blink.ino文件,点击Finish即可将该文件导入到CCS中。
导入成功后,会有两个文件夹,一个是工程名,另一个是库函数。
编译一下,看有没有错误,编译成功后会生成.out格式的文件
这时我们点击调试下载按钮,就能将程序烧写到板子上,默认是烧写到Flash中。
点击运行按钮,即可看见调试效果。
运行后可见LED1在blink。同时其他几个LED也会随机闪动,究其原因是因为这几个LED都是输入并且将随机噪声甚至人体静电感应作为LED的输出电平。
这时官方给的提示:LOW causes the LEDs to turn on while HIGH causes the LEDs to turn off. In addition, the LEDs will occasionally flicker. This is due to the pins P0-P3 being mapped to LED0-LED3. These pins are set to input initially and therefore may pick up interference from wires, electronics, and even our bodies! Due to the interference, the LEDs may flicker occasionally.
28069同样也可以使用哦。