基于单片机的流水灯设计
- 格式:doc
- 大小:328.50 KB
- 文档页数:10
目录摘要 (1)关键词 (1)Abstract (2)Keyword (2)1 AT89C51单片机简介 (3)1.1 单片机的发展 (3)1.2 单片机的分类 (3)1.3 AT89C51的介绍 (3)1.3.1 AT89C51的结构 (3)1.3.2 AT89C51主要特性 (4)1.3.3 AT89C51的管脚说明 (4)2 keilc软件及ledkey控件介绍 (6)2.1 keilc软件介绍 (6)2.2 ledkey控件介绍 (7)2.2.1 ledkey控件的开发 (7)2.2.2 ledkey控件原理图 (7)2.2.4 ledkey控件的使用 (7)2.2.5举例说明 (8)3多花样流水灯硬件设计 (9)3.1 Ledkey控件原理图 (9)3.2 功能介绍 (9)4多花样流水灯软件设计 (11)4.1程序功能 (11)4.2程序流程图 (12)5 多花样流水灯的仿真 (13)结语 (14)参考文献 (15)附录1:花样流水灯的程序代码 (16)附录2:花样流水灯功能表 (19)附录3:keilc软件和ledkey控件介绍相关图片 (20)基于AT89C51单片机和keilc软件的流水灯设计摘要:本文介绍了花样流水灯的软件设计过程,重点给出了其软件编程的方法,使学者对汇编语言有个初步了解。
通过对单片机发展、分类、硬件原理图的介绍,特别是AT89C51的介绍,具体到其结构、特性、管脚说明等,让单片机学者对51系列单片机有了初步的认识。
在程序实现方面通过文字说明和相应的图片又充分的介绍了keil软件及控件使用方法。
关键词:单片机;编程;控件;仿真Design of glide light base on single chip of AT89C51 and keilcsoftwareAbstract:This paper introduces an software design procedure for multiform pomadeng,especially lies out the method of the program software, so that scholars can have a preliminary understand for program language. According to introduce the development, sort of single chip and hardware illustrative diagram, especially the introduce of AT89C51, in particular , referring to the explain of its structure , specialty ,pin’ instruction. For this introduce , the scholars of single chip can have an initial understand for the sort of single chip. And then We have sufficient introduce for the keil software and widget of using method by means of the words and pictures, in aspect of the program’ realization.Key word: single chip; program; widget; emulate1 AT89C51单片机简介1.1单片机的发展单片机(又称为微控制器)的出现是计算机发展史上的一个重要里程碑,它以体积小、功能全、性价比高等诸多优点而独具特色,在工业控制、尖端武器、通信设备、信息处理、家用电器等嵌入式应用领域中独占熬头。
基于51单片机的流水灯设计51单片机是一种常用的微控制器,它具有高性价比、易于编程和广泛的应用范围。
流水灯是一种常见的电子灯光装置,它通过类似于瀑布般的效果,逐个点亮一系列的灯。
本文将介绍基于51单片机的流水灯的设计。
流水灯的设计过程可以分为硬件设计和软件设计两个步骤。
硬件设计:在硬件设计方面,我们需要准备以下器件和材料:1.51单片机开发板2.杜邦线3.LED灯4.电阻接下来,根据流水灯的设计思路,将多个LED灯连接在一起,形成一个线性的灯带。
为了控制LED灯的亮灭,我们需要使用51单片机的GPIO 口来提供高低电平信号。
通过改变GPIO口的输出信号,我们可以实现各个LED灯的顺序点亮和熄灭。
软件设计:在软件设计方面,我们需要使用到汇编或C语言来编写控制程序。
以下是一个简单的流水灯程序的伪代码:```1.初始化51单片机的GPIO口方向,设置为输出模式2. 定义一个存储灯光模式的数组,比如`light_pattern[] = {0xFF, 0x7F, 0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x01}`3.定义一个循环计数器`i`4.进入无限循环5. 通过将`light_pattern[i]`的值写入GPIO口,控制LED灯的亮灭6.延时一定时间(比如几百毫秒)7.更新循环计数器`i`8.如果`i`超过了数组的长度,将其重置为09.结束循环```在程序中,我们可以通过循环计数器`i`来依次点亮和熄灭LED灯。
通过不断更新`i`的值,我们可以实现灯光模式的循环播放。
总结:。
基于51单片机的流水灯毕业设计方案:一、引言流水灯是一种常见的电子设计项目,适合初学者练习和毕业设计。
通过使用51单片机和少量外围元件,可以实现一个简单而有趣的流水灯效果。
本文将介绍基于51单片机的流水灯设计方案,包括硬件连接、软件程序设计和效果展示等内容。
二、硬件设计1. 材料准备:51单片机(如STC89C52)、LED灯若干(建议4-8个)、电阻、面包板、连线等。
2. 连接方式:将LED灯按顺序连接到51单片机的IO口,每个LED 灯通过一个电阻连接到IO口,确保电流限制。
3. 电源供应:连接电源至电路板,保证正常工作电压和电流。
三、软件设计1. 编程环境:使用Keil C51等集成开发环境进行程序编写。
2. 程序设计:设计一个循环移位的程序,控制51单片机的IO口依次点亮LED灯,形成流水灯效果。
3. 定时控制:通过定时器中断或延时函数控制LED灯的亮灭时间,实现流水灯的效果。
四、效果展示1. 烧录程序:将编写好的程序烧录到51单片机中。
2. 调试测试:连接电路并通电,观察LED灯按顺序点亮并流动的效果。
3. 优化改进:根据实际效果调整程序和硬件设计,优化流水灯的效果和稳定性。
五、注意事项1. 电路连接:确保电路连接正确,避免短路或接反现象。
2. 程序设计:合理设计程序逻辑,确保LED灯的流水效果符合预期。
3. 调试测试:在调试过程中注意观察LED灯的亮暗情况,及时发现问题并进行调整。
六、总结基于51单片机的流水灯设计是一个适合初学者和毕业设计的简单而有趣的项目,通过设计和实现可以提升对单片机编程和电路连接的理解和技能。
希望通过本文的介绍,读者能够顺利完成基于51单片机的流水灯毕业设计,并在实践中不断提升自己的电子设计能力。
《单片机原理及应用》基于51单片机实验箱的流水灯设计一、实验目的和要求1.掌握单片机基本资源使用。
2.掌握单片机电路原理图。
3.掌握单片机C语言软件开发以及试验箱使用。
二、实验内容和原理实验内容:1.绘制程序流程图并编写C语言程序2.在实验箱中进行测试,最后提交实验报告三、主要仪器设备Keil4软件、C51单片机实验箱。
四、操作方法与实验步骤4.1 题目要求使用单片机实验箱实现流水灯功能。
4.2 系统设计思路主程序中实现流水灯功能,时间单位采用500ms信号,作为实现流水灯的发光二极管和单片机的P1相连。
4.2 C程序编制(包含详细的文字和程序流程图)#include<intrins.h>#include<reg52.h>#define uchar unsiged char#define uint unsigned intvoid mDelay(uint Delay){int i;for(;Delay>0;Delay--)for(i=0;i<110;i++);}void main(){unsigned char a,i;While(1){a=0x01;for(i=0;i<8;i++){a=-crol-(a,1)P2=amDelay(500);}}4.3 测试分析(包含文字和图像叙述)在KeilC51软件软件中编写好程序并调试好后,连接单片机实验箱,实验结果如下:实验箱上连接的八个灯,每个灯间隔500ms的时间一个接一个的循环闪烁。
五、讨论和心得(不少于100字)通过此次实验,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,试验过程还是比较繁琐,但是还是完成了这次试验,使我对于理解单片机的基本原理更加深刻,将所学知识运用到实践中,在实践中发现问题,强化理论知识。
课程名称:单片机原理及应用实验项目名称(二):定时计数器的应用—按钮控制LED灯四、实验目的和要求1.掌握单片机基本资源使用。
目录引言 --------------------------------------------------------------------------------------------------------------------- - 1 -第一章总体设计方案 ---------------------------------------------------------------------------------------- - 3 -1.1设计思路 ---------------------------------------------------------------------------------------------------- - 3 -1.2原件清单 ---------------------------------------------------------------------------------------------------- - 4 -第二章电路设计与分析------------------------------------------------------------------------------------- - 5 -2.1 AT89C51----------------------------------------------------------------------------------------------------- - 5 -2.1.1主要特性---------------------------------------------------------------------------------------------- - 5 -2.1.2 2.1.2 管脚说明管脚说明 --------------------------------------------------------------------------------------------- - 5 -2.1.3 AT89C51单片机的P 口特点 ------------------------------------------------------------------------ - 7 -2.2 2.2 设计原理图设计原理图 ------------------------------------------------------------------------------------------------ - 9 -第三章软件设计与分析---------------------------------------------------------------------- - 11 -3.1位控法 ------------------------------------------------------------------------------------------------------ - 11 -3.2 proteus 仿真--------------------------------------------------------------------------------------------- - 14 -第四章总结与致谢------------------------------------------------------------------------------------------- - 15 -4.1总结 --------------------------------------------------------------------------------------------------------- - 15 -4.2致谢 --------------------------------------------------------------------------------------------------------- - 18 -参考文献------------------------------------------------------------------------------------------------------------- - 19 -附录1 ----------------------------------------------------------------------------------------------------------------- - 21 -附录2 ----------------------------------------------------------------------------------------------------------------- - 23 -引言当今社会,这种由单片机芯片控制各种硬件工作的技术也日益成熟,并普及在交通、化工、机械等各个领域。
黄河科技学院LED流水灯的设置LED流水灯的设计引言发光二极管(LED),是一种把电能变成光能的特种器件,主要由PN结芯片、电极和光学系统构成。
当系统受到外界激发后,会从稳定的低能态跃迁到不稳定的高能态,当系统由不稳定的高能态重新回到稳定的低能态时,能量差以光的形式辐射出来,就会产生发光现象。
当在PN结上加以正向电压之后,P区的空穴注入至N区,N区的电子注入至P区,相互注入的电子与空穴相遇后即产生复合,这些多数载流子在结的注入和复合中产生辐射而发光。
它是自发辐射发光,不需要较高的注入电流产生粒子数反转分布,也不需要光学谐振腔,发射的是非相干光。
LED大约是在80年代中期开始在电子显示屏中使用的。
进入90年代以后,由于半导体工业的迅猛发展,带动了LED制造材料和工艺的改进,在颜色与亮度方面都有了质的飞跃。
早期的LED显示屏,由于受材料和工艺的限制,视角仅有200-300左右,从而制约了LED显示屏的发展。
在分辨率方而,由于受当时数字技术、集成电路技术和控制技术等技术的限制,很难作出高密度的LED显示屏。
今后随着半导体工业的不断发展,无论是材料,还是加工工艺,都会不断地提高,LED显示屏在颜色、视角、亮度、密度、寿命等方面也会逐步完善,价格也会进一步降低。
目前LED产业大多以2英寸或4英寸的蓝宝石基板为主,如能采用硅基氮化镓技术,至少可节省75%的原料成本。
据日本三垦电气公司估计,使用硅衬底制作大尺寸蓝光氮化镓LED的制造成本将比蓝宝石衬底和碳化硅衬底低90%。
国内外芯片技术差异很大,在国外,欧司朗、美国普瑞、日本三垦等一流企业已经在大尺寸硅衬底氮化镓基LED研究上取得突破,飞利浦、韩国三星、LG、日本东芝等国际LED巨头也掀起了一股硅衬底上氮化镓基LED的研究热潮。
其中,在2011年,美国普瑞在8英寸硅衬底上研发出高光效氮化镓基LED,取得了与蓝宝石及碳化硅衬底上顶尖水平的LED器件性能相媲美的发光效率160lm/W;在2012年,欧司朗成功生产出6英寸硅衬底氮化镓基LED。
摘要摘要计算机技术的飞速发展和提高,把我们带入了崭新的时代,现在,计算机的应用已经深入到千家万户。
单片微型计算机是制作在一块集成电路芯片上的计算机,简称单片机。
单片机在现在社会有着广泛的应用,小到人们的日常电子用品,大到航天飞机、宇宙飞船,上面都有单片机的广泛应用。
单片机具有体积小、功能强大、低功耗、应用广泛等特点。
以AT公司的芯片AT89C51 单片机来实现流水灯的设计。
本系统由单片机控制,I/O口接LED的负极,而LED的正极则直接与5V电源相连。
通过I/O口输出的低电平点亮LED灯。
因此可以通过控制单片机的I/O口的电平高低以达到控制LED,从而实现不同花样的流水灯的目的。
关键词:LED,单片机,高低电平变化ABSTRACTThe rapid development of computer technology and improving, bring us to the new era, now, the application of computer has been deep into the thousands. Single chip microcomputer is made on an integrated circuit chip computer, hereinafter referred to as single chip microcomputer. SCM has been widely used in the present society, small to People's Daily electronic products, big to aerospace aircraft, spacecraft, above has the wide application of single-chip microcomputer. SCM has small volume, powerful function, low power consumption, wide application, etc. AT the company's chip AT89C51 single-chip microcomputer to realize the water lamp design. This system controlled by single chip microcomputer, I/O ports connect the LED the cathode, and LED the anode is directly connected to 5V power supply. Through the I/O port output low level light leds. So you can single chip microcomputer control through the I/O ports to control LED, the level of high and low so as to realize the purpose of the different pattern of flowing water light.Key words:LED , MCU ,High and Low output leve目录第1章引言 (1)1.1 研究背景及意义 (1)1.2 国内外研究现状以及本系统的重点问题 (1)1.3 本文章节安排 (2)第2章系统设计方案论证 (3)2.1 控制器模块方案论证 (3)2.2 键盘模块方案 (4)2.3 电源模块方案 (4)第3章系统硬件设计方案 (5)3.1 系统设计框图 (5)3.2 硬件电路设计 (5)3.2.1 电源电路 (5)3.2.2 单片机89C52最小系统 (6)3.2.3 按键电路 (13)3.3.4 LED灯电路 (13)第4章程序设计及软件仿真 (15)4.1 软件设计框图 (15)4.2 软件开发平台选择 (15)4.3 软件系统功能模块 (16)4.3.1 初始化模块 (16)4.3.2 延时函数 (17)4.3.3 定时器控制模块 (17)4.3.4 键盘扫描模式 (17)4.3.5 LED灯输出控制模块 (18)4.4 程序调试仿真 (19)4.4.1 仿真平台介绍 (19)4.4.2 仿真测试 (19)第5章硬件调试 (21)5.1 硬件设计 (21)5.2 硬件调试 (21)5.2.1 下载功能调试 (21)5.2.2 LED电路测试 (21)5.2.3 模式选择功能调试 (22)5.2.4 速度加减功能调试 (22)5.2.5 复位电路调试 (22)5.2.6 稳定性测试 (22)总结 (23)致谢 (25)参考文献 (26)附录 (27)附录一:原理图 (27)附录二:硬件实物 (28)附录三:程序代码 (29)第1章引言第1章引言1.1 研究背景及意义现如今,随着集成化芯片的飞速发展,分立元件或数字逻辑电路正逐步被集成电路所取代,而单片机作为一种集成电路,其价格低廉,且可靠性强、控制简单但控制方法多样。
目录摘要 (1)ABSTRACT (2)前言 (3)第1章系统方案设计 (4)1.1 系统总体设计方案 (4)1.2 基本功能简介 (4)1.3 系统程序 (4)第2章8051单片机原理分析及硬件电路 (6)2.1 8051单片机简述 (6)2.1.1 8051单片机的基本组成 (6)2.1.2 8051的信号引脚 (8)2.2 晶体振荡电路 (10)2.3 上电复位电路 (11)2.4 8051单片机的并行I/O口 (12)2.5 8051单片机的中断系统 (12)2.6 8051单片机的定时/计数器 (13)2.6.1 定时/计数器的定时功能 (13)2.6.2 用于定时/计数器控制的寄存器 (14)第3章8051单片机与8155的接口设计 (15)3.1 并行I/O接口8155 (15)3.1.1 8155内部功能结构及引脚 (15)3.1.2 作片外RAM使用 (16)3.1.3 作扩展I/O口使用 (16)3.1.4 I/O口的工作方式 (18)3.1.5 定时/计数器使用 (18)3.28051单片机并行I/O扩展 (19)3.2.1 8051并行扩展总线 (19)3.2.2 8051单片机与8155的接口 (19)第4章单片机与8155的接口设计的应用 (21)4.1 LED显示 (21)4.2 按键扫描 (22)第5章结论 (24)参考文献 (26)毕业设计小结 (27)附录 (28)摘要二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。
不过,这种电脑,通常是指个人计算机,简称PC机。
它由主机、键盘、显示器等组成。
还有一类计算机,大多数人却不怎么熟悉。
这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。
顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。
因为它体积小,通常都藏在被控机械的“肚子”里。
它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。
基于单片机的流水灯设计摘要:随着时代的变化,很多商品在确保其性能前提下也开始变得更加美观大方。
在其中LED流水灯的运用也越来越广泛下去。
利用单片机加以控制促使LED造成流水实际效果因为价格低廉,实际操作方便快捷而便备受欢迎。
文中选择用C51单片机利用C语言程序编写操纵LED小灯的闪动,利用单片机P0-P3口输出高低电平差别促使不同类型的小灯产生不同类型的明暗度转变进而产生流水效果。
并引入for语句和分数句子进行流水灯款式的循环和自动选择。
关键字:流水灯,单片机,C语言,LED小灯1引言1.1设计背景LED灯在现代社会中一直都拥有广泛应用,其便宜实惠能够在很大程度上满足人们在各个领域里的要求,比如广告牌子、工业控制系统的操作面板等具有流水灯的运用。
在这样的新趋势状态下那就需要开专门自动控制系统,而利用单片机制作出来的流水灯的自动控制系统因为省时省力简单实用。
可以在很大程度上达到也支持现阶段的必须。
而且利用了单片机的结构有很多相近计时器、存储器能够很容易地进行针对小灯控制。
其简单实用的特点也是具备主要代表实际意义。
1.2需求分析报告应用8051系列产品单片机进行心型流水灯的设计方案,利用单片机导出高低电平的改变来促使小灯闪动进而实现循环系统流水,而且在尽可能美观大方前提下开发出更多的小灯闪动款式。
2设计2.1总体方案设计总体目标此次课题研究选用AT89S51单片机完成LED小灯闪烁的实际效果。
与此同时加入复位电路。
复位后闪动款式则再次开始。
而且在确保电源电路没有问题的情形下尽可能进行更多小灯闪动款式,以保证其美观度。
2.2总体方案设计框架图应用5V电压源根据联接USB接口立即供电系统。
依据在单片机及内部结构烧提前准备好的系统控制单片机P0-P3口的高低电平转变促使小灯产生变化。
并加入复位电路,当复位按键启动时,小灯状态将回应至最初的状态。
3 AT89C51单片机单片机全称是片式微型机,也被称为单片微控制板,经过不断的技术升级和优化,现在的单片机已经将一个基本上完整的、可以实现电子计算机基本要素的元器件集成化于一块微处理芯片之中。
基于单片机的流水灯设计目录1 总体设计方案 (2)1.1设计功能及要求 (2)1.2设计方案 (2)1.2.1 硬件设计方案 (2)1.2.2 软件设计方案 (2)2 硬件设计 (3)2.1串口工作电路设计 (3)2.2单片机核心电路设计 (4)2.3发光二极管连接电路 (6)3 软件设计 (7)3.1主程序 (8)3.2子程序1 (9)3.3子程序2 (9)3.4子程序3 (9)3.5子程序4 (9)3.6子程序5 (9)3.7子程序6 (10)3.8子程序7 (10)4 课程设计体会 (10)1 总体设计方案1.1设计功能及要求现代都市夜景少不了霓虹灯的点缀,本课程设计选择模拟都市霓虹灯的亮灭情况,即用单片机实现流水灯控制,实现花样灯得控制。
如让灯一个接一个的亮,或者让灯隔一个灯亮等。
1.2 设计方案流水灯总体设计框图如下图所示。
1.2.1 硬件设计方案本小车主要采用STC89C52单片机作为控制二极管的发光情况从而实现流水灯控制。
采用美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5V单电源供电的MAX232芯片,为下载程序提供数据传送通道。
1.2.2 软件设计方案采用汇编语言的编程方法,对STC89C52单片机的输出引脚进行控制,从而达到流水灯控制。
2 硬件设计流水灯的总体硬件设计电路图如下图所示2.1串口工作电路设计串口电路的设计主要采用MAX232,主要实现对单片机STC89C52的程序载入。
MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5V单电源供电。
其封装入图所示。
引脚分三大部分。
第一部分是电荷泵电路,由1、2、3、4、5、6脚和4只电容构成。
功能是产生+12V和-12V两个电源,提供给RS-232串口电平的需要。
第二部分是数据转换通道,由7、8、9、10、11、12、13、14脚构成两个数据通道。
其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。
8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。
TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。
第三部分是供电。
15脚GND、16脚VCC(+5V)。
MAX232符合所有的RS-232C技术标准,它只需要单一 +5V电源供电,其片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V- 。
此外MAX232功耗低,典型供电电流5MA ,其内部集成2个RS-232C驱动器和两个RS-232C接收器。
MAX232高集成度,片外最低只需4个电容即可工作。
在流水灯硬件设计电路中电容器选择标注为104的电容,即电容的大小为10PF。
由于RS232电平较高,在接通时产生的瞬时电涌非常高,很有可能击毁MAX232,所以在使用中应尽量避免热插拔。
流水灯的串口设计电路如下图所示,其接法是标准的MAX232的接法。
2.2 单片机核心电路设计流水灯的设计主要是基于STC89C52单片机而设计的。
89C52是INTEL公司MCS-51系列单片机中基本的产品,它采用INTEL公司可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。
它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,它基于标准的MCS-51单片机体系结构和指令系统,属于80C51增强型单片机版本,集成了时钟输出和向上或向下计数器等更多的功能,适合于类似马达控制等应用场合。
89C52内置8位中央处理单元、256字节内部数据存储器RAM、8K片内程序存储器(ROM)32个双向输入/输出(I/O)口、3个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。
此外,89C52还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。
在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能。
掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。
89C52有PDIP(40PIN)和PLCC(44PIN)两种封装形式。
89C51的管脚VCC为供电电压, GND为接地。
P0口为一个8位漏级开路双向I/O 口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口作为AT89C51的一些特殊功能口。
本次流水灯的设计采用使用内部晶振,即外接一个晶体振荡器与内部的差分放大器组成一个时钟电路,再由其产生时钟脉冲为整个电路提供计时等。
本次设计使用P1、P2和P3.0引脚控制流水灯,P1、P2外接发光二极管,P3.0为发光二极管的共阴控制端。
其电路设计原理图如下图所示。
2.3 发光二极管连接电路发光二极管是半导体二极管的一种,可以把电能转换成光能。
常简写为LED(LIGHT EMITTINGDIODE)。
发光二极管与普通二极管一样也具有单向导电性。
当给发光二极管加上正向电压(大于发光二极管的正向压降)就会发光,当给二极管加上负向电压就不会发光。
发光二极管的发亮度与通过的工作电流成正比,一般情况下,LED的正向工作电流在10MA左右,若电流过大会顺坏发光二极管,因此使用时必须串联限流电阻以控制通过管子的电流。
限流电阻R可用下式计算:R=(E-UF)/IF式中E为电源电压,UF为发光二极管的正向压降,IF为发光二极管的一般工作电流。
普通发光二极管的正向饱和压降为1.4~2.1V,正向工作电流为5~20MA。
发光二极管广泛应用于各种电子电路、家电、仪表等设备中,做电源或电平指示。
此次的基于单片机STC89C52的流水灯控制的发光二极管的硬件连接电路图如图所示。
3 软件设计此次基于STC89C52的流水灯控制编程采用汇编语言编程,程序框图如:3.1 主程序ORG 0050HSTART: MOV R0,#08HCLR P3.0MOV A,#01HLCALL LOOPMOV R0,#08HMOV A,#01HLCALL LOOP1MOV R0,#04HMOV A,#02HLCALL LOOP2MOV R0,#04HMOV A,#02HLCALL LOOP3MOV R0,#04HMOV A,#03HLCALL LOOP4MOV R0,#04HMOV A,#03HLCALL LOOP5MOV P1,#0FFHMOV P2,#0FFHLCALL DELAYMOV P1,#0FEHLCALL DELAYMOV P1,#0FCHLCALL DELAYMOV P1,#0F8HLCALL DELAYMOV P1,#0F0HLCALL DELAYMOV P1,#0E0HLCALL DELAYMOV P1,#0C0HLCALL DELAYMOV P1,#80HLCALL DELAYMOV P1,#00HLCALL DELAYMOV P2,#0FEHLCALL DELAYMOV P2,#0FCHLCALL DELAYMOV P2,#0F8HLCALL DELAYMOV P2,#0F0HLCALL DELAYMOV P2,#0E0HLCALL DELAYMOV P2,#0C0HLCALL DELAYMOV P2,#80HLCALL DELAYMOV P2,#00HLCALL DELAYLJMP START3.2 子程序1 LOOP: MOV P2,#00HLCALL DELAYRL ADJNZ R0,LOOPRET3.3 子程序2LOOP1: MOV P1,#00HMOV P2,ALCALL DELAYRL ADJNZ R0,LOOP1RET3.4 子程序3LOOP2: MOV P2,#00HMOV P1, ALCALL DELAYRL ARL ADJNZ R0,LOOP2RET3.5 子程序4LOOP3: MOV P1,#00HMOV P2,ALCALL DELAYRL ARL ADJNZ R0,LOOP3RET3.6 子程序5LOOP4: MOV P2,#00HMOV P1, ALCALL DELAYRL ADJNZ R0,LOOP4RET3.7 子程序6LOOP5: MOV P1,#00HMOV P2,ALCALL DELAYRL ARL ADJNZ R0,LOOP5RET3.8 子程序7DELAY: MOV R4,#10D1: MOV R5,#248DJNZ R5,$DJNZ R4,D1DJNZ R3,DELAYRETEND4 课程设计体会此次基于单片机流水灯控制的课程设计,我从中学到了关于单片机STC89C52的许多相关知识,这次课程设计让我进一步认识到了过程的重要性。
此次设计我主要了解了单片机控制流水灯的工作原理,发光二极管以及ST89C51的应用,使我认识到了单片机的重要性。
在作图过程中,对DXP软件有了进一步的认识,仿真过程中也使我对KEIL软件和PROTUES软件有了进一步的加深和了解,同时也锻炼了动手能力。
编写程序这一过程也使我将单片机课本知识与实践相结合,收获颇多。
经过本次课题的设计与研究,我们深入的学习了除课本以外的很多微机附件的内容,掌握了很多实验室操作技能。