在工程实践与科技创新课程中,单片机编程是一个很重要的环节。Energia作为一个简单易用的开发工具,易于上手,适合各个层次的开发者学习、使用。本文从一个从零基础开始学习的MSP-430单片机学习者角度讲述如何在此工具下针对本次工程实践与科技创新 IIB、IIIC及IV C 课题编程及应用。本方法适合有一定C或C++语言基础的单片机初学者学习使用。
关键词:初学者、MSP430
Energia 集成开发环境简介
Energia是一个专为德州仪器公司MSP-430单片机开发的集成开发环境。
该软件在不同操作系统中有良好的兼容性,在Windows,Mac OS,Linux系统中均可使用。
该软件为免费软件,非常适合学习者使用。
该软件自带端口通讯模块,可与MSP-430单片机进行端口通讯。
软件下载
该软件为免费软件,可从官方网站 http://www.energia.nu 下载所需版 本,支持 Max OS X, windows 及 Linux 操作系统。
本教程中以 Mac OS X系统为例,故选择版本
energia- 0101E0010-macosx.dmg 下载安装。
软件安装
打开下载的dmg文件,其中包含文件如下:
重启启动后,Energia程序已经安装在Application目录下,按下control键 同时双击该程序图标可以打开该程序。
将其中Energia文件拖拽入 Application文件夹 中。
按下control建,双击MSP430LPCD文件选择安装。 默认安装后,操作系 统会重新启动。
至此,msp430单片机所需的开发环境已经搭建完成,若安装后仍无法打 开,可能出于系统设置或系统版本原因,请参考:
http://energia.nu/Guide MacOSX.html 以下是软件截图:
创建程序
首先学习创建第一个程序用来控制MSP430单片机上的LED灯 闪烁。
打开Energia软件,首先通过 Tools - Serial Port 选择使用的传输端口(通常只有一个选项,故为默认),在选择版面(board)类型。针对我们本次
所使用的MSP-EXP430G2单片机,我们选择
LaunchPad w/ msp430g2553 进 行操作。
所使用程序代码如下:
// the setup routine runs once when you press reset:
void setup() {
// initialize the digital pin as an output.
pinMode(RED_LED, OUTPUT);
}
// the loop routine runs over and over again forever:
void loop() {
digitalWrite(RED_LED, HIGH);
// turn the LED on (HIGH is the voltage level)
delay(1000);
// wait for a second
digitalWrite(RED_LED, LOW);
// turn the LED off by making the voltage LOW
delay(1000);
// wait for a second
}
程序说明:
1.该程序包含两端函数,分别用来做初始化设定(setup)和循环操作 (loop)。
2.初始化时,选择红色LED灯用作信号输出。
3.循环过程中,使用 digitalWrite(RED_LED,HIGH) 向红色LED灯提供高 电位,使其发光。使用delay函数做1000毫秒延时,使红色LED灯持续 发光1秒。使用 digitalWrite(RED LED,LOW) 命令将红色LED电位调 至低电位,从而LED灯熄灭。再做1000毫秒延时后完成循环。
点击Verify 可以对该程序在计算机上编译、检查错误。编译通过后,点 击upload 可讲程序上传至单片机。参见下图:
运行程序后,可看到红色LED灯开始闪烁。实验成功。
类似的,通过对红色LED灯和绿色LED灯的间断控制,我们可以实现两 小灯泡组合闪烁的效果。
串口通信
Energia自带了串口通信工具,在与小车建立连接后,通过选择Tools - Serial Monitor 可建立与小车通讯。
在打开该串口工具前,需将含串口通讯的文件传入单片机中,并建立连接。本文以通过给单片机发送字符信号控制LED灯变换,过程如下:
代码:
char incomingByte = 'a'; // for incoming serial