您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > 单片机课程设计跑马灯的控制
单片机课程设计跑马灯的控制摘要:本设计选择对跑马灯的控制,先构思跑马灯实现预想效果,然后进行分析,根据要求编写程序,选择硬件端口,并进行调试致预想效果,最后浅谈课程设计的经历,以及总结。目录一)课程设计的目的二)课程设计的要求三)流程图四)原理图五)程序语言六)总结七)参考资料设计题目:试设计一个闪烁跑马灯控制器,该控制器可以控制8个灯顺序亮灭。当单片机上电后,8个灯依次从左向右亮,并且每个灯亮的时间为1秒钟。这时,如果按钮K1按下,则灯亮的顺序是从右向左,同样,每个灯亮的时间是1秒钟。这时,如果按下按钮K2,则此时,4个灯亮4个灯灭,延迟4秒钟以后,又开始从左向右点亮。最后,若按下按钮K3,则全部灯亮。此时若想再次点亮灯,必须重新上电。题目分析:该题目要求控制8盏灯的亮灭,可使用单片机的P1.0到P1.8口来控制。按钮K1用P3.4口,K2用P3.2口,及外部中断0,K3用P3.3口,及外部中断1,分别来实现。单片机使用AT89C52,电源使用5V标准电源。顺序亮灭使用外部中断源构成循环控制语句。一、课程设计的目的课程设计是本专业集中实践环节的主要内容之一。训练正确地应用单片机,培养解决工业控制、工业检测等领域具体问题的能力。学生通过所做课题,熟悉单片机应用系统开发研制的过程,软硬件设计的工作方法、内容及步骤,对学生进行基本技能训练。例如组成系统、编程、调试、绘图等。使学生理论联系实际,提高动手能力和分析问题、解决问题的能力。通过本课程设计,主要达到以下目的:1.使学生增进对单片机的感性认识,加深对单片机理论方面的理解。2.使学生掌握单片机的内部功能模块的应用,如定时器/计数器、中断、片内外存贮器、I/O口、串行口通讯等。3.使学生了解和掌握单片机应用系统的软/硬件设计过程、方法及实现,为以后设计和实现单片机应用系统打下良好基础。二、课程设计的要求1.学生需认真阅读课程设计任务书,熟悉有关设计资料及参考资料,熟悉各种设计规范的有关内容,认真完成任务书规定的设计内容。2.课程设计的成果为“课程设计报告”。课程设计报告内容要正确,概念要清楚,完成任务书所规定的内容,附有原理图及程序流程图,程序清单,文字要通顺,书写要工整,设计图纸必须符合规范。3.课程设计报告应在2000字以上(含相关图纸和计划书等),用A4纸打印。三、流程图主程序流程图外部中断0流程图:外部中断1流程图四、原理图:原理图说明:该设计选用一块AT89C52型单片机,使用其P0口,P3口的部分。P0口作为发光二极管的控制信号输出端,P3.0作为按钮K1的信号输入口,P3.2为按钮K2外部中断0信息输入口,P3.3作为K3外部中断0的信息输入口。单片机晶振频率为12MHz,每个机器周期1µs。电源使用5v直流电。五、程序语言:ORG0000H:程序入口地址AJMPMAINORG0003H:外部中断0入口地址AJMPZD0ORG0013H:外部中断1入口地址AJMPZD1ORG0100H:主程序入口地址MAIN:MOVSP,#40H:初始化,开外部中断1,外部中断0,以及总中断,并且将外部中断1设为最高优先级,并且是脉冲触发方式。MOVIE,#85HMOVIP,#04HMOVTCON,#01HYYY:MOVA,#7FH:将A寄存器中存入7FH.SETBP3.4JBP3.4,PPP:判断按键K1是否按下,如果没有按下则跳转到PPP,灯从左到右依次点亮。CLRCy:进位位清零MOVA,#0FFH:A中存入FFH.MMM:RLCA:A中数据带进位位左移一位。MOVP2,A:将A中数据送到P0口,灯亮且延迟1秒。ACALLDELAYSETBP3.4JBP3.4,PPP:判断K1是否按下,若按下则跳转到MMM,没有则跳转到PPP,灯依次从左向右亮,且没亮一次,延迟1秒SJMPMMMPPP:MOVP2,AA中数据转到P0口,点亮灯。RRA:A中数据右移一位ACALLDELAY:调用一秒延迟SETBP3.4JNBP3.4,YYY:判断K1按键是否按下,按下则跳转到YYY,没有则跳转到PPPSJMPPPPZD0:MOVA,#0FFH:外部中断0,将FFH送入A寄存器中,再送到P0口,灯全灭,且延迟4秒钟,后再循环亮。MOVP2,AACALLDELAYACALLDELAYACALLDELAYACALLDELAYAJMPMAINRETI:中断程序返回ZD1:MOVA,#0FFH:A寄存器中存入FFH,再送到P0口,灯灭,MOVP0,AAJMP$:本地一直循环RETI:中断返回DELAY:MOVR5,#25:延迟4秒子程序D1:MOVR6,#200D2:MOVR7,#100DJNZR7,$DJNZR6,D2DJNZR5,D1RET:子程序返回END:程序结束调试说明:打开c51软件,新建工程gao,新建文件,输入以上程序,以.asm格式保存。在gao工程中添加输入好的程序。点击编译,对有错误地方修改。选择生成HEX文件,再编译,此时已经生成HEX文件。打开AVR烧录软件,将生成好的HEX文件下载到单片机机中,观察单片机的对应发光二极管的状态,看是否与设计预想一致。若不一致,在C51里修改相应地方,再重新编译下载,直至与预想一致。六、总结单片机课程设计是一个很好的实践环节,它将我们所学的课堂知识与实践生活结合,使我们所学知识得到加固。以前的课程都是理论知识的学习,感觉有些抽象,学习起来也比较乏味,没有主观的学习热情。这次课程设计的主要收获就是在运用知识的过程中让我对单片机产生了浓厚的兴趣,课后自己还亲手制作单片机,从而对单片机的结构更加了解,将硬件与软件知识完美的结合。从而增加了我对知识的渴望,这也许就是主观的学习积极性。老师的指导也是是很重要的,众所周知,实践中,经验占据重要地位。老师的经验和知识都要多于我们。通过老师的指导,使我们的试验过程更加轻松,受益匪浅。总之,这次课设不仅使我了解了单片机的开发流程,更加地理解运用了知识,而且更重要的是收获了知识以外的学问,这才是我受用一生的。七、参考资料:牛昱光主编《单片机原理与接口技术》电子工业出版社51单片机实验指导书胡汉才主编《单片机原理及其应用》清华大学出版社出版何立民主编《单片机应用文集》北京航空航天大学出版社出版天津锐志单片机学习资料
本文标题:单片机课程设计跑马灯的控制
链接地址:https://www.777doc.com/doc-1903325 .html