- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
作者:DC 微控技术论坛原创 ? MSP430单片机入门基础例程 若想了解MSP430单片机常用模块应用原理,请下载MSP430F常用模块应用原理 /datasheet/msp430/msp430base/MSP430register_guide.pdf ? ? 由于IO应用原理比较简单,所以我主要以MC430F14开发板的实例来讲解。新手用户可以参与其应用思路。 ?计划推出几个有价值的参考例程: [1]直接IO按键检测处理程序(非低功耗方式) ? [2]IO口中断演示程序 ? [3]利用IO中断方式实现按键检测程序(低功耗方式) ? ?实验制作如下图,新手用户轻松地在MC430F14开发板上实现。 ? ?
例程[1]: //MSP430F14-直接IO口按键检处理程序 /*************************************************************************/ //以下是结合MC430F14开发板来实现的按键检处理程序实验. //分别使用了采个三个按键接到MSP430的通用IO口,按任意一个按键可以使板上的LED反转. //例程中,按键采用不断查询方式,以得到键值.并没有使用到低功耗.此程序结构比较适合 //用在非手持设备或非电池供电的设计中.此程序结构比较通用,级用户可参与或套用修改. //应用目标板: www.M MC430F14开发板 /*************************************************************************/ #include msp430x14x.h //初级用户要习惯采用宏定义,以方便的编写和修改 #define keyio 0xf8 ? ?? ?//定义按键IO口,Px0-Px2 IO口. #define key_1 0xfe ? ?? ?//定义返回键值1 #define key_2 0xfd ? ?? ?//定义返回键值2 #define key_3 0xfb ? ?? ?//定义返回键值3 //声明子程序 unsigned char key_chcek(void); void display_update(unsigned char dta); void key_process_0(void); void key_process_1(void); void key_process_2(void); //************************************************************************* //将单片机初始化程序放在main()前面是方便查看单片机的初始化状态情况. void MCU_int(void) {//默认MCLK主时钟频率为DCO=~800K P1OUT |= BIT1; ? ? //设置LED,上电为灭.电路可以查看MC430F14电路图. P1DIR |= BIT1; ? ? //P1.1设置为输出. ?//MSP430单片机IO口上电默认方向为输入,所以接按键的IO无需再设为输入. } //************************************************************************* void main (void) { unsigned char key_value; ? ?? ?? ?//定义键值全局变是 ? WDTCTL = WDTPW + WDTHOLD; ? ?? ?? //关狗 ? MCU_int(); ? ?? ?? ?? ?? ?? ?? ?? //初始化单片机 ? ? while(1) ? ?? ?? ?? ?? ?? ?? ?? ? //主程序主循环 ? { ? key_value=key_chcek(); ? ?? ?? ?? //检测,有键按下并松开,返回一个键值. ? ? switch (key_value) ? ?? ?? ?? ?? ?//对键值进行处理.采switch语法结构查询 ? { ? case key_1: key_process_0(); ? ?? //调用键处理程序1 ? ? ?? ?? ?? ?break; ? case key_2: key_process_1(); ? ?? //调用键处理程序2 ? ? ?? ?? ?? ?break; ? ? case key_3: key_process_2(); ? ?? //调用键处理程序2 ? ? ?? ?? ?? ?b
您可能关注的文档
- HTML5入门到精通 共享版.doc
- HTML5学习文档精粹.doc
- I3协同办公解决方案.doc
- IBM_ThinkPad_X2X系列硬件维修手册 简体中文版.doc
- IE8和IE9下ewebeditor上按钮无效的解决办法.doc
- IE七大手法大全经典作品.ppt
- Illustrator CS3实用教程——课件.ppt
- Infor将优秀的屠宰行业管理解决方案引入中国——访Infor亚太区流程制造行业和供应链管理销售副总裁余启昌.doc
- IPv6网络安全的实现与测试.doc
- IS-LM模型分析我国98年扩大内需政策对宏观经济变量的影响.doc
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)