流水灯的设计与制作

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DJNZR2,NEXT;是否已依次点亮8个二极管
SJMPSTART
DELAY:MOVR3,#0FFH;延时子程序
DEL1: MOVR4,#0FFH
DJNZR4,$
DJNZR3,DEL1
RET
END
4.4Proteus 仿真软件
1、用串行数据通信线连接电路板与仿真器,把仿真器插到电路板的锁紧插座中,请注意仿真器的方向:缺口朝上。
4.1程序流程图…………………………………………………………………9
4.2元件清单……………………………………………………………………9
4.3 参考程序……………………………………………………………………9
4.4Proteus仿真软件…………………………………………………………10
5.结论………………………………………………………………………………10
2.任务描述及设计方案
2.1 任务描述
设计流水灯控制电路,使连接在该电路上的8个发光二极管按顺序依次闪烁;将按键K1按下,8个发光二极管全部处于点亮状态,按下按键K2后,8个发光二极管全灭。
2.2设计方案
为实现此功能,选择用单片机控制的电路。其中系统工作原理为:
我们利用循环移位指令,采用循环程序结构进行编程。我们在程序一开始就给P1口送一个数,这个数本身就让P1.0先低,其他位为高,然后延时一段时间,再让这个数据向高位移动,然后再输出至P1口,这样就实现“流水”效果啦。
引脚描述
VCC:电源电压
GND:地
P0口:
P0口是一组8位漏极开路双向I/O口,即地址/数据总线复用口。作为输出口时,每一个管脚都能够驱动8个TTL电路。当“1”被写入P0口时,每个管脚都能够作为高阻抗输入端。P0口还能够在访问外部数据存储器或程序存储器时,转换地址和数据总线复用,并在这时激活内部的上拉电阻。P0口在闪烁编程时,P0口接收指令,在程序校验时,输出指令,需要接电阻。
3.硬件设计方案
3.1 设计思路
如果要让接在P1.0口的LED1亮起来,那么只要把P1.0口的电平变为低电平就可以了;相反,如果要接在P1.0口的LED1熄灭,就要把P1.0口的电平变为高电平;同理,接在P1.1~P1.7口的其他7个LED的点亮和熄灭的方法同LED1。因此,要实现流水灯功能,我们只要将发光二极管LED1~LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。
6.设计总结
通过这次课程设计,我拓宽了知识面,锻炼了能力,综合素质得到较大提高。而安排课程设计的基本目的,是在于通过理论与实际的结合、人与人的沟通,进一步提高思想觉悟和领悟力。尤其是观察、分析和解决问题的实际工作能力。它的一个重要功能,在于运用学习成果,检验学习成果。运用学习成果,把课堂上学到的系统化的理论知识,尝试性地应用于实际设计工作,并从理论的高度对设计工作的现代化提出一些有针对性的建议和设想。检验学习成果,看一看课堂学习与实际工作到底有多大距离,并通过综合分析,找出学习中存在的不足,以便为完善学习计划,改变学习内容与方法提供实践依据。实际能力的培养至关重要,而这种实际能力的培养单靠课堂教学是远远不够的,必须从课堂走向实践。通过课程设计,让我们找出自身状况与实际需要的差距,并在以后的学习期间及时补充相关知识。课程设计促进了我系人才培养计划的完善和课程设置的调整。在剩下的大学生活里,我应该好好珍惜,好好学习各方面的知识。在单片机方面也是了解了一些些,我相信这次课程设计,不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新可以是在原有的基础上进行改进,使之功能不断完善,成为自己的东西。
PSEN:
程序储存允许输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器读取指令时,每个机器周期两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器时,这两次有效的PSEN 信号不出现。
EA/VPP:
外部访问允许。欲使中央处理器仅访问外部程序存储器,EA端必须保持低电平。需要注意的是:如果加密位LBI被编程,复位时内部会锁存EA端状态。如EA端为高电平,CPU则执行内部程序存储器中的指令。闪烁存储器编程时,该引脚加上+12V的编程允许电压VPP,当然这必须是该器件是使用12V编程电压VPP。
TXD
P3.2
INT0
P3.3
INT1
P3.4
T0
P3.5
T1
P3.6
WR
P3.7
RD
P3口还接收一些用于闪烁存储器编程和程序校验的控制信号。
RST:
复位输入。当震荡器工作时,RET引脚出现两个机器周期以上的高电平将使单片机复位。
ALE/ :
当访问外部程序存储器或数据存储器时,ALE输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE以时钟震荡频率的1/16输出固定的正脉冲信号,因此它可对输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲时,闪烁存储器编程时,这个引脚还用于输入编程脉冲。如果必要,可对特殊寄存器区中的8EH单元的D0位置禁止ALE操作。这个位置后只有一条MOVX和MOVC指令ALE才会被应用。此外,这个引脚会微弱拉高,单片机执行外部程序时,应设置ALE无效。
P3口:
P3口是一组带有内部电阻的8位双向I/O口,P3口输出缓冲故可驱动4个TTL电路。对P3口写如“1”时,它们被内部电阻拉到高电平并可作为输入端时,被外部拉低的P3口将用电阻输出电流。
P3口除了作为一般的I/O口外,更重要的用途是它的第二功能,如下表所示:
端口引脚
第二功能
P3.0
RXD
P3.1
XTAL1:震荡器反相放大器及内部时钟发生器的输入端。
XTAL2:震荡器反相放大器的输出端。
时钟震荡器
AT89C51中有一个用于构成内部震荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自然震荡器。 外接石英晶体及电容C1,C2接在放大器的反馈回路中构成并联震荡电路。对外接电容C1,C2虽然没有十分严格的要求,但电容容量的大小会轻微影响震荡频率的高低、震荡器工作的稳定性、起振的难易程序及温度稳定性。如果使用石英晶体,我们推荐电容使用30PF±10PF,而如果使用陶瓷振荡器建议选择40PF±10PF。用户也可以采用外部时钟。采用外部时钟的电路如图示。这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件要求。
89C51管脚图
4.软件方案
4.1 程序流程图
4.2 元件清单
4.3 参考程序
ORG0000H
LJMPSTART
ORG0030H
START:MOVR2,#08H;设置循环次数
MOVA,#0FEH;送显示模式字
NEXT: MOVP1,A;点亮连接P1.0的发光二极管
ACALLDELAY
RLA;左移一位,改变显示模式字
P1口:
P1口一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动4个TTL电路。对端口写“1”,通过内部的电阻把端口拉到高电平,此时可作为输入口。因为内部有电阻,某个引脚被外部信号拉低时输出一个电流。闪烁编程时和程序校验时,P1口接收低8位地址。
P2口:
P2口是一个内部带有上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动4个TTL电路。对端口写“1”,通过内部的电阻把端口拉到高电平,此时,可作为输入口。因为内部有电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序存储器或16位地址的外部数据存储器时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器时,P2口线上的内容在整个运行期间不变。闪烁编程或校验时,P2口接收高位地址和其它控制信号。
6.设计总结…………………………………………………………………………10
7.参考文献…………………………………………………………………………11
1.引言
学习单片机的最有效方法就是理论与实践并重,用单片机设计与制作流水灯,需要更深的去了解单片机的很多功能,努力的去查找资料,当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。
3.硬件设计方案……………………………………………………………………4
3.1设计思路……………………………………………………………………4
3.2流水灯电路原理图…………………………………………………………5
3.3主要原件功能说明…………………………………………………………5
4.软件方案…………………………………………………………………………9
3.2 流水灯电路原理图
3.3 主要原件功能说明
描述
AT89C51是一个低电压,高性能CMOS8位单片机带有4K字节的可反复擦写的程序存储器(PENROM)。和128字节的存取数据存储器(RAM),这种器件采用ATMEL公司的高密度、不容易丢失存储技术生产,并且能够与MCS-51系列的单片机兼容。片内含有8位中央处理器和闪烁存储单元,有较强的功能的AT89C51单片机能够被应用到控制领域中。
2010—2011学年第二学期控制系统实训




设计题目:流水灯的设计与制作
小组成员:陈 琳(11097241108)
孙钢干(11097242041)
*******
所在班级:09电子信息工程技术(1)班
二〇一一年六月三十日
流水灯的设计与制作
摘要:当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。
7.参考文献
【1】单片机应用技术(第2版)主编:倪志莲
北京理工大学出版社
【2】单片机课程设计指导书主编:皮大能 南光群刘金华
北京理工大学出版社
【3】Protel99主编:吉 雷
西安电子科技大学出版社
关键词:LED 单片机 控制系统 流水灯
1.引言………………………………………………………………………………4
2.任务描述及设计方案……………………………………………………………4
2.1任务描述……………………………………………………………………4
2Hale Waihona Puke Baidu2设计方案……………………………………………………………………4
功能特性
AT89C51提供以下的功能标准:4K字节闪烁存储器,128字节随机存取数据存储器,32个I/O口,2个16位定时/计数器,1个5向量两级中断结构,1个串行通信口,片内震荡器和时钟电路。另外,AT89C51还可以进行0HZ的静态逻辑操作,并支持两种软件的节电模式。闲散方式停止中央处理器的工作,能够允许随机存取数据存储器、定时/计数器、串行通信口及中断系统继续工作。掉电方式保存随机存取数据存储器中的内容,但震荡器停止工作并禁止其它所有部件的工作直到下一个复位。
2、打开KeiluVision2仿真软件,首先建立本项目文件,接着添加源程序,进行编译,直到编译无误。
3、进行软件设置,选择硬件仿真,选择串行口,设置波特率为38400。
4、打开电源,点击开始调试按钮,点击RUN按钮运行程序,观察发光二极管亮灭情况
5.结论
当接通电源后8个发光二极管按从左至右依次闪烁;将按键K1按下,8个发光二极管全部处于点亮状态,按下按键K2后,8个发光二极管全灭。
相关文档
最新文档