毕业论文跑马灯制作_第1页
毕业论文跑马灯制作_第2页
毕业论文跑马灯制作_第3页
毕业论文跑马灯制作_第4页
毕业论文跑马灯制作_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、滨江学院毕业论文题 目 跑马灯设计与制作 院 系 自动控制系 专 业 自动化 二一四 年 十二 月 二十 日目 录1系统的概述31.1 设计背景31.2 设计任务32 系统的总体设计32.1 系统组成32.2 系统简介32.3 输入部分32.4 输出部分33系统的硬件33.1 总体电路介绍33.2 硬件功能介绍34系统的软件设计34.1 总体设计思路34.2 程序流程图34.3 原理图34.4 原理图生成的封装图34.5 程序编写35 结束语3参考文献3致谢3跑马灯设计与制作胡倩南京信息工程大学滨江学院自动控制系,江苏 南京 210044摘要:近年来随着科学技术的不断进步,计算机在社会领域得到

2、了广泛应用。其中单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,称为在实时检测和自动控制领域中广泛应用的器件,在工业生产中称为必不可少的器件,而且往往是作为一个核心部件来使用。同时其在日常生活中发挥的作用也越来越大。在日常的生活中,通过单片机设计出的led灯,可以说充分的方便美化了我们的生活。本设计使用at89s52芯片,利用p0的8个端口连接8个发光二极管,通过p0.0到p0.7的值控制“跑马灯”的亮灭以达到显示效果。设计的中断程序要对多个按键动作进行响应,灯光变换的花样有4种,用4个按键sw1、sw2、sw3、sw4进行切换。按下sw1键,蓝色灯亮,并闪烁;按下sw2按键,

3、红色灯亮,并闪烁;按下sw3按键, 绿色灯亮,并闪烁;按下sw4按键, 黄色灯亮,并闪烁。在每个灯亮的同时,伴随着声音的出现。再次按下按键,相应的灯会灭掉。按下外部按键,接收头接收到相应信号,8个灯依次闪亮。通过本设计的制作,不仅巩固了单片机方面的知识而且能强化我们的实践能力。关键词:at89s52单片机 led发光二极管 接收头design and fabrication of the marqueehu qiandepartment of automatic control, nuist, nanjing 210044,chinaabstract:in recent years, with

4、 the continuous progress of science and technology, computer has been widely applied in the social sector. the advantages of the microcontroller with its strong functions, small size, high reliability, low cost and short development cycle, called in real-time detection and automatic control device i

5、s extensively used in industrial production, known as the essential component, and is often used as a core component. at the same time in daily life also play an increasingly important role. in daily life, through the led light of a microcontroller design, can be said to make convenient beautify our

6、 life.this design uses at89s52 chip, using 8 port p0 connecting the 8 light-emitting diodes, through the p0.0 to the p0.7 value control marquee light out to show the effect of. design of the interrupt program to respond to multiple keystrokes, light transformation figure 4 switch, with 4 buttons sw1

7、, sw2, sw3, sw4. press the sw1 key, blue light, and the flashing; press the sw2 button, the red light, and the flashing; press the sw3 button, the green light, and the flashing; press the sw4 button, the yellow lights flashing, and. in each light at the same time, accompanied by the sound of the eme

8、rgence of. press the button again, the exhibit of lanterns out. press the outer keys, receiving head receives the signal, the 8 lights were shining. through the production of the design, not only to consolidate the microcontroller knowledge but also strengthen our ability to practice.keywords: at89s

9、52 mcu led light-emitting diode receiving head1系统的概述1.1 设计背景 现如今,社会在不断的发展。科学技术的日益发达,使得计算机在人们的生活中得到了广泛的应用。尤其是单片机以其功能强、体积小、可靠性高等优点,在各领域中得到了广泛的应用,成为工业自动控制生产中必不可少的原件。就算是我们的日常生活中,它也显示着越来越突出的作用。可以说,单片机的发展和应用不仅推动了社会的发展而且美化了我们的生活。日常的生活中,我们能接触到许多led灯的设计和应用,具有电路简单,造价便宜,功耗低,亮灯花样繁多等特点。其设计原理就是单片机和汇编语言的结合,也就是软件和硬

10、件的结合。一般情况下,单片机的跑马灯由多个led发光二极管组成,并根据相关程序控制,最终能够设计出变化多端的花样,进而丰富美化了我们的生活。1.2 设计任务本设计不仅要求有软件设计而且要求硬件电路的设计。硬件设计模块主要使用89s52芯片,8个发光二极管连接p0脚的8个端口,通过设置p0口的值控制来“跑马灯”的亮灭。该设计用4个按键sw1、sw2、sw3、sw4进行切换。按下sw1键,蓝色灯亮,并闪烁;按下sw2按键, 红色灯亮,并闪烁;按下sw3按键, 绿色灯亮,并闪烁;按下sw4按键, 黄色灯亮,并闪烁。在每个灯亮的同时,伴随着声音的出现。再次按下按键,相应的灯会灭掉。按下外部按键,接收头

11、接收到相应信号,8个灯依次闪亮。软件通过与单片机相兼容的c语言构成,并将软硬件结合,进行相关调试后,最终达到设计目的。跑马灯的总体效果描述:(1)上电后,8个发光二级管以流水灯的形式来回一圈,并闪烁3次。(2)四个开关控制红绿黄蓝四种颜色灯的亮灭。按下任何一个开关,相对应的颜色灯亮闪烁,伴随声音出现,再次按下开关,灯会灭掉。(3)按下随意键现有任务状态会改变为相应任务。(4)当接收头接收到外部中断信号时,现有发光二极管的工作状态会发生改变,会进行红绿黄蓝8个灯的依次亮灭。具体流程如下图所示; 图1.1 跑马灯运行流程2 系统的总体设计2.1 系统组成图2.1 系统组成2.2 系统简介该系统主要

12、有两部分构成,分别为硬件部分和软件部分,也可以称其为输入部分和输出部分。输入部分主要用到at89s52作为主控芯片,中断信号的接收装置以及7805系列的稳压管等等。输出部分采用了与单片机相适应的c语言编写。这里就不一一具体详述,下文中将对各器件以及程序进行详细的介绍。图2.2 系统主要框图2.3 输入部分先确定个端口初始值为0 ,即低电平时有效。当有信号输入,也就是按下开关时,给相应端口置位为1。该输入采用4个按键开关作为输入信号的载体,将4个按键依次接入p3 .2口的相应引脚上,并加入相关贴片电容,给以保护。单击相关按键的就可被芯片识别,并启动相关动作。此外,外部信号也是一个输入部分。外部按

13、键按下时,程序自动会改变现有运行。2.4 输出部分这里的输出部分,就是设计效果的展示。输出只是对我们控制要求的一种验证或显示,有多种方式可以表达。本设计用8个发光二极管作为输出展示,分别为红绿黄蓝各两个。通过程序的控制,显示不同的状态运行结果。比如:红灯亮,流水灯亮,灯的闪烁等等。3系统的硬件3.1 总体电路介绍该系统的制作可以用很多种的控制芯片,比如80(c)51、at89c51、和at89s52等,本设计使用的是8位at98s52单片机。但是相较与其他的单片机芯片,该芯片具有低功耗、高绩效、性能稳定等优点,因此本设计选用了at89s52作为主芯片。本设计使用p0口的p0.1p0.8的8个i

14、/o口作为发光二极管的接口,p1口的p1.5作为蜂鸣器的端口,p2口的4个i/o口中的p2.0p2.3的4个i/o口作为开关sw1-sw4的接口,p3口的p3.2作为接收头的接收口,p3.8p3.9连接晶振电路,来产生自激振荡。1该电路采用at89s52作为主控芯片,设计要求就是单击每个按键后发光二极管会显示不同的发光颜色和声音,再次按下键后二极管状态改变。当按键按下时,并会伴随着声音出现。此外,该电路还链接了一个接收头,当外部按键按下时,现有的工作状态会改变,即工作电路产生了中断,发光二极管会以流水灯的形式来回闪烁。芯片的主要由四部分组成:由4个按键分别并列接在p1口的p1.0p1.5的4个

15、引脚上,构成的输入部分;由12m的晶振构成时钟振荡电路;由8个发光二极管构成系统的外部显示输出部分;此外蜂鸣器和启振器组成的发音装置。3.2 硬件功能介绍(一)at89s52芯片的功能简介和引脚分配at89s52是一种低功耗、高性能的且带有8kb可编程flash存储器的8位mcu,可以擦除后重新写入新程序,因此可供用户多次使用。其内部功能结构如图所示。它主要有三大模块组成。分别为微处理器、存储器、输入/输出口(i/o口)。此外,它还支持定时/计数、中断等功能。它们分别通过相关总线连接起来,其中有地址总线、数据总线和控制总线。本设计采用内部主要功能部件如下:(1)一个8位cpu;(2)一个内部振

16、荡器时钟电路(3)8kb系统可编程flash存储器;(4)256kb内ram;图3.1 at89s52内部功能结构框图at89s52单片机外部共有40个引脚,图2-2为引脚的排列图。40个引脚分为p0,p1,p2,p3四个端口。具体可分为4大类:时钟、电源、控制和i/o引脚。下面对此作具体介绍。1)电源vcc电源脚,接+5v;gnd接地端。2)时钟时钟即晶体振荡器引脚,此电路可分为输入端和输出端。即xtal1和xtal2。xtal1:当外接晶振时,接外部晶振的一个引脚。外部时钟信号则由xtal1端输入。xtal2:接外部晶振的另一个引脚,被简称为相关时钟电路的输出端。如果电路中存在外部时钟源时

17、,则本引脚浮空。图3.2 at89s52引脚图3)控制线rst:复位信号输入端,即芯片的9脚。复位就是将现有的工作状态复位到初始状态。但是可以通过相关程序的控制,快速复位后进入到另一要求达到的目标。振荡器工作时(启振时)该引脚置高电平。/ea/vpp:/ea为选择信号,判断芯片是访问内部还是外部程序存储器。当/ea端保持高电平时,cpu首先执行内部程序存储器程序(片内0000h单元)。内部程序存储器程序执行完成后,会检查有无外部存储器程序,若是有得话将会自动转向执行外部程序存储器程序。vpp为flash编程电压,当对片内flash进行编程时,此引脚施加12v编程允许电压。4)i/o多功能引脚p

18、0口:8位并行i/o口。本设计主要用到该端口作为输出端,外接8个led灯,通过程序的控制,显示出相关的输出效果。p1口:内接上拉电阻的8位准双向i/o口,能负担4个ttl负载。在flash编程和校验时定义为低8位地址线,他的第二功能如下: 表3.1 p1口功能本设计主要使用p1口的5脚来接蜂鸣器,构成发声装置。p2口:同p1一样的8位准双向i/o口,可以负载4个ttl。当访问外部存储器时定义为高8位地址总线。本设计主要使用p2口的四个脚来接sw1-sw4的开关。p3口:同p1一样的8位准双向i/o口,可以负载4个ttl。它的第二功能如下:表3.2 p3口功能本设计主要使用了p3端口的1、8、9

19、、脚。9脚为接地脚;9、8脚为时钟电路的引脚,1脚接开关中断的复位脚。以上为at89s52芯片相关引脚的功能介绍。本设计采用at89s52作为主控芯片,只用到其中的部分引脚,因此不做详细介绍,具体引脚的使用情况如系统电路图所示。(二)接收装置遥控接收头是目前使用最广泛的一种红外线接收通信装置。红外线遥控装置具有空间小、能耗低、成本小等优点。因而,被广泛应用在电视遥控器、空调设备等小型家用设备装置上。它一般由红外发射和接收系统两部分组成。整个工作过程如下图(右)所示。红外线通过红外发管二极管 (led)发射出去。红外遥控是以调制的方式发射数据,就是把数据和一定频率的载波进行“与”操作,这样既可以

20、提高发射效率又可以降低电源功耗。本设计就是基于这种红外发射接收系统,信号经过发射、调制最终被接收装置接收。通过接收头接收到外部中断发射信号,进而改变系统工作状态。如图 所示: 图3.3遥控器接收装置(三)kbp210桥堆整流桥的整流作用同二极管一样,具有单向导通特性。即只允许电流从正极进入(正向导通),从负极流出(反向截止)。kbp210,kbp代表该桥堆的封装形式;中间的数字2表示是2a, 1000v。 kbp210桥堆属于扁桥2a的形式。,它能够将交流电整流成可供设备运行的直流电,为设备的运行提供稳定的电压。图3.4 kbp210桥堆原图(四)发光二级管led灯,简称为发光二极管,是一种半

21、导体器,应用范围十分广泛。它可以直接把供电转化为光发射,通过不同的颜色组合,广泛应用于霓虹灯的设计上。本设计中我们采用共阳极的接法将8个发光二极管相连接,并接入+5v的电源为电路供电。图3.5 发光二极管(五)电源模块图3.6 电源电路电源模块采用7805稳压管,将输入电压转化为5v电压输出为整个系统供电。电源电路如图所示2。7805系列为三端正稳压电路,能提供多种固定的输出电压,应用范围广泛。封装内包含相关的保护电路,比如过流、过热和过载等。7805它的输出电流最大可达1a,输出电压有为5v,并提供过热保护,短路保护等等,保证器件的安全使用。图3.7 7805稳压管(六)时钟电路单片机电路本

22、身相对来说较为复杂,想要芯片稳定高效的工作,必须有个稳定的时钟电路。at89s52内有一个高增益反向放大器,可以通过外接石英晶体振荡电路来构成自激振荡,振荡频率由石英的振荡频率所决定。我们这里取12mhz晶振构成石英晶体振荡电路来产生自激振荡。时钟电路见原理图3.8。图3.8 时钟电路原理图 (七)发音装置电路图3.9 发音电路原理图 蜂鸣器是采用直流电压供电,广泛应用于报警器、玩具、定时器等电子产品中。通过程序的控制,它既可以发出音乐,也可以发出单调的声音,本设计就是利用蜂鸣器发出单调的声音。电路中常用字母“h”或“ha”表示蜂鸣器。蜂鸣器在单片机装置中,多用作提示或报警装置。比如按键开关、

23、工作的开始结束或是出现故障等等。但是通过程序控制,蜂鸣器也可以发出节奏音乐。本设计就是利用蜂鸣器装置,根据程序设置频率高低来反映出声音的变化。4系统的软件设计4.1 总体设计思路硬件设计完成后,就要完成软件的设计,也就是驱动程序的设计编写。本设计的编程语言采用与ms-51相兼容的c语言。根据设计的需要,该程序主要涉及主程序、中断程序两个。主程序用以识别是哪个按键按下及每个按键按下后所对应灯的亮灭,中断程序主要用于外部中断信号输入接收,以及中断程序响应后所对应8个发光二极管亮灭情况。4.2 程序流程图总体设计思想已经完成,下面就要对需要解决的问题进行分析,明确的划分完相应任务后,画出流程图将具体

24、步骤落实到位,这样可以充分表达程序的设计思路,可帮助设计程序,阅读程序和查找程序中的错误。该设计的程序工作流程图如图4.1所示。图4.1 程序执行流程图该设计的中断程序流程图如图4.2所示。图4.2外部中断流程图4.3 原理图原理图如图4.3所示,原理图的说明如下:该设计选用一块at99c52型单片机,使用其p0口、p2口、p3口的部分。p0口p0.1p0.8的8个i/o口作为发光二极管的接口,为其发光二极管的控制信号输出端。p2口的4个i/o口中的p2.0p2.3的4个i/o口作为开关sw1-sw4的接口,控制发光二极管亮灭。p3口的p3.2作为外部按钮中断信息输入口的接收口。p3.7p3.

25、8连接晶振电路,使电路产生相应的自激震荡。本设计中我们采用频率为12mhz的单片机晶振,那么每个机器周期就为1um。输入电源部分我们使用+5v直流电来为整个电路供电。图4.3 电路原理图4.4 原理图生成的封装图如图4.4所示。图4.4 封装图4.5 程序编写#include #define uchar unsigned char#define uint unsigned intsbit sw1 = p23; /redsbit sw2 = p22; /greensbit sw3 = p21; /yellowsbit sw4 = p24; /blueuchar sw1_flag=0,sw2_fl

26、ag=0,sw3_flag=0,sw4_flag=0;unsigned char code seg= 0x7f,0xbf,0xdf,0xef, 0xf7,0xfb,0xfd,0xfe, 0xff,0xff,0x00,0x00, 0x55,0x55,0xaa,0xaa ;/*delay*void delay_ms(unsigned int ms)unsigned int a;unsigned int b;for(a=ms;a0;a-)for(b=0;b120;b+);/*initial*void init() p0=0xff; p2=0xff;/*mode_select*void mode()

27、uchar i; for(i=0;i8;i+) delay_ms(100); p0 = 1; p0 = 0x7f; for(i=0;i= 1; for(i=0;i3;i+) p0 = 0xff; delay_ms(200); p0 = 0x00; delay_ms(200); p0 = 0xff;/*key_scan*void key_scan() if(!sw1) delay_ms(100); if(!sw1) sw1_flag=sw1_flag; if(sw1_flag) p0 = 0xbb; else p0 = 0xff; if(!sw2) if(!sw2) sw2_flag=sw2_flag; if(sw2_flag) p0 = 0xdd; else p0 = 0xff; if(!sw3) delay_ms(100); if(!sw3) sw3_flag=sw3_flag; if(sw3_flag) p0 = 0x77; else p0 = 0xff; if(!sw4) delay_ms(100); if(!sw4) sw4_flag=sw4_flag; if(sw4_flag) p0 = 0xee; else p0 = 0xff; void ex0init(v

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论