- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
流水灯设计
1 引言
近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。在本次课程设计中,本人使用单片机作为这次作业的核心。课程设计通过使单片机和共阴二位数码管,综合应用基础电子电路和单片机的知识,来实现该电路的制作。
本设计包括确定控制任务、系统总体方案设计、硬件系统设计、软件程序的设计等,以便使学生掌握单片机系统设计的总体思路和方法。
2.2 设计内容及要求
单片机的P1.0-P1.7接八个发光二极管L1-L8, P3.0~P3.2口为闪烁方式控制开关K1,K2按键接口。当K1闭合时,实现八个发光二极管从L1到L8轮流循环点亮,当K2闭合时;实现八个发光二极管从L8到L1轮流循环点亮;当K1,K2同时闭合时,实现八个发光二极管从L1到L8再从L8到L1循环点亮。每一个二极管点亮时间为200ms。
2.3 设计方案及原理
流水灯控制设计,大概的设计思路可概括为以下8个步骤:⑴通过累加器A给P1口送二进制数,驱动八个发光二极管,低电平发光,高电平熄灭。⑵编写延时一秒的子程序DELAY,可通过软件定时,也可通过与定时器中断配合来实现。⑶调用DELAY延时程序。⑷送0FFH给P1口,使发光二极管熄灭,再调用DELAY延时程序。使发光二极管点亮。⑸送给寄存器R0,通过DJNZ指令,配合DELAY延时程序,实现发光二极管点亮,后结束。⑹执行RR(循环右移)指令,指向下一个二极管,重复第5步。⑺当P3.0为0,即按下K1时,8个发光二极管从左至右依次点亮,当P3.1为0,即按下K2时,使二极管从右至左一次循环点亮。⑻当P3.0为0, P3.1为0时,即按下K1、K2时,8个发光二极管先从左至右依次点亮,再从右至左一次循环点亮。
单片机中的定时器有四种工作方式,由于工作方式0和工作方式1计数溢出后,计数器都全为0,因此,循环定时或循环计数应用时就存在反复设置计数初值的问题。这不但影响精度,而且也给程序设计带来了不便。于是,选择工作方式2,它具有自动更新重新加载功能,即自动加载计数初值。在这种方式下,把16位计数器分为两部分,即TL作计数器,TH作预置寄存器,初始化时把初值分别装入TL和TH中。为了能够清晰的看见二极管闪烁,选择定时器定时500us,再通过配合DJNZ指令来实现延时200ms的定时。由于,DJNZ中操作数的范围不能达到400,所以选择两条DJNZ指令,一次置200,一次置2,依次循环就可达到要求。
3 硬件的设计
在做本次课程设计时,用到了8051单片机,由于其程序存储器是掩膜ROM,其编程是由半导体制造厂家完成的,即在生产过程中进行编程,当掩膜ROM制造完成后,用户不能更改其内容。因此,选择了型号为27256(32KB)的EPROM作为它的程序存储扩展。同时EA引脚必须有效,方可访问外扩程序存储器。在引脚的连接时,8051单片机的PSEN引脚须接EPROM的OE端,当PESN有效时,允许读出EPROM中的指令码。同时,ALE接74LS373译码器的G引脚,当CPU访问片外存储器时,ALE输出信号作为锁存低8位地址的控制信号,以实现低位地址和数据的隔离。因此,其程序存储器扩展图如图2所示。
单片机的复位操作有上电自动复位和按键自动复位两种方式。上电复位是通过外部复位电路的电容充电来实现的。电容C1选择10uf,电阻选择10K,这样,只要电源VCC的上升时间不超过1ms,就可实现上电复位,即接通电源就完成了系统的复位初始化。
3.1 硬件接线的设计
发光二极管有共阳和共阴接法,此次设计选择了共阳接法,所以可通过给P1口输送低电平就可驱动发光二极管发光,输送高电平就可使发光二极管熄灭。
因此,总体的设计图如图1所示。
图1 流水灯控制设计硬件接线图
3.2 程序存储扩展的设计
外扩程序存储器的空间地址,是由P2口提供高八位地址,P0口分时提供低8位地址和用作8位双向数据总线。在设计硬件接线时,使27256芯片的片选信号CE始终保持有效,低八位A0~A7通过74LS373译码器连接P1口,高七位A8~A14连接P2.0~P2.6。因此其地址范围位0000H~7FFFH。
4 软件设计
4.1 流程图的设计
流水灯控制设计的流程图如图2所示。
图2 流水灯控制流程图
4.2 程序代码的设计
ORG 0000H
文档评论(0)