2024年4月4日发(作者:衣雪卉)
微控设计网 中国MSP430单片机专业网站
Simpo PDF Password Remover Unregistered Version -
微控设计网
微控设计网
中国MSP430单片机专业网站
MSP430 C语言例题
由微控技术论坛会员Slam 提供
Page 1 of 21
基于模拟前端信号处理与控制技术的专业论坛、网站
基于模拟前端信号处理与控制技术的专业论坛、网站
微控设计网 中国MSP430单片机专业网站
Simpo PDF Password Remover Unregistered Version -
微控设计网
本章选择了一些简单的C语言程序例题,这些程序的结构简单,编程技巧不多,题目虽然
简单,但是非常适合入门单片机的学习者学习MSP430单片机的C语言编程。
如下列出了C语言例题运行的MSP430F149实验板硬件资源环境,熟悉这些硬件资源,对
于理解程序非常重要。
(1)数码管:
左侧数码管与P5口相连,a~g,h对应P5.0~P5.7
右侧数码管与P4口相连,a~g,h对应P4.0~P4.7
(2)发光二极管
8个发光二极管与P3口连接
(3)按钮:
左侧8个按钮与P2口相连,引脚号标在按钮上方
右侧8个按钮与P1口相连,引脚号标在按钮上方
(4)P2.3引脚还是模拟比较器输入
(5)P6.0,P6.1引脚连接模拟量电位器,用于模拟量实验
9.1 通过C语言编程例入门MSP430C语言编程
如下例子都在MSP430F149实验板上通过验证。
例1:使与P3口的P3.0引脚连接的发光二极管闪烁。
#include
void main(void) //主函数
{
unsigned int i; //变量声明
WDTCTL=WDTPW+WDTHOLD; //关掉看门狗
P3DIR |=BIT0; //设置P3.0为输出,这里BIT0=0x0001
while(1) //无限次while循环
{
for (i=0;i<20000;i++) //for语句,i为循环变量,i每次循环加1,当i<20000时,
//循环延时
P3OUT=0x00; 使P3.0输出低电平,发光二极管亮,(低电平使发光二极管亮)
for (i=0;i<20000;i++) //再次循环延时
P3OUT=0x01; 使P3.0输出高电平,发光二极管灭,(高电平使发光二极管灭)
}
}
例2:8个发光二极管1、3、5、7与2、4、6、8交替发光的例子
#include
void main(void)
{
unsigned int i;
WDTCTL=WDTPW+WDTHOLD;
P3DIR=0XFF; //设置P3口为输出
while(1)
{
for (i=0;i<20000;i++)
P3OUT=0X55; //使发光二极管1、3、5、7 灭,2、4、6、8亮
for (i=0;i<20000;i++)
P3OUT=0XAA;//使发光二极管1、3、5、7亮,2、4、6、8灭
}
}
例3:定时器控制的发光二极管闪烁。这里使用了MSP430F149芯片的32768Hz低频晶体振荡器作为时钟
源。用定时器A定时1s,发光二极管灭0.5s,亮.0.5s。
Page 2 of 21
基于模拟前端信号处理与控制技术的专业论坛、网站
基于模拟前端信号处理与控制技术的专业论坛、网站
2024年4月4日发(作者:衣雪卉)
微控设计网 中国MSP430单片机专业网站
Simpo PDF Password Remover Unregistered Version -
微控设计网
微控设计网
中国MSP430单片机专业网站
MSP430 C语言例题
由微控技术论坛会员Slam 提供
Page 1 of 21
基于模拟前端信号处理与控制技术的专业论坛、网站
基于模拟前端信号处理与控制技术的专业论坛、网站
微控设计网 中国MSP430单片机专业网站
Simpo PDF Password Remover Unregistered Version -
微控设计网
本章选择了一些简单的C语言程序例题,这些程序的结构简单,编程技巧不多,题目虽然
简单,但是非常适合入门单片机的学习者学习MSP430单片机的C语言编程。
如下列出了C语言例题运行的MSP430F149实验板硬件资源环境,熟悉这些硬件资源,对
于理解程序非常重要。
(1)数码管:
左侧数码管与P5口相连,a~g,h对应P5.0~P5.7
右侧数码管与P4口相连,a~g,h对应P4.0~P4.7
(2)发光二极管
8个发光二极管与P3口连接
(3)按钮:
左侧8个按钮与P2口相连,引脚号标在按钮上方
右侧8个按钮与P1口相连,引脚号标在按钮上方
(4)P2.3引脚还是模拟比较器输入
(5)P6.0,P6.1引脚连接模拟量电位器,用于模拟量实验
9.1 通过C语言编程例入门MSP430C语言编程
如下例子都在MSP430F149实验板上通过验证。
例1:使与P3口的P3.0引脚连接的发光二极管闪烁。
#include
void main(void) //主函数
{
unsigned int i; //变量声明
WDTCTL=WDTPW+WDTHOLD; //关掉看门狗
P3DIR |=BIT0; //设置P3.0为输出,这里BIT0=0x0001
while(1) //无限次while循环
{
for (i=0;i<20000;i++) //for语句,i为循环变量,i每次循环加1,当i<20000时,
//循环延时
P3OUT=0x00; 使P3.0输出低电平,发光二极管亮,(低电平使发光二极管亮)
for (i=0;i<20000;i++) //再次循环延时
P3OUT=0x01; 使P3.0输出高电平,发光二极管灭,(高电平使发光二极管灭)
}
}
例2:8个发光二极管1、3、5、7与2、4、6、8交替发光的例子
#include
void main(void)
{
unsigned int i;
WDTCTL=WDTPW+WDTHOLD;
P3DIR=0XFF; //设置P3口为输出
while(1)
{
for (i=0;i<20000;i++)
P3OUT=0X55; //使发光二极管1、3、5、7 灭,2、4、6、8亮
for (i=0;i<20000;i++)
P3OUT=0XAA;//使发光二极管1、3、5、7亮,2、4、6、8灭
}
}
例3:定时器控制的发光二极管闪烁。这里使用了MSP430F149芯片的32768Hz低频晶体振荡器作为时钟
源。用定时器A定时1s,发光二极管灭0.5s,亮.0.5s。
Page 2 of 21
基于模拟前端信号处理与控制技术的专业论坛、网站
基于模拟前端信号处理与控制技术的专业论坛、网站