ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:627.84KB ,
资源ID:27107870      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27107870.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机课程设计可控流水灯设计.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机课程设计可控流水灯设计.docx

1、单片机课程设计可控流水灯设计摘 要 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。可控流水灯设计要求:对8个LED灯设计5种流水灯显示方式,用一个按键进行方式选择,并用一个数码管显示方式编号;用两个键来控制流水灯流动的速度。在设计中主要采用8051单片机作为主要控制元件;在单片机P2接上8个发光二极管作为流水指示灯,在P0口接上数码管显示编号,显示当

2、前流水灯的流水模式,数码管采取共阳极接法;在P1口的4、5、6位上各接一个按键,一个按键进行方式选择,另外两个按键控制流水灯的流动的速度。在接上复位电路,时钟电路,电源电路以及一些必要的设计与电路,就能设计出一款可控流水灯。关键词 8051单片机 发光二极管 数码管 流水灯 1 引言单片机课程设计主要是为了让我们增进对80C51单片机电路的的感性认识,加深对理论方面的理解。了解软硬件的有关知识,并掌握硬件设计过程、方法及实现,为以后实现应用打下基础。另外,通过简单课题的设计练习,使我们了解各项工程部分,达到巩固并运用所学知识解决实际问题的目的。2 课题综述21 课题的来源当今社会,由单片机芯片

3、控制各种硬件工作的技术也日益成熟,并普及在各个领域,而流水灯在生活中的应用更是广泛,较为贴近生活。所以选择可控流水灯设计这个课题,也是对本学期学习单片机课程的加深与巩固。22 课题的目的与意义通过可控流水灯单片机课程的设计,即那个理论与实践联系在一起,在熟悉基本原理的前提下,提出自己的该方案,完成可控流水灯的设计。23 面临的问题面临的问题就是软件与硬件方面:软件方面,要实现按键对数码管的逻辑控制,在控制流水灯点亮;硬件方面,就是先要绘制protel原理图,在绘制原理图时要有电源电路,USB、串口电路,单片机还要有复位电路、时钟电路,以及三个按键要接在P1口,数码管接在P0口,LED灯接在P2

4、口3 系统设计31 总体设计使80C51芯片作为控制主体;三个按键中,第二个按键作为控制数码管显示以及相应的流水灯显示,其他两个按键作为控制流水灯流水速度;数码管显示流水灯显示方式,8个放光二极管作为LED显示流水灯。另外外接复位电路,电源电路,时钟电路,系统对外连接的串口用MAX232芯片完成。模块区域图如下: 图3-1 模块区域图32 硬件原理图图3-2硬件原理图3.3 硬件焊接图图3-3硬件焊接图1图3-3硬件焊接图234 软件设计软件设计部分的方法与函数嵌套、调用函数的方法。要实现按键控制数码管显示数字,还要在显示对应的数字时使8个显示相应的流水灯,所以在P1.5口出现一个低电平时就会

5、被调到其他的函数区域执行,点亮数码管,是数码管显示出相应的数字,然后依然是通过调用函数的方法,使LED灯点亮,课题的要求是显示流水灯,要有一亮一灭的效果,所以在此函数里放一个循环,一个循环左移,这样也就产生了流水灯的效果,接着下面就是这样循环下去,最后按复位键复位。4 代码编写 ORG 0000H SJMP MAINMAIN: /MOV A,P1 ;读入P1口状态 /ANL A,#20H ;屏蔽无效位 MOV P0 ,#0FFH LCALL WAITFS1: MOV A,#0F9H MOV P0 ,A ;数码管显示数字1 MOV R2 ,#08H MOV A,#0FEHLOOP1: MOV P

6、2 ,A LCALL DELAY RL A DJNZ R2 ,LOOP1 LCALL WAITFS2: MOV A,#0A4H MOV P0 ,A ;数码管显示数字2 MOV R2 ,#08H MOV A,#0FEHLOOP2: MOV P2 ,A LCALL DELAY RL A RL A DJNZ R2 ,LOOP2 LCALL WAITFS3: MOV A,#0B0H MOV P0 ,A ;显示3 MOV R2 ,#08H MOV A,#0FEHLOOP3: MOV P2 ,A LCALL DELAY RL A RL A RL A DJNZ R2 ,LOOP3 LCALL WAITFS4

7、: MOV A,#99H MOV P0 ,A ;显示4 MOV R2 ,#08H MOV A,#0FEHLOOP4: MOV P2 ,A LCALL DELAY RL A RL A RL A RL A DJNZ R2 ,LOOP4 LCALL WAITFS5: MOV A,#92H MOV P0 ,A ;显示5 MOV R2 ,#08H MOV A,#0FEHLOOP5: MOV P2 ,A LCALL DELAY RL A RL A RL A RL A RL A DJNZ R2 ,LOOP5 LJMP MAINDELAY: MOV A,P1 ;读入P1口状态 ANL A,#10H CJNE

8、A,#00H ,DELAY2 ;S2是否按下 MOV R7 ,#0FFH ;1sDELAY1: MOV R6 ,#0FFHDELAY0: NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP DJNZ R6 ,DELAY0 DJNZ R7 ,DELAY1 RETWAIT: FDG: MOV A,P1 ;读入p1口状态 ANL A,#20H CJNE A,#20H ,LET ;判断S1是否按下 JMP FDGLET: LCALL DE MOV A,P1 ;读入P1口状态 ANL A,#20H CJNE A,#20H ,LEFT ;判断S1是否按下 JMP FDG

9、LEFT: MOV A,P1 ANL A,#20H CJNE A,#20H ,LEFT RETDELAY2: MOV A ,P1 ANL A ,#40H CJNE A,#00H ,ERR ;判断S3是够按下 MOV R7 ,#0FFH ;延时1SDELAY3: MOV R6 ,#0FFHDELAY4: NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP DJNZ R6 ,DELAY4 DJNZ R7 ,DELAY3 RETDE : MOV R7 ,#28HLAP6: MOV R6 ,#64H DJNZ R6 ,$ DJNZ R7,LAP6 RETERR: RET E

10、ND5 系统调试将编写好的汇编语言代码用Keil进行编译后,修改出现的错误,待无错误后将程序下载到单片机中,运行可控流水灯系统。总 结这次课程设计是一周的时间,虽说时间不短,但是这之间完成的任务量还是挺大的,要绘制protel原理图,然后对照着原理图焊接,然后写代码,调试在运行。所以这个礼拜时间上都是很紧凑,同时也很充实。首先在硬件电路上,有一个正确的protel原理图是很关键的,一切硬件包括代码都是依照这个,老师在这个方面帮助了我们很大的忙,帮我们预先设计的很多的电路,以及电阻、电容的取值大小,然后有不懂的也给我们细心讲解,很感谢老师,上午原理图基本上就成型了,接着就是焊接电路,焊接电路时要

11、格外的细心,不能焊错引脚,然后还要小心,电烙铁很烫,不能烫伤。焊接电路时,在布局上也是一大讲究,要充分考虑电路板的大小与待焊接原件的大小,该紧凑的地方要紧凑,然后整体分布要均匀,要能体现一个一个的功能模块,这样在电路发生错误的情况下也便于找出错误的所在,还有一点好处是接线时也很方便。上面是说的硬件方面,下面说说软件代码不是太成功,主要原因是对单片机的硬件资源还不是太透彻的理解,代码方面要注意的是也要实现功能模块化,以函数与调用函数的形式体现出来,当然第一步是要能对单片机汇编语言很理解,然后怎么去调用函数,实现功能。软硬件都完成后就是整合,单片机是软硬件的结合,我在这个过程中出现过很多的错误,主

12、要是硬件方面,有的是电容正负接反了,有的是线掉了。这个过程真正意义上找错误,自我完善的过程。另外就是在这个过程中与同学加强合作很重要,这样效率很高,然后要勤于问老师,这样也会进步的很快。 致 谢这一次,能够在一周的时间里顺利的完成此次单片机的课程设计,首先最想要感谢的是我的指导老师,戴俊峰老师,老师在一周时间里,耗费许多的精力与体力对我们进行悉心的指导与帮助,在这一周时间里,在焊接电路、调试程序时,老师总能陪在我们身旁,细心的为我们解答遇到的问题,帮我们解决困难。在此衷心的感谢老师为我们做出的牺牲!此外感谢淮阴工学院和计算机工程学院为我们提供很好的实践机会。 也要感谢实验室的工作人员为我们提供

13、了舒适的实验环境,还要感谢学校的图书馆为我们提供了丰富的书籍资料以方便我们借阅,在此过程中我遇到许多问题,通过查阅书籍得以解决,谢谢那些优秀书籍的作者,感谢你们的指导!在此次课程设计中得到了同学的帮助,能够与他们一起探索,一起研究解决问题,在互帮互助中我找到自己的不足,在此向帮助过我的同学表示感谢! 课程设计是我们实践的一个重要经历,是我们锻炼自己实践能力的关键环节,一周的课程设计需要许多方面的帮助才能完成,在此再次向所有帮助过我的人表示感谢!参 考 文 献1 李广弟,朱秀月,冷祖祁.单片机基础(第三版).北京:北京航空航天大学出版社,2007 2 蔡美琴、张为民MCS-51系列单片机系统及其应用.第二版.北京:高等数学出版社,20043 张培仁基于C语言编程MCS-51单片机原理与应用M.北京:清华大学出版社,20034 胡汉才.单片机原理及系统设计. 北京:清华大学出版社,2002 5 南建辉,熊鸣,王军茹.MCS-51单片机原理及应用实例. 北京:清华大学出版社,2004 .

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1