毕业设计:基于单片机的多控制、多闪烁方式的LED灯系统.doc

上传人:文****钱 文档编号:43128 上传时间:2018-05-09 格式:DOC 页数:36 大小:1.32MB
下载 相关 举报
毕业设计:基于单片机的多控制、多闪烁方式的LED灯系统.doc_第1页
第1页 / 共36页
毕业设计:基于单片机的多控制、多闪烁方式的LED灯系统.doc_第2页
第2页 / 共36页
毕业设计:基于单片机的多控制、多闪烁方式的LED灯系统.doc_第3页
第3页 / 共36页
毕业设计:基于单片机的多控制、多闪烁方式的LED灯系统.doc_第4页
第4页 / 共36页
毕业设计:基于单片机的多控制、多闪烁方式的LED灯系统.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、四川信息职业技术学院毕业设计说明书论文第I页目录摘要I第1章绪论1第2章仿真平台及程序开发语言221AT89C51单片机简介222KEILUVISION2集成开发环境723PROTEUS7PROFESSIONAL平台724汇编语言介绍8第3章总体设计1031概述1032八种闪烁方式1033程序框图17第4章硬件电路设计1841电路总图概述1842按键控制电路1943LED发光二极管电路2044晶振电路2045复位电路21第5章软件编程设计2251概述2252程序方法使用22第6章结语23致谢24参考文献25附录1系统程序及说明26附录2系统原理图33四川信息职业技术学院毕业设计说明书论文第I页

2、摘要本设计主要是通过对基于单片机的多控制、多闪烁方式的LED霓彩灯设计的电路进行模仿设计,达到多控制、多闪烁方式的LED霓彩灯固有的基本功能,故叫基于单片机的多控制、多闪烁方式的LED霓彩灯设计。利用定时器可发出不同频率的脉冲,不同频率的脉冲经控制后,就会控制LED灯的明灭。其次,定时器按设置的定时参数产生中断,这一次中断发出脉冲低电平,下一次反转发出脉冲高电平,由于定时参数不同,就发出不同频率的脉冲,本设计中,LED灯就是根据这个原理来完成它的明和灭。本次设计提出了用AT89C51单片机为核心控制元件。设计一个基于单片机的多控制、多闪烁方式的LED霓彩灯设计。本方案以AT89C51单片机作为

3、主控核心,与LED显示电路图、按键控制电路图、复位电路、晶振电路图等模块组成核心主控制模块在主控模块上设有9个按键。根据使用者的操作随意变换想要的闪烁方式。关键词AT89C51单片机;按键;LED发光二极管;晶体振荡器四川信息职业技术学院毕业设计说明书论文第1页第1章绪论当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。单片机的出现是随着大规模集成电路的出现而出现的。大规模集成电路迅速发展,

4、将计算机的CPU、RAM、ROM、定时/计数器和多种I/O接口集成在一片芯片上,形成了芯片级的计算机,因此单片机早期的含义称为单片微型计算机SINGLECHIPMICROCOMPUTER它拥有优异的性价比、集成度高、体积小、可靠性高、控制功能强、低电压、低功耗的显著优点主要应用于智能仪器仪表、工业检测控制、机电一体化等方面,并且取得了显著的成果。本设计的基于单片机的多控制、多闪烁方式的LED灯系统实际上就是一个带有八个发光二极管的单片机最小应用系统。从应用电子开发系统的角度上看,它是一款由LED发光二极管电路、按键控制电路、晶震电路、复位电路和必要的软件组成的单个单片机系统。从硬件结构上看,它

5、是一个由发光二极管、12MHZ晶振、电阻、电容、开关按键、5V直流电源等硬件组成和必要的软件组成的单个单片机系统。单片机应用系统可以分为(1)最小应用系统。是指能维持单片机运行的最简单配置的系统。这种系统成本低廉,结构简单,常构成一些简单的控制系统,如开关状态的输入/输出控制等。片内有ROM/EPROM的单片机,其最小应用系统即为配有晶振,复位电路,电源的单个单片机片内无ROM/EPROM的单片机,其最小应用系统除了外部配置晶振,复位电路,电源外,还应外接EPROM或EEPROM作为程序存储器用。(2)最小功耗应用系统。是指为了保证正常运行,系统的功耗最小。(3)典型应用系统。是指单片机要完成

6、工业测控功能所必须的硬件结构系统。四川信息职业技术学院毕业设计说明书论文第2页第2章仿真平台及程序开发语言21AT89C51单片机简介主要硬件厂商介绍本设计的中枢硬件控制器是AT89C51单片机。AT89C51单片机是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,片内含有4KBYTES的可反复擦写只读程序存储器和128BYTES的随机存取数据存储器。元器件采用AEMEL公司的高密度、非易失性存储技术生产,兼容标准MCS51指令系统。内置通用8位中央处理器和FLASH存储单元。功能强大的AT89C51单片机可为我们提供许多高性价比的应用场合,可灵活应用于各种控制领域。在CMOS器件生

7、产领域中,ATMEL的先进设计水平、优秀的生产工艺及封装技术一直处于世界的领先地位,这些技术用于单片机生产使单片机也具有优秀的品质、在结构、性能和功能等方面都有明显的优势。ATMELL公司的单片机是目前世界上一种独具特色而性能卓越的单片机。它在计算机外部设备、通讯设备、自动化工业控制、宇航设备、仪器仪表和各消费类产品中都有着广泛的应用前景。因此,本设计的基于单片机的多控制、多闪烁方式的LED灯系统实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机系统。按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗

8、系统及典型系统等。AT89C51单片机是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,具有丰富的内部资源4KB闪存、128BRAM、32根I/O口线、2个16位定时/计数器、5个向量两级中断结构、2个全双工的串行口,具有425550V的电压工作范围和024MHZ工作频率,使用AT89C51单片机时无须外扩存储器。如图21所示四川信息职业技术学院毕业设计说明书论文第3页图21AT89C51单片机1主要特性与MCS51兼容4K字节可编程闪烁存储器寿命1000写/擦循环数据保留时间10年全静态工作0HZ24HZ三级程序存储器锁定四川信息职业技术学院毕业设计说明书论文第4页1288位内部R

9、AM32可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。2引脚功能说明VCC供电电压。GND接地。P0口P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序

10、数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作四川信息职业技术学院毕业设计说明书论文第5页为输入

11、。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口

12、,如下所示P30RXD(串行输入口)P31TXD(串行输出口)P32/INT0(外部中断0)P33/INT1(外部中断1)P34T0(记时器0外部输入)P35T1(记时器1外部输入)P36/WR(外部数据存储器写选通)P37/RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。/ALE/PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外

13、部输出的脉冲或用于定时目的。然而要注意的是每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。四川信息职业技术学院毕业设计说明书论文第6页/PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP当/EA保持低电平时,则在此期间外部程序存储器(0000HFFFFH),不管是否有内部程序存储器。注意加密方式1

14、时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2来自反向振荡器的输出。3振荡器特性XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4芯片擦除整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持A

15、LE管脚处于低电平10MS来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。四川信息职业技术学院毕业设计说明书论文第7页22KEILUVISION2集成开发环境一、项目管理工程PROJECT是由源文件、开发工具选项以及编程说明三部分组成的。一个单一的UVISION2工程能够产生一个或

16、多个目标程序。产生目标程序的源文件构成“组”。开发工具选项可以对应目标,组或单个文件。UVISION2包含一个器件数据库DEVICEDATABASE,可以自动设置汇编器、编译器、连接定位器及调试器选项,来满足用户充分利用特定微控制器的要求。此数据库包含片上存储器和外围设备的信息,扩展数据指针EXTRADATAPOINTER或者加速器MATHACCELERATOR的特性。UVISION2可以为片外存储器产生必要的连接选项确定起始地址和规模。二、集成功能1集成源极浏览器利用符号数据库使用户可以快速浏览源文件。用详细的符号信息来优化用户变数存储器。2文件寻找功能在特定文件中执行全局文件搜索。3工具菜

17、单允许在V2集成开发环境下启动用户功能。4可配置SVCS接口提供对版本控制系统的入口。5PCLINT接口对应用程序代码进行深层语法分析。6INFINEON的EASYCASE接口集成块集代码产生。7INFINEON的DAVE功能协助用户的CPU和外部程序。DAVE工程可被直接输入UVISION2。23PROTEUS7PROFESSIONAL平台1、PROTEUS软件简介PROTEUS软件是一种低投资的电子设计自动化软件,提供可仿真数字和模拟、交流和直流等数千种元器件和多达30多个元件库。PROTEUS软件提供多种现实存在的虚拟仪器仪表。此外,PROTEUS还提供图形显示功能,可以将线路上变化的信

18、四川信息职业技术学院毕业设计说明书论文第8页号,以图形的方式实时地显示出来。这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗,尽可能减少仪器对测量结果的影响,PROTEUS软件提供丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。提供SCHEMATICDRAWING、SPICE仿真与PCB设计功能,同时可以仿真单片机和周边设备,可以仿真51系列、AVR、PIC等常用的MCU,并提供周边设备的仿真,例如373、LED、示波器等。PROTEUS提供了大量的元件库,有RAM、ROM、键盘、马达、LED、LCD、AD/DA、部分SPI器件、部分IIC器件,编译方面

19、支持KEIL和MPLAB等编译器。一台计算机、一套电子仿真软件,在加上一本虚拟实验教程,就可相当于一个设备先进的实验室。以虚代实、以软代硬,就建立一个完善的虚拟实验室。在计算机上学习电工基础,模拟电路、数字电路、单片机应用系统等课程,并进行电路设计、仿真、调试等。2、基本操作步骤A打开PROTEUS操作界面。B选择“P”,从元件库中提取需要的元器件(选中双击),选择完点OK。C在编辑区画电路图,修改元件参数。D进行电路仿真。E保存文件。24汇编语言介绍汇编语言ASSEMBLYLANGUAGE是面向机器的程序设计语言。在汇编语合中,用助记符MEMONI代替操作码,用地址符号SYMBOL或标号LA

20、BEL代替地址码。这样用符号代替机器语言的二进制码,就把机器语音变成了汇编语言。于是汇编语言亦称为符号语言。使用汇编语言编写的程序,机器个能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理系统软件。汇编语言把汇编程序翻译成机器语言的过程称为汇编。四川信息职业技术学院毕业设计说明书论文第9页汇编语言是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。汇编语言,作为一门语言,对应于高级语言的编译器,需要一个“汇编器”来把汇编语言原文件汇编成机器可执行的代码。高级的汇编器如MASM,TASM等等为我们写汇编程序提

21、供了很多类似于高级语言的特征,比如结构化、抽象等。在这样的环境中编写的汇编程序,有很大一部分是面向汇编器的伪指令,已经类同于高级语言。现在的汇编环境已经如此高级,即使全部用汇编语言来编写WINDOWS的应用程序也是可行的,但这不是汇编语言的长处。汇编语言的长处在于编写高效且需要对机器硬件精确控制的程序。大多数情况下LINUX程序员不需要使用汇编语言,因为即便是硬件驱动这样的底层程序在LINUX操作系统中也可以用完全用C语言来实现,再加上GCC这一优秀的编译器目前已经能够对最终生成的代码进行很好的优化,的确有足够的理由让我们可以暂时将汇编语言抛在一边了。但实现情况是LINUX程序员有时还是需要使

22、用汇编,或者不得不使用汇编,理由很简单精简、高效和LIBC无关性。假设要移植LINUX到某一特定的嵌入式硬件环境下,首先必然面临如何减少系统大小、提高执行效率等问题,此时或许只有汇编语言能帮上忙了。四川信息职业技术学院毕业设计说明书论文第10页第3章总体设计31概述本设计是基于单片机AT89C51的多控制、多闪烁方式的LED灯系统它的核心功能是以单片机AT89C51控制8个发光二极管8种闪烁方式的变换。硬件电路如图1、1所示,八个发光二极管L1L8分别接在单片机的P00P07接口上,当输出“0”时,发光二极管点亮。当输出“1”时,发光二极管熄灭。我们可以运用输出端口指令MOVP0,A或MOVP

23、0,DATA,只要给累加器值或常数值,然后执行上述的指令,即可达到输出控制的动作。每次送出的数据也将不同。当按下K1K8任意一个开关时,系统都会按照预定的闪烁方式闪烁。当需要从一种方式切换到另一种方式时,只需要在两次按开关之间按一下复位开关即可。32八种闪烁方式在本设计中,LED灯会受单片机的控制,按照预定的8中闪烁方式闪烁。八种闪烁方式分别为1、当按下开关1时,LED灯从D8向D1移动,每隔05S移动一次,当移动四川信息职业技术学院毕业设计说明书论文第11页到D1时,全灭。然后LED灯从D1向D8移动,每隔05S移动一次,重复循环。如表31所示P07P06P05P04P03P02P01P00

24、说明D8D7D6D5D4D3D2D101111111D8亮10111111D7亮11011111D6亮11101111D5亮11110111D4亮11111011D3亮11111101D2亮11111110D1亮11111111全灭11111110D1亮11111101D2亮11111011D3亮11110111D4亮11101111D5亮11011111D6亮10111111D7亮01111111D8亮表31第一种显示方式2、当按下开关2时,LED灯从D8向D1依次点亮。每隔05S点亮一个LED灯,当移动到D1时,全亮。然后从D1D8逐个熄灭,间隔时间仍是05S,直至全四川信息职业技术学院毕

25、业设计说明书论文第12页部熄灭,如此重复循环。如表32所示P07P06P05P04P03P02P01P00说明D8D7D6D5D4D3D2D111111111全灭0111111100111111000111110000111100000111000000110000000100000000全亮0000000100000011000001110000111100011111001111110111111111111111全灭表32第二种显示方式3、当按下开关3时,LED灯从两边向中间移动,逐次点亮,直至全亮。然后从中间向两边逐次熄灭,直至全灭。间隔时间为05S。重复循环。如表33所示四川信息职业

26、技术学院毕业设计说明书论文第13页P07P06P05P04P03P02P01P00说明D8D7D6D5D4D3D2D111111111全灭01111110001111000001100000000000全亮00011000001111000111111011111111全灭表33第三种显示方式4、当按下开关4时,LED灯在全亮和全灭状态下交替闪烁,间隔时间为05S,重复循环。如表34所示P07P06P05P04P03P02P01P00说明D8D7D6D5D4D3D2D111111111全灭00000000全亮表34第四种显示方式5、当按下开关5时,LED灯间隔交替明灭。间隔时间为05S,重复循

27、环。如表35所示四川信息职业技术学院毕业设计说明书论文第14页P07P06P05P04P03P02P01P00说明D8D7D6D5D4D3D2D10101010110101010表35第五种显示方式6、当按下开关6时,会依次出现闪烁一下三次的情况1)、最左最右灯亮,中间2灯灭。最左最右灯灭,中间2灯亮。其余灯均灭。2)、最左最右灯亮,中间A灯灭。最左最右灯灭,中间A灯亮。其余灯均灭。3)、最左最右灯亮,中间B灯灭。最左最右灯灭,中间B灯亮。其余灯均灭。LED灯间隔闪烁时间为05S,重复循环。如表36所示P07P06P05P04P03P02P01P00说明D8D7D6D5D4D3D2D10111

28、11101110011101111110111011110111111011110111表36第六种显示方式7、当按下开关7时,最左最右灯间隔闪烁。其余灯自D2D7依次衔接闪烁点亮。闪烁间隔时间为05S,重复循环。如表37所示四川信息职业技术学院毕业设计说明书论文第15页P07P06P05P04P03P02P01P00说明D8D7D6D5D4D3D2D1011111101111110101111110111010010111111011110001011111101110000101111110110000010111111010000001表37第七种显示方式8、当按下开关8时LED灯,最左

29、最右灯间隔闪烁。其余灯自D2D7依次逐个闪烁点亮。间隔时间为05S,重复循环。如表38所示四川信息职业技术学院毕业设计说明书论文第16页P07P06P05P04P03P02P01P00说明D8D7D6D5D4D3D2D1011111101111110101111110111010110111111011110111011111101110111101111110110111110111111010111111表38第八种显示方式四川信息职业技术学院毕业设计说明书论文第17页33程序框图图39霓彩灯硬件原理图从原理图中可以看出,如果要让接在P10口的LED1亮起来,那么只要把P10口的电平变为低

30、电平就可以了;相反,如果要接在P10口的LED1熄灭,就要把P10口的电平变为高电平;同理,接在P11P17口的其他7个LED的点亮和熄灭的方法同LED1。因此,要实现流水灯功能,我们只要将发光二极管LED1LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“霓彩”效果了。开始延时程序判断开关是否按下显示闪烁方式继续判断是否循环四川信息职业技术学院毕业设计说明书论文第18页第4章硬件电路设计41电路总图概述按照单片机系统扩展与系统配置状况,单片机

31、应用系统可分为最小系统、最小功耗系统及典型系统等。AT89C51单片机是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,具有丰富的内部资源4KB闪存、128BRAM、32根I/O口线、2个16位定时/计数器、5个向量两级中断结构、2个全双工的串行口,具有425550V的电压工作范围和024MHZ工作频率,使用AT89C51单片机时无须外扩存储器。因此,本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。其具体硬件组成如图41所示。图41电路设计总图实现电路如图41。该图18、19脚为时钟脉冲输入引脚,晶体

32、振荡器采用四川信息职业技术学院毕业设计说明书论文第19页12MHZ,电容为33PF,9脚为复位引脚,只要高电平超过两个周期即可产生复位。8个LED个指示灯接在P2口,每个LED支路接了一个220欧姆的限流电阻。限流电阻具体计算公式(5LED导通电压)/LED额定电流。如果LED要加亮,就减小限流电阻的值,但是不能超过LED的最大承受电流值。反之,则增加限流电阻的值。基于单片机AT89C51的多控制、多闪烁方式的LED灯系统是由按键控制电路、晶震电路、LED发光二极管电路、复位电路和必要的软件组成的单个单片机系统,下面我将对各个子电路的硬件构成及功能进行说明和介绍。42按键控制电路按键控制电路如

33、图42所示是由8个按键开关构成的。他们分别接在单片机AT89C51的P1接口上,为了一对一的控制LED灯的闪烁方式。当按下开关L1时,多控制、多闪烁方式的LED灯系统闪烁第一种闪烁方式。当按下开关L2时,多控制、多闪烁方式的LED灯系统闪烁第二种闪烁方式图42按键控制电路图四川信息职业技术学院毕业设计说明书论文第20页43LED发光二极管电路LED发光二极管电路如图43所示实际上是由8个发光二极管和8个220欧姆的电阻构成的电路。发光二极管D1、D2、D3、D4、D5、D6、D7、D8与电阻R1、R2、R3、R4、R5、R6、R7、R8对应串联,然后接在与之相对应的P0口上。LED发光二极管电

34、路实现的功能就是显示需要显示的LED灯闪烁效果。图43LED显示电路图44晶振电路晶振电路(如图44所示)是由两个33PF的电容、一个12M的晶体震荡器组成。他们接在接口XTAL1、XTAL2上。晶振电路的功能是为了给系统提供一个稳定的时间脉冲信号。四川信息职业技术学院毕业设计说明书论文第21页图44晶振电路图45复位电路复位电路(如图45所示)是由一个按键开关、2个阻值为330欧姆的电阻、一个22UF的电容组成。按照以下的连接方法,接在RST接口。它的功能是对整个系统进行复位。当按下开关按键时,系统复位到初始状态。图45复位电路图四川信息职业技术学院毕业设计说明书论文第22页第5章软件编程设

35、计51概述单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还不能看到多控制、多闪烁方式的LED灯系统循环点亮的现象,我们还需要告诉单片机怎么样进行控制,即编写程序控制单片机管脚电平的高低变化,来实现发光二极管的明灭。软件编程是多控制、多闪烁方式的LED灯系统中的一个重要的组成部分,是本设计的重点和难点。下面,我将详细的阐述多控制、多闪烁方式的LED灯系统是如何实现8个LED灯的循环点亮,来介绍实现流水灯控制的软件编程方法。52程序方法使用在控制LED灯明灭的方法中,循环移位法、位控法、查表法都能实现LED灯的控制虽然最易理解但是方法比较笨。循环移位法是利用循环移位指令,采

36、用循环程序结构进行编程。而查表法简单明了,在使用是只需调用表就可以,要修改时,直接改表就可以,不用在牵涉主程序修改。所以在本系统的程序编写中,大力的用到了查表法。特此说明。当上述程序之一编写好以后,我们需要使用编译软件对其编译,得到单片机所能识别的二进制代码,然后再用编程器将二进制代码烧写到AT89C51单片机中,最后连接好电路通电,我们就看到LED1LED8的闪烁效果了。本文所给程序实现的功能比较简单,旨在抛砖引玉,用户可以自己在此基础上扩展更复杂的流水灯控制,比如键盘控制流水花样、控制流水灯显示数字或图案等等。四川信息职业技术学院毕业设计说明书论文第23页第6章结语毕业设计已经接近尾声了。

37、在这段时间里我收获了很多,得到的更多。不但让自己在遇到问题时主动去找问题的症结所在。发现问题、解决问题。在做这个设计之前,我信心十足,并且开玩笑说不拿下这个势不罢休。直到开始做时,才知道“前途是光明的,道路是曲折的”这句话的真正含义。做毕业设计的过程中,遇到了大大小小的困难不及其数,我和老师之间也很多次出现过意见和分歧。但最终都以为了很好完成设计这一共同的目标而消除了那些前进的障碍。一开始,我什么都不懂,懵懂糊涂代替了我的思绪。唯一清醒地是指导老师。在老师细心的引导下,我渐入佳境。逐渐掌握了战场的主动权。从被动学习到主动查找资料,这一个小小的转变便是质的飞跃。当项目接近尾声时,老师刻意的讲解使

38、得我不安起来。这也许是老师悉心教导的表现,但作为学生的我来说,深刻地认识到,自己太急功近利了,我太不成熟、不够稳重。这将是以后我以后人身前进的又一绊脚石。值得庆幸的是,至少现在我知道了自己有不稳种的一面。值得高兴的是,我最后如愿以偿,拿下了这个毕业设计的所有内容。虽然有部分地方不如预料中的那么完美。但是这些不完美的成果都是老师和我辛勤汗水和拼命工作的结晶。不得不说这是一个奇迹。在未来的时间里,我将继续我的人生旅程。也许这只是我人生中的一抹亮丽,但这抹亮丽将是最耀眼的,将是永久唯一的四川信息职业技术学院毕业设计说明书论文第24页致谢本文是在张万良老师的关心和指导下完成的,他渊博的知识和严谨的治学

39、作风使我受益匪浅,对顺利完成本课题起到了极大的作用。在此向他表示我最衷心的感谢感谢张万良老师在课题研究初期给予的帮助,在张老师的帮助下课题才得以很好的展开,有了一个很好的开端感谢黄建新老师在单片机学习中的指导,因为他的认真,才得以高效率的学习了汇编语言感谢学校给了我这次毕业设计的机会,使我得到了很好的锻炼,在此我也向学校的各位老师表示最真诚的感谢四川信息职业技术学院毕业设计说明书论文第25页参考文献1徐煜明,韩雁单片机原理及接口技术M北京电子工业出版社,200512万光毅,严义,邢春香单片机实验与实践教程M北京北京航空航天大学出版社,200643陈正义单片机控制实习M北京人民邮电出版社,200

40、674HTTP/HIBAIDUCOM/CHANGJIANGUO89/BLOG/ITEM/A00830CB60EF5FF553664F74HTMLPROTEUS简介5百度(网络)HTTP/BAIKEBAIDUCOM/VIEW/49HTM汇编语言简介四川信息职业技术学院毕业设计说明书论文第26页附录1系统程序及说明ORG30H;单片机上电后从30H地址开始执行LOOPMOVA,0FFHMOVP0,A;将A的值送到P0口ACALLDELAY;延时程序JNBP10,ONE;判断开关P10是否按下,按下就跳到ONEJNBP11,TWO;判断开关P11是否按下,按下就跳到TWOJNBP12,THREE;判

41、断开关P12是否按下,按下就跳到THREEJNBP13,FOUR;判断开关P13是否按下,按下就跳到FOURJNBP14,FIVE;判断开关P14是否按下,按下就跳到FIVEJNBP15,SIX;判断开关P15是否按下,按下就跳到SIXJNBP16,SEVEN;判断开关P16是否按下,按下就跳到SEVENJNBP17,EIGHT;判断开关P17是否按下,按下就跳到EIGHTAJMPLOOP;跳转到主程序存放地址处ONEMOVR1,18;将18赋值给R1MOVDPTR,TAB1;第1种闪烁方式表首地址送DPTRLOOP1CLRA;累加器清零MOVCA,ADPTR;取数据表中的值MOVP0,A;将

42、数据送到P0口ACALLDELAY;调用延时子程序INCDPTR;取数据表指针指向下一数据DJNZR1,LOOP1;R1自减1,直到为0四川信息职业技术学院毕业设计说明书论文第27页AJMPONE;跳转闪烁方式ONETWOMOVR1,16;将16赋值给R1MOVDPTR,TAB2;第2种闪烁方式表首地址送DPTRLOOP2CLRA;累加器清零MOVCA,ADPTR;取数据表中的值MOVP0,A;将数据送到P0口ACALLDELAY;调用延时子程序INCDPTR;取数据表指针指向下一数据DJNZR1,LOOP2;R1自减1,直到为0AJMPTWO;重复闪烁方式TWOTHREEMOVR1,8;将8

43、赋值给R1MOVDPTR,TAB3;第3种闪烁方式表首地址送DPTRLOOP3CLRA;累加器清零MOVCA,ADPTR;取数据表中的值MOVP0,A;将数据送到P0口ACALLDELAY;调用延时子程序INCDPTR;取数据表指针指向下一数据DJNZR1,LOOP3;R1自减1,直到为0AJMPTHREE;重复闪烁方式THREEFOURMOVR1,2;将2赋值给R1MOVDPTR,TAB4;第4种闪烁方式表首地址送DPTRLOOP4CLRA;累加器清零MOVCA,ADPTR;取数据表中的值MOVP0,A;将数据送到P0口四川信息职业技术学院毕业设计说明书论文第28页ACALLDELAY;调用

44、延时子程序INCDPTR;取数据表指针指向下一数据DJNZR1,LOOP4;R1自减1,直到为0AJMPFOUR;重复闪烁方式FOURFIVEMOVR1,2;将2赋值给R1MOVDPTR,TAB5;第5种闪烁方式表首地址送DPTRLOOP5CLRA;累加器清零MOVCA,ADPTR;取数据表中的值MOVP0,A;将数据送到P0口ACALLDELAY;调用延时子程序INCDPTR;取数据表指针指向下一数据DJNZR1,LOOP5;R1自减1,直到为0AJMPFIVE;重复闪烁方式FIVESIXMOVR1,6;将6赋值给R1MOVDPTR,TAB6;第6种闪烁方式表首地址送DPTRLOOP6CLR

45、A;累加器清零MOVCA,ADPTR;取数据表中的值MOVP0,A;将数据送到P0口ACALLDELAY;调用延时子程序INCDPTR;取数据表指针指向下一数据DJNZR1,LOOP6;R1自减1,直到为0AJMPSIX;重复闪烁方式SIXSEVENMOVR1,12;将12赋值给R1MOVDPTR,TAB7;第7种闪烁方式表首地址送DPTR四川信息职业技术学院毕业设计说明书论文第29页LOOP7CLRA;累加器清零MOVCA,ADPTR;取数据表中的值MOVP0,A;将数据送到P0口ACALLDELAY;调用延时子程序INCDPTR;取数据表指针指向下一数据DJNZR1,LOOP7;R1自减1

46、,直到为0AJMPSEVEN;重复闪烁方式SEVENEIGHTMOVR1,12;将12赋值给R1MOVDPTR,TAB8;第8种闪烁方式表首地址送DPTRLOOP8CLRA;累加器清零MOVCA,ADPTR;取数据表中的值MOVP0,A;将数据送到P0口ACALLDELAY;调用延时子程序INCDPTR;取数据表指针指向下一数据DJNZR1,LOOP8;R1自减1,直到为0AJMPEIGHT;重复闪烁方式EIGHTDELAYMOVR3,50;延时子程序,延时05SLP1MOVR4,20LP2MOVR5,248DJNZR5,DJNZR4,LP2DJNZR3,LP1RET;子程序返回TAB1DB0

47、1111111B;第一种闪烁方式四川信息职业技术学院毕业设计说明书论文第30页DB10111111BDB11011111BDB11101111BDB11110111BDB11111011BDB11111101BDB11111110BDB11111111BDB11111110BDB11111101BDB11111011BDB11110111BDB11101111BDB11011111BDB10111111BDB01111111BDB11111111BTAB2DB01111111B;第二种闪烁方式DB00111111BDB00011111BDB00001111BDB00000111BDB00000

48、011BDB00000001BDB00000000BDB00000001BDB00000011B四川信息职业技术学院毕业设计说明书论文第31页DB00000111BDB00001111BDB00011111BDB00111111BDB01111111BDB11111111BTAB3DB01111110B;第三种闪烁方式DB00111100BDB00011000BDB00000000BDB00011000BDB00111100BDB01111110BDB11111111BTAB4DB11111111B;第四种闪烁方式DB00000000BTAB5DB10101010B;第五种闪烁方式DB0101

49、0101BTAB6DB01111110B;第六种闪烁方式DB11100111BDB01111110BDB11110111BDB01111110BDB11101111BTAB7DB01111110B;第七种闪烁方式DB11111101BDB01111110B四川信息职业技术学院毕业设计说明书论文第32页DB11111001BDB01111110BDB11110001BDB01111110BDB11100001BDB01111110BDB11000001BDB01111110BDB10000001BTAB8DB01111110B;第八种闪烁方式DB11111101BDB01111110BDB11111011BDB01111110BDB11110111BDB01111110BDB11101111BDB01111110BDB11011111BDB01111110BDB10111111BEND四川信息职业技术学院毕业设计说明书论文第33页附录2系统原理图四川信息职业技术学院毕业设计说明书论文第24页附件3毕业设计(论文)评语四川信息职业技术学院毕业设计(论文)评语学生姓名学号班级专业设计(论文)题目指导教师指导指导老师考核意见等级指导教师答辩评语等级答辩老师总评成绩等级考核小组组长备注以上两项成绩综合后,指导老师考核成绩占总分的60,答辩成绩占总分的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。