本文简要介绍了使用TI-Launchpad系列的类arduino开发环境——Energia项目开发过程,并着重介绍了采用CCSv6.0对Energia项目的代码进行调试。
目 录
1 概述 1
2 Energia项目开发流程简介
2.1. Energia介绍与编译过程
2.2. Energia安装与设置
2.3. Energia项目开发流程简介
3 使用CCS调试Energia项目
3.1. CCS导入Energia项目
3.2. CCS编译Energia项目
3.3. CCS调试Energia项目
1 概述本文简要介绍了使用TI-Launchpad系列的类arduino开发环境——Energia项目开发过程,并着重介绍了采用CCSv6.0对Energia项目的代码进行调试。
硬件平台:TI-Launchpad G2553
软件平台:Energia 0101E0012;CCS V6.0.1
2 Energia项目开发流程简介本章介绍Energia开发环境,并简要记录采用Energia IDE进行Launchpad开发的流程。
2.1. Energia介绍与编译过程Energia是类似于Arduino的开发环境,Arduino是流行的电子快速原型搭建开发平台,介绍如下:
“The open-source Arduino environment makes it easy to write code and upload it to the i/o board. It runs on Windows, Mac OS X, and Linux. The environment is written in Java and based on Processing, avr-gcc, and other open source software. “【1】
Energia采用与arduino同样的软件结构,IDE集成各项功能菜单与编辑器,在编辑完成Energia项目文件(.ino后缀)后,Energia根据IDE的设置,先将ino文件转成cpp文件,然后调用自带的编译器(hardware\tools目录下),对cpp编译成目标文件(.o后缀),同时也将对应的开发板核心库(core library,在hardware\msp430目录下)cpp文件编译,然后将所有目标文件(.o后缀)连接,生成elf格式,最后生成.hex文件。
2.2. Energia安装与设置在官网energia.nu下载Energia软件包(.zip文件),解压并启动Energia后,默认打开以sketch_mmmdda(mmmdd代表当天的日期,a表示第一个项目,再次新建则为b)的新建空白工程(仅仅一个.ino文件,空白的setup()和loop()函数)。
为了更详细的了解Energia编译过程,需要进行一些设置,在Energia中点击File->Preference,进入首选项设置页面,如下:
图 2-1 Energia IDE的首选项设置
选择”Show verbose output during []compilation []upload”,两个都勾选上,即在Energia的控制台输出编译和“上传”(将编译后的二进制hex文件烧写入板子上的芯片,通常称之为“编程”、“烧写”或“下载”),也可点击”More preferences can be edited directlty in the file”,打开preference.txt文件进行编辑,修改如下行为true:
build.verbose=true
upload.verbose=true
同时为了得到Energia转化的cpp文件以及编译后的.o文件、hex文件等,可以设置编译输出目录,即增加如下行:
build.path=YOUR\OUTPUT\PATH
2.3. Energia项目开发流程简介连接好Launchpad,并安装好驱动(参考Launchpad用户手册,不再赘述),在Energia的菜单Tools->Board选择对应的Launchpad(本例为“Launchpad w/msp430g2553 (16MHz)),同时在Tools->Serial Port选择对应的串口号(COMx)。
参考范例Blinky程序,编写代码如下
- /*
- Blink
- Turns on an LED on for one second, then off for one second, repeatedly.
-
- This example code is in the public domain.
- */
- int brightness = 0; // how bright the LED is
- int fadeAmount = 20; // how many points to fade the LED by
- void setup() {
- // initialize the digital pin as an output.
- // Pin 14 has an LED connected on most Arduino boards:
- pinMode(14, OUTPUT);
- pinMode(GREEN_LED, OUTPUT);
- Serial.begin(9600);
- pinMode(PUSH2, INPUT_PULLUP);
- }
- void loop() {
- int sensorValue = analogRead(A0);
- Serial.println(sensorValue);
- sensorValue = digitalRead(PUSH2);
- Serial.println(sensorValue);
-
- analogWrite(GREEN_LED, brightness);
- // change the brightness for next time through the loop:
- brightness = brightness + fadeAmount;
- // reverse the direction of the fading at the ends of the fade:
- if (brightness <= 0 || brightness >= 255) {
- fadeAmount = -fadeAmount ;
- }
- delay(200); // wait for 0.2 second
- }
复制代码保存后,点击Sketch->Verify/Compile,即刻完成项目的cpp文件转换、编译、连接和hex文件生成,可以在Energia下方的控制台输出看到如下输出信息:
图 2-2 Energia编译输出信息
同时在设置的输出目录中看到有大量文件,包括.cpp .o .d .efl .hex等格式的文件,分别是转换后的项目cpp文件,项目以及库cpp文件编译后的目标文件.o,连接后的可执行文件.elf,以及最终的二进制下载文件.hex。
编译成功后,即刻点击File->Upload,将生成的hex文件上传(下载)到Launchpad
的芯片里,即刻完成芯片的烧写。之后就可以看到LED在渐亮渐灭,同时点击Tools->Serial Monitor,可以看到串口输出信息。
图 2-3 Energia 运行截图
3 使用CCS调试Energia项目目前最新版的CCS是V6.0.1(截止2014-08-17),新的版本具有导入Energia项目并进行源代码级的编辑、调试开发功能。本章简要记录使用CCS导入、编译、调试Energia项目的过程。
3.1. CCS导入Energia项目打开CCS,在Project菜单栏下选择”Import Energia Project”,选择对应的Target(msp430/lm4f),Launchpad。并选择Energia项目。
图 3-1 CCS导入Energia项目
在Project Explorer面板上看到CCS新建了一个跟Energia项目同名的项目,以及一个”xxxx-core”的项目,并导入了生成的cpp文件作为源代码文件。打开可见该文件时已经经过转换后的cpp文件,对比发现该cpp文件与Energia输出目录下的cpp文件基本相同。
3.2. CCS编译Energia项目CCS在导入Energia项目时,也导入了必须依赖的Energia核心库(core),编译Energia项目之前必须先编译核心库项目,可以在Energia项目的Dependency里面(在Project Explorer的Energia项目右键->Property->Build->Dependency标签页)看到:
图 3-2 CCS建立的Energia编译依赖项目
可以看到在core项目中,有各个cpp文件,都是arduino核心库的源文件,点击main.cpp,可以看到main函数如下:
- #include <Energia.h>
- int main(void)
- {
- init();
- setup();
- for (;;) {
- loop();
- if (serialEventRun) serialEventRun();
- }
- return 0;
- }
复制代码无需做任何改动,点击Project->Build Project,即可看到在console面板输出编译信息,最终编译成功。
3.3. CCS调试Energia项目点击Debug图标,即刻看到CCS完成二进制文件下载,并进入调试界面,这时候就可以利用CCS的强大的调试功能进行调试。
nt>项目的
Dependency里面(在Project Explorer的Energia项目右键->Property->Build->Dependency标签页)看到:
图 3-4 CCS调试Energia项目
晒出我使用MSP430编译器的经验与技巧!_使用CCS调试Energia项目.pdf
(899.14 KB, 下载次数: 129)