MSP43单片机C语言编程.doc

  1. 1、本文档共72页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MSP43单片机C语言编程

MSP430单片机C语言编程 本章选择了一些简单的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 msp430x14x.h //声明库 void main(void) //主函数 { unsigned int i; //变量声明 WDTCTL=WDTPW+WDTHOLD; //关掉看门狗 P3DIR |=BIT0; //设置P3.0为输出,这里BIT0=0x0001 while(1) //无限次while循环 { for (i=0;i20000;i++) //for语句,i为循环变量,i每次循环加1,当i20000时, //循环延时 P3OUT=0x00; 使P3.0输出低电平,发光二极管亮,(低电平使发光二极管亮) for (i=0;i20000;i++) //再次循环延时 P3OUT=0x01; 使P3.0输出高电平,发光二极管灭,(高电平使发光二极管灭) } } 例2:8个发光二极管 1、3、5、7与 2、4、6、8交替发光的例子 #include msp430x14x.h void main(void) { unsigned int i; WDTCTL=WDTPW+WDTHOLD; P3DIR=0XFF; //设置P3口为输出 while(1) { for (i=0;i20000;i++) P3OUT=0X55; //使发光二极管1、3、5、7 灭,2、4、6、8亮 for (i=0;i20000;i++) P3OUT=0XAA;//使发光二极管1、3、5、7亮,2、4、6、8灭 } } 例 3:定时器控制的发光二极管闪烁。这里使用了 MSP430F149芯片的 32768Hz低频晶体振荡器作为时钟 源。用定时器 A定时 1s,发光二极管灭 0.5s,亮.0.5s。 #include msp430x14x.h void main (void) { WDTCTL= WDTPW + WDTHOLD; //设置看门狗控制寄存器,关看门狗 TACTL = TASSEL0 + TACLR; // 设置定时器A控制寄存器, // TASSEL0=0x0100,选择辅助时钟ACLK, // TACLR=0x0004,清除定时器A计数器 CCTL0 = CCIE; //设置捕获/比较控制寄存器,CCIE=0x0010,使能捕获比较中断 CCR0 =16384; //设置捕获/比较寄存器,初始值为16384,对于32768Hz的频率,相当于0.5s P3DIR |=BIT7; //P3.7为输出 TACTL |= MC0; //设置定时器A控制寄存器,MC0=0x0010,使计数模式为增计数 _EINT(); //使能中断,这是一个C编译器支持的内部过程。 while(1); //无限次while循环 } interrupt[TIMERA0_VECTOR] void Timer_A (void) //定时器A的CC0中断处理程序 //TIMERA0_VECTOR=6*2,等于基地址0xFFE0+12=0xFFEC { P3OUT ^= BIT7; //将P3.7引脚取反,就是使发光二极管闪烁 } 例 4:选择不同的时钟源,使 P3.7 连接的发光二极管闪烁。 (1)使用 XT2时钟源,8MHz频率,用定时器 A分频,产生 1s脉冲,使 P3.7引脚的发光二极管闪烁。 #include msp430x14x.h #define XTOFF 0x40; void main (void) { WDTCTL= WDTPW + WDTHOLD; //关

文档评论(0)

af60068 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档