基于单片机的流水灯系统设计与实现.doc
《基于单片机的流水灯系统设计与实现.doc》由会员分享,可在线阅读,更多相关《基于单片机的流水灯系统设计与实现.doc(12页珍藏版)》请在咨信网上搜索。
摘要 本设计着重在于分析计算器软件和开发过程中的环节和步骤,并从实践经验出发对计算器设计做了详细的分析和研究.本系统就是充分利用了G2452芯片的I/O引脚。系统以采用MSP430系列单片机G2452为中心器件来设计花样LED流水灯系统,通过按键实现8个LED灯不同花样式的闪烁. 关键词:流水灯;单片机;按键;闪烁 12 目录 1 项目要求3 2 项目分析和系统设计3 3 硬件设计3 3。1单片机选型模块3 3。2 LED流水灯模块3 3。3功能模式选择模块3 4 软件设计3 4。1主程序3 4。2子程序3 5 系统调试3 5.1硬件调试3 5。2程序调试3 5。3联合调试3 6 外延3 7 项目演练3 8 项目总结3 附录1电路设计原理图(参考)3 附录2 PCB设计原理图(参考)3 附录3 关键程序(参考)3 基于单片机的流水灯系统设计与实现 1 项目要求 本项目花样流水灯采用MSP430单片机为控制器件,用于各方面的装饰,此花样流水灯有8个LED灯,六种花样灯光效果。 (1)初始化后,执行8个LED灯从右至左逐次点亮,每隔0。2s亮一个LED灯,直到8个LED灯全亮,再从左至右依次熄灭直到全灭,以此循环; (2)当按下按键后,执行8个LED灯从右至左每隔0.2s逐一亮灭,直到点亮最左边一个灯后再从左至右每隔0.2s逐一亮灭,以此循环; 2 项目分析和系统设计 本系统分为硬件和软件模块。硬件上我们打算在单片机的不同的i/o中装上一个流水灯来进行对流水灯进行控制。 在程序方面,首先对msp430的i/o口进行的定义和设置,然后在去定义了一个delay进行延时功能,在用一个switch循环来使得流水灯不断的循环亮灭。 花样流水灯采用MSP430单片机为控制器件,用于各方面的装饰,此花样流水灯有8个LED灯,两种花样灯光效果. 3 硬件设计 本系统采用MSP430单片机为控制核心进行设计,该流水灯系统共可分为两个模块:单片机选型模块和LED流水灯模块。 图1 系统框图 3.1单片机选型模块 MSP430单片机是16位的单片机,采用了精简指令集(RISC)结构,只有简洁的27条内核指令,大量的指令则是模拟指令;众多的寄存器以及片内数据存储器都可参加多种运算.这些内核指令均为单周期指令,功能强,运行的速度快. 图2单片机选型模块 3。2 LED流水灯模块 要实现流水灯功能,我们只要将发光二极管LED1~LED8 依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。且每一个LED灯于一个电阻串联。电阻的作用就是对通过LED灯的电流进行一定的限制起到去LED灯进行的保护作用。使得其在高电压的时候使得LED在电阻的保护下不会烧坏。 此图为共阴极接法,因此当LED_RED给高电平“1"时LED_RED亮;当LED_RED给低电平“0”时,LED_RED灭。 图3 LED流水灯模块图 如图3可知此原理图的LED灯为共阴极的接法,因此我们只要给它一个高电平就能点亮此LED灯。 3.3功能模式选择模块 此设计有6种功能模式可以选择: (1)初始化后,执行8个LED灯从右至左逐次点亮,每隔0。2s亮一个LED灯,直到8个LED灯全亮,再从左至右依次熄灭直到全灭,以此循环; (2)当按下按键后,执行8个LED灯从右至左每隔0.2s逐一亮灭,直到点亮最左边一个灯后再从左至右每隔0。2s逐一亮灭,以此循环; 功能(1): ○○○○○○○●○○○○○○●●○○○○○●●●○○○○●●●● ○○○○○○●●○○○●●●●● ○○○○○●●●○○●●●●●● ○○○○●●●●○●●●●●●● ○○○●●●●●○○●●●●●●○●●●●●●●●●●●●●●● 功能(2): ○○○○○○○●○○○○○○●○○○○○○●○○○○○○●○○○ ○○○○○○●○○○○●○○○○ ○○○○○●○○○○●○○○○○ ○○○○●○○○○●○○○○○○ ○○○●○○○○○○●○○○○○○●○○○○○○●○○○○○○○ 图4 流水灯的功能示意图 4 软件设计 4.1主程序 本系统整体工作主要由单片机程序控制实现,其工作过程为:对端口进行初始化,在主程序中用不同的端口定义分别来点亮流水灯。再用switch语句来对不同的LED灯进行不同类型的流水灯效果.在用延时程序来实现每一个LED的亮灭。 程序整体框架如下图5所示。 图5 程序流程图 4.2子程序 一个完整的程序是由一个主程序和若干个子程序组成。在一个加工程序中,如果其中有些加工内容完全相同或相似,为了简化程序,可以把这些重复的程序段单独列出,并按一定的格式编写成子程序。主程序在执行过程中如果需要某一子程序,通过调用指令来调用该子程序,子程序执行完后又返回到主程序,继续执行后面的程序段。 本系统中所使用的子程序都是比较简单的,用for语句实现循环之后再使用延时函数进行延时。 子函数的功能流程图如下: 功能1流程图:功能2流程图: 开始 开始 使LED灯左移一位点亮 使被点亮的LED灯左移一位 延时 延时 最左边LED灯是否点亮亮 8个LED灯是否全亮 使被点亮的LED灯右移一位 使LED灯右移一位熄灭 延时 延时 最右边LED灯是否熄灭 8个LED灯是否全灭 图6 功能程序流程框架图 5 系统调试 本单片机的流水灯系统的设计分为硬件电路设计和软件设计两个部分,因此调试也分成两部分进行调试。 5。1硬件调试 主要根据系统框图和硬件原理设计进行原理的绘制、各参数的设置、电路板的制作,以及元器件的焊接等。具体如下: 5.1.1 各单元电路,确认各单元电路链接无误,尤其是关键元器件,一定要接保护电阻。 (1)选择合适规格的元器件,在放置期间前一定要检查规格; (2)关键器件放置:在器件布置方面与其它逻辑电路一样,应把相互有关的器件尽量放靠近些,这样可以减少材料,更加美观。 5.1。2 PCB设计原则: 在进行PCB设计时,必须遵守PCB设计的一般原则,并应符合要实现的效果设计的要求。 (1)尽量采用印制电路板,印制电路板不像万用板一样会有一定的接触不好或者焊盘不稳和线路连接有问题的情况,印制电路板的制作可防止产生地电位差和元件之间的耦合。 (2)元件面和焊接面应采用相互垂直、斜交、或者弯曲走线,避免相互平导线尽量短,使用45°或者圆弧折线布线,不要使用90°折线,以减小高频信号的发射。 5.2程序调试 在本系统中,主要分为主程序部分、中断程序、子程序等。在调试过程中,按照程序功能一项项进行调试,首先确认主程序正确,在确认其他程序.调试方法主要跟踪调试、断点调试等等,可以参考相关专业书籍。 5。1。1 CCSV5的打开步骤 (1) 右键Code Composer Studio v5快捷方式,左键打开。会出现如图6所示界面: 图6 Code Composer Studio v5软件加载界面 (2)加载完毕之后会有如图7所示界面出现: 图7 Code Composer Studio v5软件打开界面 (3)选择Project-〉Import Existing CCS Eclipse Project,导入程序文件夹中的工程;具体操作如图8: 图8 Code Composer Studio v5程序导入步骤图 5.3联合调试 整个系统的软硬件都完成后,需要进行联合调试,主要是针对系统设定的功能能否完成和完善进行调试. 调试步骤: (1) 将PC和硬件电路通过USB线相连; (2) 选择对该工程进行编译链接,生成.out文件。然后选择,将程序下载到实验板中.程序下载完毕之后,可以选择全速运行程序,也可以选择单步调试程序,选择F3查看具体函数。也可以程序下载之后,按下,软件界面恢复到原编辑程序的画面。再按下实验板的复位键,运行程序。(调试方式下的全速运行和直接上电运行程序在时序有少许差别,建议上电运行程序) 图 9 联合调试效果图 6 外延 花样流水灯的流水方式各式各样,因此我们在以上功能基础上,还能将程序稍作修改,使之有如下花样流水效果. (1)在以上功能下,当再次按下此按键后,执行8个LED灯从中间2个开始每隔0。2s向左右两边依次点亮,直到8个LED灯全亮,再由两边开始灭,直到全灭以此循环; (2)第三次按下此按键之后,执行与上次相反的效果,以此循环; (3)第四次按下此按键之后,8个LED灯同时闪烁,时间间隔为0。1s; (4)第五次按下按键之后,依次执行前面五个程序的效果,以此循环。 以上花样流水灯的流水功能如图10,功能(4)是前面几种功能集中的效果。 功能(1): ○○○○○○○○○○○●●○○○○○●●●●○○○●●●●●●○ ○○○●●○○○○○●●●●○○○●●●●●●○●●●●●●●● 功能(2): ●○○○○○○●●●○○○○●●●●●○○●●●●●●●●●●● ○○○○○○○○●○○○○○○●●●○○○○●●●●●○○●●● 功能(3): ●●●●●●●● ○○○○○○○○ 图10 流水灯的功能示意图 功能1流程图: 功能2流程图: 开始 开始 点亮LED1和LED8 点亮LED3和LED4 BIT1左移i位 BIT8 右移i位 LED4左移i位 LED3右移i位 延时 延时 8个LED灯是否全亮 亮 8个LED灯是否全亮 LED4左移i位 LED3右移i位 BIT1左移i位 BIT8 右移i位 延时 延时 8个LED灯是否全灭 8个LED灯是否全灭 功能3流程图: 开始 点亮所有LED灯 延时 状态反转 图11 功能程序流程框架图 7 项目演练 对于本设计,尚可以进一步进行如下设计: (1)设计一个心形呼吸流水灯 设计思路如下: 运用MSP430g2553单片机(28PIN、TSSOP封装)、74HC573锁存器(20PIN、SOIC封装)、TLV117稳压组成。主要原理是利用430单片机产生PWM信号,通过573的使能控制一定数量的LED产生同节奏的“呼吸"效果。通过对产生PWM信号的寄存器的设置,可以得到程度不同的“呼吸”效果. (2)如今大多数电子产品都是触碰式按键,可以把流水灯的按键设计成触摸式,实现商品现代化; 8项目总结 基于单片机的流水灯系统设计与实现,充分运用了LED灯通过MSP430单片机为控制核心,多个中断程序控制其亮灭,来实现多样化的亮灭样式,从而使单一的LED灯变得多元化。主要利用的知识点有中断操作、单片机原理知识等,并利用C语言编程,最后制作出一个完善的作品,该作品再经过一定的功能完善和外观制作,符合现代化商场和各市场的装饰,更有利于推广. 附录1电路设计原理图(参考) 附录2 PCB设计原理图(参考) 附录3 关键程序(参考) 功能(1)子程序: voideffect1() { inti,j; for(i=0;i<=8;i++) { P2OUT |= (1<<i); // 1左移i位 delay_ms(200); //延时200MS } for(j=0;j<8;j++) { // 0x80右移j位 P2OUT &=~ (0x80〉〉j); delay_ms(200); //延时200MS } } 功能(2)子程序: voideffect2() { int i,j; for(i=0;i<8;i++) { P2OUT = (1〈〈i); // 1左移i位 delay_ms(200); //延时200MS } for(j=0;j<=8;j++) { P2OUT = (0x80>〉j); // 0x80右移j位 delay_ms(200); //延时200MS } } 主程序: voidmain(void) { WDTCTL = WDTPW + WDTHOLD; // 关闭看门狗 Clock_init(); //时钟设置子程序 IO_init(); //IO口子程序 //_EINT(); __enable_interrupt(); // 中断控制开启 while(1) { switch(a) { case 1: effect1();break; //a==1 执行效果1 case 2: effect2();break; //a==2 执行效果2 case 3: effect3();break; //a==3 执行效果3 case 4: effect4();break; //a==4 执行效果4 case 5: effect5();break; //a==5 执行效果5 case 6: effect6();break; //a==6 执行效果6 default : P2OUT &=~ 0XFF;break; //a为其他结果时 P2口清零 } } } #pragma vector=PORT1_VECTOR __interruptvoidPort_1(void) { //判断P1.3按键是否按下 if(!(P1IN&BIT3)) { delay_ms(100); //延时消抖 if(!(P1IN&BIT3)) { a++; } if(a==7) { a=0; } } P1IFG&=~(BIT3); //消除中断标志 } 外延功能(1)子程序: voideffect3() { int i,j; for(i=0;i〈=4;i++) { P2OUT |= (BIT4〈〈i)+(BIT3>〉i); //BIT4左移i位 BIT3 右移i位 delay_ms(200); //延时200MS } for(j=0;j〈=4;j++) { P2OUT &=~ ((0x01〈<j)+(0x80>〉j)); //0x01 左移j位 0x50右移j位 delay_ms(200); //延时200MS } } 外延功能(2)子程序: voideffect4() { int i,j; for(i=0;i<=4;i++) { P2OUT |= (0x01<<i)+(0x80〉〉i); //0x01 右移i位 0x80 右移 i位 delay_ms(200); //延时200MS } for(j=0;j〈=4;j++) { P2OUT &=~ ((0x10<〈j)+(0x08>〉j)); //0x10 左移j位 0x08右移j位 delay_ms(200); //延时200MS } } 外延功能(3)子程序: voideffect5() { int i; for(i=0;i〈8;i++) { P2OUT ^= 0XFF; //状态反转 delay_ms(100); //延时100MS } } 外延功能(4)子程序: voideffect6() { effect1(); effect2(); effect3(); effect4(); effect5(); } int a=0;- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 流水 系统 设计 实现
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文