基于51单片机的霓虹灯

合集下载

毕业设计(论文)基于单片机的智能霓虹灯控制系统设计

毕业设计(论文)基于单片机的智能霓虹灯控制系统设计

基于单片机的智能霓虹灯控制系统设计目录摘要 (i)Abstract (ii)引言 (7)1绪论 (8)1.1单片机发展概述 (8)1.2总体方案设计 (10)1.3硬件电路的设计 (11)1.3.1 单片机系统 (11)1.3.2 LED概述 (12)1.3.3 外部时钟方式电路 (13)1.3.4 手动复位电路 (14)1.4 MSC-51芯片简介 (15)1.5 74LS373简介 (20)1.6 PROTEL DXP 简介 (21)2系统功能简介 (22)3系统流程图 (23)4硬件设计原理 (24)4.1最小系统模块 (24)4.1.1电源模块 (25)4.1.2串口模块 (26)4.1.3单片机模块 (26)4.1.4时钟电路模块 (27)4.1.5复位电路模块 (28)4.2驱动模块 (28)4.3 LED显示模块 (30)4.4激光传感器模块 (30)5软件部分 (30)5.1核心算法设计流程图 (31)5.2系统程序 (32)6系统调试 (35)6.1软件调试 (35)6.2硬件调试 (36)6.3测试结果 (36)6.4结果分析 (36)7总结 (37)7.1整个系统的设计思路 (37)7.2商业开发价值 (37)参考文献 (38)致谢 (39)ContentsAbstract (ii)Preface (7)1 Introduction (8)1.1 SCM development outline (8)1.2 The general scheme design (10)1.3 Hardware circuit design (11)1.3.1 Single-chip microcomputer system (11)1.3.2 LED overview (12)1.3.3 External clock mode circuits (13)1.3.4 Manual reset circuit (14)1.4 MSC - 51 chip profile (15)1.5 74LS373 profile (20)1.6 PROTEL DXP profile (21)2 Systemic function (22)3 System chart (23)4 Design principle (24)4.1Smallest system module (24)4.1.1Power module (25)4.1.2 Serial interface module (26)4.1.3 Microcontroller module (26)4.1.4 Clock circuit module (27)4.1.5 Reset circuit module (28)4.2 Driver module (28)4.3 Video module of led (30)4.4 Laser sensor module (30)5 The design of system software (30)5.1 Core algorithm design flow chart (31)5.2 System program (32)6 Conclusion (35)6.1 Software debugging (35)6.2 Hardware debugging (35)6.3 Test result (36)6.4 Results (36)7 Summarize (37)7.1 The whole system design ideas (37)7.2 Commercial development value (37)Reference (38)Acknowledgement (39)智能霓虹灯控制系统设计作者:指导教师:【摘要】近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月异更新。

51单片机技术应用教程(C语言版)项目八PC机远程控制花样霓虹灯设计与制作

51单片机技术应用教程(C语言版)项目八PC机远程控制花样霓虹灯设计与制作

8.1.2 51单片机串行通信基础知识
串行接口控制寄存器SCON
76 5 4 3 2 1 0 SCON(98H) SM0 SM1 SM2 REN TB8 RB8 TI RI
SM0、SSMM12::多串机行通接信口R控E4N种制:允工位许作,串方用行式于接选方收择式位位2和。。方由式软3件。置1或清
通信方式
并行通信:数据的各位同 时传输
串行通信:数据逐位顺序 传输
8.1.1串行通信的基本原理 串行通信制式
单工(simplex) :数据只能按照一 个固定的方向传输,如广播
设备A
设备B
半双工(half duplex) :2个方向上 的数据传输不能同时进行,只能一 端发送,一端接收,如对讲机
全双工(full duplex) : 2个方向可 以同时发送和接收,如电话机
76 5 4 3 2 1 0 SCON(98H) SM0 SM1 SM2 REN TB8 RB8 TI RI
TB8:发R送B数8:据接T的收I:第数发9据送R位I的中:。接第断在收9标方位中志式。断位2工标和。作志方在在位式方方。3式中式在0,2时方和由,式方发0式中送3,时完接,8位收数完8位数
1 0 为方0式还2 是为1,11位T帧I、格R式I都以正常fo方sc/6式4或被fosc激/32活。 1 1 在方方式3式1时,11如位果帧格S式M2=1,可则变只(由有定收时到器控有制效)的停止位后,RI置1。
在方式0时,SM2必须为0。
8.1.2 51单片机串行通信基础知识
串行接口控制寄存器SCON
SM0 SM1 工在作方方式式 2和方0。式功R3E能处N于=1接时收,时允,许如接波果收特S率;MR2=E1N,=0而时且,接收到的第9位数据RB8

基于单片机控制的霓虹灯控制器【开题报告】

基于单片机控制的霓虹灯控制器【开题报告】

开题报告通信工程基于单片机控制的霓虹灯控制器一、课题研究意义及现状随着人们生对生活环境的要求越来越高,我们将更容易在各个场合看到彩色霓虹灯。

LED彩灯灯光色彩丰富,造价低廉以及控制简单,用彩灯来装饰接到和城市建筑物已经成为一种时尚。

霓虹灯控制器(LED controller)就是通过芯片处理控制LED灯电路中的各个位置的开关。

霓虹灯控制技术的发展相当迅速,电子变压器以及控制器技术的发展对霓虹灯行业的发展起到了举足轻重的作用,从机械式霓虹灯控制器发展到电子式控制器,从普通跳变式控制器发展到渐变(七彩)式微电脑控制器,未来的霓虹技术将会朝无铅无汞环保型;机械化批量生产,色泽和动感效果更加丰富等方面健康发展。

目前有3种类型的霓虹灯控制器,分别是:低压型LED产品大功率控制器;高压型LED产品控制器;低压型LED产品串行控制器。

常用的控制系统:灵星雨控制系统;德普达控制系统DBT-Q2007;中庆控制系统V5,V6;逐点校正控制系统;异步控制系统。

使用基于单片机的霓虹灯控制器的软件控制,亮灯模式多而且样式多样,用户可操作性强,亮灯效果好,也可以插入不同的音乐和语音信息。

本课题设计的霓虹灯控制器,在制作的过程中包括8051单片机控制器、LED灯管、语音提示及数据显示系统等。

这些部件的结合起来,使8051单片机起到数据处理、控制中心和协调作用。

充分发挥了8051芯片的强大运算和控制功能。

实现了控制LED亮灯方式的功能。

通过本次设计能充分了解所学的专业知识,使理论在实际中得到充分的应用,不但巩固加深了所学的专业知识,更拓宽了知识面,锻炼了独立思考问题以及独立选择项目方案和独立完成项目的能力。

二、课题研究的主要内容和预期目标本课题的主要内容是设计一个的霓虹灯控制器,采用单片机作为主控芯片。

其具体要求为:使该设计能利用单片机硬件电路和软件程序设计实现控制128个霓虹灯(LED灯)形成不同的图案和花样,图案和花样不能小于10种。

基于单片机的霓虹灯控制系统设计

基于单片机的霓虹灯控制系统设计

目次摘要症结词一.媒介二.总体设计计划三.硬件电路设计3.1 单片机体系3.2 LED概述3.3 外部时钟方法电路3.4 手动复位电路3.5 霓虹灯掌握电路四.软件设计五.软件调试六.总结附录基于单片机的霓虹灯掌握体系设计摘要:单片机技巧是一门运用性很强的专业课,其理论与实践技巧是从事机电类专业技巧工作的人员所不成少的.本次程设计是选择AT80C51为焦点掌握元件,运用取表的办法,使端口P1 做单一灯的变更:左移2 次,右移2 次,闪耀2 次(延时的时光0.2 秒),设计了单片机霓虹灯掌握体系,使其产生有纪律的闪耀和移动.症结字T80C51LED灯霓虹灯一.媒介单片机,亦称单片微电脑或单片微型盘算机.它是把中心处理器(CPU).随机存取存储器(RAM).只读存储器(ROM).输入/输出端口(I/0)等重要盘算机功效部件都集成在一块集成电路芯片上的微型盘算机.单片机是把重要盘算机功效部件都集成在一块芯片上的微型盘算机.它是一种集计数和多中接口于一体的微掌握器,被普遍运用在智能产品和工业主动化上,而51单片机是个单片机中最为典范和最有代表性的一种.跟着城市扶植和市场经济的飞速成长,城市的美化和日益剧烈的告白竞争越来越得到社会的存眷,作为城市装潢和告白宣扬的霓虹灯的需求量也越来越大.曩昔霓虹灯掌握器多采取E2PROM和响应的逻辑电路来完成,如今也有采取一些专用霓虹灯掌握芯片的掌握器.前者所需电路较多,制造不轻易转变,且所需掌握的霓虹灯路数越多,扩大起来也比较庞杂;尔后者因为电路已作定,掌握方法不克不及随便转变,功效较为单一.然而市场上须要低成本高机能的霓虹灯掌握技巧.我们此次设计的霓虹灯掌握体系就相符市场需求.二.总体计划设计在本次设计中,硬件部分由单片机体系.LED发光二极管构成.道理图如图1所示.单片机选用的是AT89C51单片机,运用个中的一个准时器设定灯光闪耀的时光,时钟电路选用的是11.0592M的晶振.复位电路部分采取的是上电复位和手动复位两种复位方法.因为斟酌到单片机I/O端口的带载才能,LED发光二极管采取共阳极的接法,用1K电阻分压.软件部分,因为采取的是11.0592M晶振的时钟电路,单片机准时器的最大准不时光为65.536ms,不克不及达到请求的闪耀频率.所以采取准时50ms,10个准时中止灯光进行一次亮灭的跳变.并在每一次跳变时记载下灯闪耀的次数,经由过程对闪耀次数的断定,来进行对不合LED灯的亮灭的整体时序轮回掌握.图1单片机的霓虹灯掌握电路道理图三.硬件电路的设计3.1单片机体系尺度型89系列单片机是与MCS-51系列单片机兼容的.在内部含有4KB 或8KB 可反复编程的Flash 存储器,可进行1000次擦写操纵.全静态工作为0~33MHz,有3级程序存储器加密锁定,内含有128~256字节的RAM.32条可编程的I/O 端口.2~3个16位准时器/计数器,6~8级中止,此外有通用串行接口.低电压余暇模式及失落电模式.AT89C51相当于将8051中的4KB ROM 换成响应数目的Flash 存储器,其余构造.供电电压.引脚数目及封装均雷同,运用时可直接调换.AT89C51在内部采取40条引脚的双列直插式封装,引脚分列如图2所示,内部构造道理图如图3所示.图2 AT89C51芯片引脚图3AT89C51内部构造道理图3.2 LED 概述LED Light Emitting Diode ),发光二极管,是一种固态的半导体器件,它可以直接把电转.LED 的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另一端衔接电源的正极,使全部晶片被环氧树脂封装起来.半导体晶片由三部分构成,一部分是P 型半导体,在它里面空穴占主导地位,另一端是N 型半导体,在这边主如果电子,中心平日是1至5个周期的量子阱.当电流畅过导线感化于这个晶片的时刻,电子和空穴就会被推向量子阱,在量子阱内电子跟空穴复合,然后就会以光子的情势发出能量,这就是LED发光的道理.而光的波长也就是光的色彩,是由形成P-N 结的材料决议的.它是一种经由过程掌握半导体发光二极管的显示方法,用来显示文字.图形.图像.动画.行情.视频.录像旌旗灯号等各类信息的显示屏幕.因为具有轻易掌握.低压直流驱动.组合后色彩表示丰硕.运用寿命长等长处,普遍运用于城市各工程中.大屏幕显示体系.LED 可以作为显示屏,在盘算机掌握下,显示色彩变更万千的视频和图片. LED 是一种可以或许将电能转化为可见光的半导体.近十几年来,为了开辟蓝色高亮度发光二极管,世界各地相干研讨的人员无不全力投入.而贸易化的产品如蓝光及绿光发光二级管LED 及激光二级管LD 的运用无不说清楚明了III -V 族元素所储藏的潜能.在今朝商品化LED 之材料及其外延技巧中,红色及绿色发光二极管之外延技巧大多为液相外延成长法为主,而黄色.橙色发光二极管今朝仍以气相外延成长法成长磷砷化镓GaAsP 材料为主.LED 的具体构造如图4所示:I/O 存储器 EPROM/ROM 准时/计数器 运算器 掌握器中止CPU片内振荡器 RAM/SFP并行口 存储器扩大掌握器串行口XTAL图4 LED 的构造图3.3 外部时钟方法电路外部时钟电路如图5所示,它在单片机的外部经由过程XTAL1.XTAL2这两个引脚跨接晶体振荡器和微调电容,构成稳固的自激振荡器.本体系采取的为11.0592MHz 的晶振,一个机械周期为1us,C1.C2为22PF.XTAL218XTAL119ALE 30EA31PSEN 29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR 16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51C130pFC230pFX1CRYSTAL图5 外部时钟方法电路图3.4 手动复位电路复位电路分为上电主动复位和按键手动复位,RST 引脚是复位旌旗灯号的输入端,复位旌旗灯号是高电平有用.上电主动复位经由过程电容C3和电阻R2来实现,按键手动复位是图6中复位键来实现的.XTAL218XTAL119ALE 30EA31PSEN 29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR 16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51C34.7uFR1400图6 手动复位电路3.5 霓虹灯掌握电路霓虹灯掌握电路用红色.绿色.黄色LED 发光二极管,分离与8个1K 的分压电阻相串联,分离与单片机的P1.0,P1.1,P1.2,P1.3,P1.4,P1.5,P1.6,P1.7口相连.四.软件设计在用表格进行程序设计的时刻,要用以下的指令来完成1. 运用MOV DPTR,#DATA16 的指令来使数据指针存放器指到表的开首.2. 运用MOVC A,@A +DPTR 的指令,依据累加器的值再加上DPTR 的值,就可以使程序计数器PC 指到表格内所要掏出的数据.是以,只要把掌握码建成一个表,而运用MOVC A,@A +DPTR 做取码的操纵,就可便利地处理一些庞杂的掌握动作,取表进程如下图所示:3. 汇编源程序ORG 0START: MOV DPTR,#TABLE LOOP: CLR AMOVC A,@A+DPTRCJNE A,#01H,LOOP1JMP STARTLOOP1: MOV P1,AMOV R3,#20LCALL DELAYINC DPTRJMP LOOPDELAY: MOV R4,#20D1: MOV R5,#248DJNZ R5,$DJNZ R4,D1DJNZ R3,DELAYRETTABLE: DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FHDB 0FEH,0FDH,0FBH,0F7HDB 0EFH,0DFH,0BFH,07FHDB 07FH,0BFH,0DFH,0EFHDB 0F7H,0FBH,0FDH,0FEHDB 07FH,0BFH,0DFH,0EFHDB 0F7H,0FBH,0FDH,0FEHDB 00H, 0FFH,00H, 0FFHDB 01HEND4. C 说话源程序#include <reg52.h>unsigned char code table[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0x00,0xff,0x00,0xff,0x01};unsigned char i;void delay(void){unsigned char m,n,s;for(m=20;m>0;m--)for(n=20;n>0;n--)for(s=248;s>0;s--);}void main(void){while(1){if(table[i]!=0x01){P1=table[i];i++;delay();}else{i=0;}}}在protues长进行仿真试验.起首运用Keil uVsion 2将编写完成的程序编译生成HEX文件,将HEX文件烧录到单片机中,进行仿真试验,成果如下图所示,可以看到,LED已经选择性的闪耀.仿真图六.总结经由过程此次重要的课程设计,我收成颇多,天天面临着电脑,翻阅各类相干材料,也亲自着手调试,领会颇深.在此次课设中,加深了单片机相干常识的懂得,也接触了烧录器.在课设开端的前期,也碰到了麻烦,比方说,LED闪耀时光不相符请求,C说话编程不太闇练,很感激汤先生的耐烦教诲,她的滑稽让我们认为亲热,她的卖力负责让我们折服.在忙碌的一个学期即将停止之时,我的思惟成熟了,此次的课设让我找到了偏向,让我懂得了许多,有常识方面的,但大部分照样人格方面的.我信任,只要不废弃,只要尽力,就必定可以!附录I 元件清单。

基于51单片机霓虹灯

基于51单片机霓虹灯

实训报告基于单片机的霓虹灯设计姓名:xxx学号:xxxxxxxxxxxxxxx2018/5/311.模块功能简介1.1 STC89C52单片机及其引脚说明89C52是一种高性能低功耗的采用CMOS工艺制造的8位微控制器,它提供下列标准特征:4K字节的程序存储器,128字节的RAM,32条I/O线,2个16位定时器/计数器, 一个5中断源两个优先级的中断结构,一个双工的串行口, 片上震荡器和时钟电路。

引脚说明:·V CC:电源电压·GND:地·P0口:P0口是一组8位漏极开路型双向I/O口,作为输出口用时,每个引脚能驱动8个TTL 逻辑门电路。

当对0端口写入1时,可以作为高阻抗输入端使用。

当P0口访问外部程序存储器或数据存储器时,它还可设定成地址数据总线复用的形式。

在这种模式下,P0口具有内部上拉电阻。

在EPROM编程时,P0口接收指令字节,同时输出指令字节在程序校验时。

程序校验时需要外接上拉电阻。

·P1口:P1口是一带有内部上拉电阻的8位双向I/O口。

P1口的输出缓冲能接受或输出4个TTL逻辑门电路。

当对P1口写1时,它们被内部的上拉电阻拉升为高电平,此时可以作为输入端使用。

当作为输入端使用时,P1口因为内部存在上拉电阻,所以当外部被拉低时会输出一个低电流<I IL)。

·P2口:P2是一带有内部上拉电阻的8位双向的I/O端口。

P2口的输出缓冲能驱动4个TTL 逻辑门电路。

当向P2口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。

作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流<I IL)。

P2口在访问外部程序存储器或16位地址的外部数据存储器<例如MOVX @ DPTR)时,P2口送出高8位地址数据。

在这种情况下,P2口使用强大的内部上拉电阻功能当输出1时。

当利用8位地址线访问外部数据存储器时<例MOVX @R1),P2口输出特殊功能寄存器的内容。

课程设计(论文)-基于单片机的霓虹灯控制器设计

课程设计(论文)-基于单片机的霓虹灯控制器设计

题目:基于单片机的霓虹灯控制器设计摘要霓虹灯在现代社会中有广泛的应用,但传统的霓虹灯控制器利用移位寄存器的移位方式,只能实现几种有限的花式,因此市场迫切需要一种低成本高性能的霓虹灯控制器。

本设计基于单片机实现多种花式的霓虹灯控制器。

以AT89C52单片机为控制核心,使用独立式按键实现对霓虹灯的控制。

该系统主要由单片机的主控部分、键盘输入部分和LED 显示部分组成,运用I/O口输出的信号驱动发光二极管和数码管,使其产生有规律的闪烁和移动。

该控制器电路实现简单,成本低,具有较高的性价比。

关键字:霓虹灯;AT89C52;发光二极管;数码管目录1.设计任务 (1)1.1 设计目的和意义 (1)1.2 设计任务与要求 (1)2.硬件系统设计 (2)2.1总体设计方案 (2)2.1.1设计思路 (2)2.1.2方案论证与比较 (2)2.2 具体电路设计 (3)2.2.1单片机A T89C52简介 (3)2.2.2外部时钟方式电路 (4)2.2.3手动复位电路 (4)2.2.4 发光二极管电路 (4)2.2.5数码管电路 (6)2.2.6 键盘控制电路 (7)2.3 整体硬件电路 (8)2.4系统所用元器件 (8)3.软件系统设计 (10)3.1软件系统总体设计方案 (10)3.2程序流程图 (10)3.2.1模式一子程序 (11)3.2.2模式二子程序 (11)4.调试及仿真 (12)5.总结 (13)5.1本系统存在的问题及改进措施 (13)5.2心得体会 (13)参考文献 (13)1.设计任务1.1 设计目的和意义随着时代的进步,霓虹灯渐渐进入了人们的生活,如大型电子广告牌、汽车车灯、指示牌和工业控制的控制面板等都有霓虹灯的应用。

但目前市场上的霓虹灯控制器能够实现的花式有限,且价格较贵。

因此,设计一种性价比高,易于操作的霓虹灯控制器尤为重要。

通过对霓虹灯控制器的设计,训练对单片机、电子技术等内容的综合应用能力。

基于单片机的霓虹灯控制系统设计

基于单片机的霓虹灯控制系统设计

目录0. 前言.................................................... 错误!未定义书签。

1. 总体方案设计............................................ 错误!未定义书签。

2. 硬件电路的设计.......................................... 错误!未定义书签。

2.1 单片机系统......................................... 错误!未定义书签。

2.2 LED概述............................................ 错误!未定义书签。

2.3 外部时钟方式电路................................... 错误!未定义书签。

2.4 手动复位电路....................................... 错误!未定义书签。

2.5 霓虹灯控制电路..................................... 错误!未定义书签。

3 软件设计................................................. 错误!未定义书签。

3.1中断服务流程........................................ 错误!未定义书签。

3.2霓虹灯控制电路流程 ................................. 错误!未定义书签。

4.联合调试................................................. 错误!未定义书签。

5. 课设小结及进一步设想.................................... 错误!未定义书签。

参考文献................................................... 错误!未定义书签。

基于单片机控制的霓虹灯系统设计

基于单片机控制的霓虹灯系统设计

基于单片机控制的霓虹灯系统设计摘要单片机技术在人们生活中的应用可以说是越来越广泛。

小到流水灯,智能控制,大到智能小车,MP3,MP4等电子设备,在人们的生活学习中可说是如影随形。

霓虹灯的设计就是单片机技术的一个重要应用,那么现在笔者就基于单片机控制的霓虹灯系统设计问题作以论述,希望初学者可以在其中得到一些帮助。

【关键词】单片机发光二极管智能控制系统1 系统整体设计本次设计采用的单片机的型号是AT89C51。

硬件组成主要是有单片机控制电路,LED发光二极管。

2 单片机最小系统说到单片机,本次实验选用的是89c51型号的单片机。

也是最基础的一款单片机。

为什么说89c51单片机是属于基础单片机呢?下面就简单介绍一下此款单片机的主要配置和功能吧。

首先来看图1所示的芯片。

这是一个单片机芯片。

主要有40个引脚,我们需要用到的管脚有以下几个如图1、图2:Vcc(40):+5V 电源,也就是给单片机供电所用的引脚Vss(20):接地,地线,就是所谓的零线,是与电源对应的引脚。

如果地线和电源的任意引脚出现问题,将直接导致单片机瘫痪。

四个I/O口引脚:P0 口(32~39)为8位双向三态I/O口RST/VPD(9)复位信号线,如果单片机内部程序出现问题,可以给这个引脚一个信号,就可以让单片机恢复初始设置了,EN/VPP(31)内部和外部程序存储器的选择线XTAL1(19)和XTAL2(18)接外部石英晶体单片机最小系统配置图如图2所示:首先要将电源信号线与内部和外部程序储存器选择先连接起来,就是40号引脚与31号引脚。

本实验中没有外接程序存储器,选择内部存储器就可以了。

但是如果当单片机内部存储器的容量不够大的时候,需要外接存储器了,那么就需要将31号引脚空出或者接地了。

我们看到左下角的18,19号引脚链接了一个晶振电路,引脚介绍时说过18,19号引脚是外接石英晶体,在整个单片机系统中他们所起到的作用是时钟作用。

也就是说,在整个单片机运行的过程中,时钟的作用是非常重要的,它是针对整个系统的时间配置,对于单片机系统来说,如果时钟错乱,那么整个系统的时序就会发生错误,会直接导致程序崩溃的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实训报告基于单片机的霓虹灯设计姓名:xxx学号:xxxxxxxxxxxxxxx2012/5/311.模块功能简介1.1 STC89C52单片机及其引脚说明89C52是一种高性能低功耗的采用CMOS工艺制造的8位微控制器,它提供下列标准特征:4K字节的程序存储器,128字节的RAM,32条I/O线,2个16位定时器/计数器, 一个5中断源两个优先级的中断结构,一个双工的串行口, 片上震荡器和时钟电路。

引脚说明:·V CC:电源电压·GND:地·P0口:P0口是一组8位漏极开路型双向I/O口,作为输出口用时,每个引脚能驱动8个TTL 逻辑门电路。

当对0端口写入1时,可以作为高阻抗输入端使用。

当P0口访问外部程序存储器或数据存储器时,它还可设定成地址数据总线复用的形式。

在这种模式下,P0口具有内部上拉电阻。

在EPROM编程时,P0口接收指令字节,同时输出指令字节在程序校验时。

程序校验时需要外接上拉电阻。

·P1口:P1口是一带有内部上拉电阻的8位双向I/O口。

P1口的输出缓冲能接受或输出4个TTL 逻辑门电路。

当对P1口写1时,它们被内部的上拉电阻拉升为高电平,此时可以作为输入端使用。

当作为输入端使用时,P1口因为内部存在上拉电阻,所以当外部被拉低时会输出一个低电流(I IL)。

·P2口:P2是一带有内部上拉电阻的8位双向的I/O端口。

P2口的输出缓冲能驱动4个TTL逻辑门电路。

当向P2口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。

作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(I IL)。

P2口在访问外部程序存储器或16位地址的外部数据存储器(例如MOVX @ DPTR)时,P2口送出高8位地址数据。

在这种情况下,P2口使用强大的内部上拉电阻功能当输出1时。

当利用8位地址线访问外部数据存储器时(例MOVX @R1),P2口输出特殊功能寄存器的内容。

当EPROM编程或校验时,P2口同时接收高8位地址和一些控制信号。

·P3口:P3是一带有内部上拉电阻的8位双向的I/O端口。

P3口的输出缓冲能驱动4个TTL逻辑门电路。

当向P3口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。

作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(I IL)。

·RST:复位输入。

当振荡器工作时,RST引脚出现两个机器周期的高电平将使单片机复位。

·ALE/PROG:当访问外部存储器时,地址锁存允许是一输出脉冲,用以锁存地址的低8位字节。

当在Flash编程时还可以作为编程脉冲输出(PROG)。

一般情况下,ALE是以晶振频率的1/6输出,可以用作外部时钟或定时目的。

但也要注意,每当访问外部数据存储器时将跳过一个ALE脉冲。

·PSEN:程序存储允许时外部程序存储器的读选通信号。

当AT89C52执行外部程序存储器的指令时,每个机器周期PSEN两次有效,除了当访问外部数据存储器时,PSEN将跳过两个信号。

·EA/V PP:外部访问允许。

为了使单片机能够有效的传送外部数据存储器从0000H到FFFH单元的指令,EA必须同GND相连接。

需要主要的是,如果加密位1被编程,复位时EA端会自动内部锁存。

当执行内部编程指令时,EA应该接到V CC端。

·XTAL1:振荡器反相放大器以及内部时钟电路的输入端。

·XTAL2:振荡器反相放大器的输出端。

1.2 单片机的最小系统电路本次实训用到的晶振为12M,30PF的无极性电容两个,主要作用是帮助振荡器起振,晶体的振荡频率范围是1.2~13MHZ。

晶体振荡频率高,则系统的时钟频率也高,单片机运行的速度也就越快在最小系统中用到一个轻触按键,用于单片机的复位,接单片机的第9脚.单片机最小系统连线如图1所示:图1 单片机最小系统1.3电路中的发光二极管的接法共阳接法主控模块采用的是AT89S52单片机,AT89S52是一个8位单片机,片内ROM全部采用FLASH ROM 技术,与MCS-51系列完全兼容,它能以3V的超低电压工作,晶振时钟最高可达24MHz。

AT89S52是标准的40引脚双列直插式集成电路芯片,有4个八位的并行双向I/O端口,分别记作P0、P1、P2、P3。

第31引脚需要接高电位使单片机选用内部程序存储器;第9引脚是复位引脚,要接一个上电手动复位电路;第40脚为电源端VCC,接+5V电源,第20引脚为接地端VSS,通常在VCC和VSS引脚之间接0.1μF高频滤波电容。

第18、19脚之间接上一个12MHz的晶振为单片机提供时钟信号。

芯片与电路图:LED发光二极管如图3所示:图3 LED发光二极管连接图1.4 LED发光二极管LED发光二极采用共阳接法,由于单片机I/O口输出功率比较小.如果把发光二极管阳极接在I/O口的话,会导致二极管亮度不够.共阳接法使得发光二极管获得比较大的功率。

实训中用到16个470欧的电阻,起到限流的作用,保护LED发光二极管。

该霓虹灯是以单片机AT89S52为核心来完成的,在硬件电路中采用P2口作为8位LED数码管的驱动接口。

单片机的八个输出端P0口同时又用来控制数码管的显示。

8个三极管,再接于数码管阳极用于驱动数码管。

因为共阳的LED数码管它的驱动电流是分开的,在单片机进行动态扫描的时候不会影响彼此的电流,故该电路中的8位LED数码管均用共阳极的数码管。

在8位LED显示时,为了简化电路,降低成本,8个LED显示器共用一个8位的I/O, 8位LED数码管的位选线分别由相应的端口控制,而将其相应的段选线并联在一起,由一个8位的I/O口控制,即P0口。

主控模块采用的是AT89S52单片机,AT89S52是一个8位单片机,片内ROM全部采用FLASH ROM 技术,与MCS-51系列完全兼容,它能以3V的超低电压工作,晶振时钟最高可达24MHz。

AT89S52是标准的40引脚双列直插式集成电路芯片,有4个八位的并行双向I/O端口,分别记作P0、P1、P2、P3。

第31引脚需要接高电位使单片机选用内部程序存储器;第9引脚是复位引脚,要接一个上电手动复位电路;第40脚为电源端VCC,接+5V电源,第20引脚为接地端VSS,通常在VCC和VSS引脚之间接0.1μF高频滤波电容。

第18、19脚之间接上一个12MHz的晶振为单片机提供时钟信号。

2 方案要求2.1 课题设计要求、系统方案介绍设计一个霓虹灯,采用LED模拟,要有多重花样.用单片机的P0口控制8盏发光二级管,P2口控制8盏发光二级管,P1口控制一个共阳数码管。

P0,P2口控制的 16盏灯排成4×4矩阵,数码管显示灯的花样种类,方案中总共有12种花样,数码管显示数字为0,1,2,3,4,5,6,7,8,9,H,F。

在设计的过程中,P0口要加上上拉电阻,这是单片机系统内部决定的。

在方案中用到三个按键,按键S1是单片机复位键,按键S2是中断控制灯的闪亮速度,按键S3是选择灯的花样,按键每按下一次,切换花样一次。

3单片机的选择方案一:8031芯片内部无ROM,需要外扩程序存储器,由此造成电路焊接的困难,况且使用8031还需要另外购买其他的芯片,从而造成成本较高,性价比低。

方案二:89C51芯片内部有ROM,且片内ROM全部采用Flash ROM,它能于3V的超低压工作,与MCS-51系列单片机完全兼容,但是其不具备ISP在线编程技术,需把程序编写好以后再放到编程器中烧写,才可以进行硬件电路的调试,倘若程序编写出现问题,调试电路就比较麻烦,而且其芯片内存也只有4KB。

方案三:采用STC89C52, STC89C52单片机是一种低功耗、高性能CMOS 8位微控制器,具有8K 在系统可编程Flash 存储器。

使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。

片上Flash允许程序存储器在系统可编程,亦适于常规编程器。

在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52单片机为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

4 实训总结在看到题目后,第一件事是根据据自己的情况选择一个题目,由于自己对单片机的掌握能力还处于入门级别,所以选择霓虹灯的设计,大致制定了一下计划,初步设计通过三个通讯端口输出来控制霓虹灯,在程序设计上基本上是按照要实现的功能来实现,由于时间的问题,程序没有简化,所以先对而言看起来比较的复杂,在硬件的焊接过程中,板子质量比较差,在焊接要求上比较的严格,焊接完成的后,先检测了一下硬件的焊接无误,然后测试了一下基本功能,然后开始设计霓虹灯样式,设计用keil软件进行设计,设计完成通过protues仿真。

所有功能设计完毕后,将程序烧录进单片机,基本设计完毕,通过这次实训,加深了对单片机的认识,对于焊接技术也有相应的提高,虽然这次的设计比较简单,但是这是一个开始,通过这次简单的开始可以慢慢的深入。

元件清单程序清单#include<reg52 .h>#define unit unsigned int voiddelayms(unit); void main() {while(1){P0=0xff;P1=0xff;P2=0xff;delayms(2000); P0=0x16;P1=0x56;P2=0x06;delayms(1000); P0=0xfe;P1=0xfe;P2=0xfe; delayms(80);P0=0x06;P1=0x56;P2=0x06;delayms(1000); P0=0xfe;P1=0xfe;P2=0xfe;delayms(80);P0=0x7e;P1=0x7e;P2=0x06;delayms(1000);P0=0xfe;P1=0xfe;P2=0xfe;delayms(80);P0=0x06;P1=0x56;P2=0x46;delayms(1000);P0=0xfe;P1=0xfe;P2=0xfe;delayms(80);P0=0x16;P1=0x56;P2=0x46;delayms(1000);P0=0xfe;P1=0xfe;P2=0xfe;delayms(80);P0=0x1e;P1=0xde;P2=0x06;delayms(1000);P0=0xfe;P1=0xfe;P2=0xfe;delayms(80);P0=0x56;P1=0x56;P2=0x06;delayms(1000);P0=0xfe;P1=0xfe;P2=0xfe;delayms(80);P0=0x46;P1=0x56;P2=0x16;delayms(1000);P0=0xfe;P1=0xfe;P2=0xfe;delayms(80);P0=0xfe;P1=0xfe;P2=0x06;delayms(1000);P0=0xfe;P1=0xfe;P2=0xfe;delayms(80);P0=0x06;P1=0x76;P2=0x06;delayms(1000);P0=0xff;P1=0xff;P2=0xff;delayms(300);P0=0xfe;delayms(100);P0=0xfc;delayms(100);P0=0xf8;delayms(100);P0=0xf0;delayms(100); P0=0xe0;delayms(100); P0=0xc0;delayms(100); P0=0x80;delayms(100); P0=0x00;delayms(100);P1=0xfe;delayms(100); P1=0xfc;delayms(100); P1=0xf8;delayms(100); P1=0xf0;delayms(100); P1=0xe0;delayms(100); P1=0xc0;delayms(100); P1=0x80; delayms(100);P1=0x00;delayms(100);P2=0xfe;delayms(100);P2=0xfc;delayms(100);P2=0xf8;delayms(100);P2=0xf0;delayms(100);P2=0xe0;delayms(100);P2=0xc0;delayms(100);P2=0x80;delayms(100);P2=0x00;delayms(100);P0=0x00;delayms(100);P0=0x80;delayms(100);P0=0xc0;delayms(100);P0=0xe0;delayms(100);P0=0xf0;delayms(100);P0=0xf8;delayms(100);P0=0xfc;delayms(100);P0=0xfe;delayms(100);P0=0xff;delayms(100);P1=0x00;delayms(100);P1=0x80;delayms(100);P1=0xc0;delayms(100);P1=0xe0;delayms(100);P1=0xf0;delayms(100);P1=0xf8;delayms(100);P1=0xfc;delayms(100);P1=0xfe;delayms(100);P1=0xff;delayms(100);P2=0x00;delayms(100);P2=0x80;delayms(100);P2=0x80;delayms(100);P2=0xc0;delayms(100);P2=0xe0;delayms(100);P2=0xf0;delayms(100);P2=0xf8;delayms(100);P2=0xfc;delayms(100);P2=0xfe;delayms(100);P2=0xff; delayms(100);P0=0xff;P1=0xff;P2=0xff; delayms(300);P2=0xfe;delayms(100);P2=0xfc;delayms(100);P2=0xf8;delayms(100);P2=0xf0; delayms(100);P2=0xe0;delayms(100);P2=0xc0;delayms(100);P2=0x80;delayms(100);P2=0x00;delayms(100);P1=0xfe;delayms(100);P1=0xfc;delayms(100);P1=0xf8;delayms(100);P1=0xf0;delayms(100);P1=0xe0;delayms(100);P1=0xc0;delayms(100);P1=0x80;delayms(100);P1=0x00;delayms(100);P0=0xfe;delayms(100);P0=0xfc;delayms(100);P0=0xf8;delayms(100);P0=0xf0;delayms(100);P0=0xe0;delayms(100);P0=0xc0;delayms(100);P0=0x80;delayms(100);P0=0x00;delayms(100);P2=0x00;delayms(100);P2=0x80;delayms(100);P2=0xc0;delayms(100);P2=0xe0;delayms(100);P2=0xf0;delayms(100);P2=0xf8;delayms(100);P2=0xfc;delayms(100);P2=0xfe;delayms(100);P2=0xff;delayms(100);P1=0x00;delayms(100);P1=0x80;delayms(100);P1=0xc0;delayms(100);P1=0xe0;delayms(100); P1=0xf0;delayms(100); P1=0xf8;delayms(100); P1=0xfc;delayms(100); P1=0xfe;delayms(100); P1=0xff;delayms(100); P0=0x00;delayms(100); P0=0x80;delayms(100); P0=0xc0;delayms(100); P0=0xe0;delayms(100); P0=0xf0;delayms(100); P0=0xf8; delayms(100);P0=0xfc;delayms(100);P0=0xfe;delayms(100);P0=0xff;delayms(100);P0=0x00;delayms(400);P1=0x00;delayms(400);P2=0x00;delayms(400);P0=0xff;delayms(400);P1=0xff;delayms(400);P2=0xff;delayms(400);P0=0x00;delayms(400);P1=0x00;delayms(400);P2=0x00;delayms(400);P0=0xff;delayms(400);P1=0xff;delayms(400);P2=0xff;delayms(400);P0=0xff;P1=0xff;P2=0xff;delayms(300);P0=0x00;P1=0x00;P2=0x00;delayms(400);P0=0xff;P1=0xff;P2=0xff;delayms(400);P0=0x00;P1=0x00;P2=0x00;delayms(400);P0=0x55;P1=0xff;P2=0x55;delayms(300);P0=0xaa;P1=0x7e;P2=0xaa;delayms(300);P0=0x55;P1=0xff;P2=0x55;delayms(300);P0=0xaa;P1=0x7e;P2=0xaa;delayms(300);P0=0x55;P1=0xff;P2=0x55;delayms(300);P0=0xaa;P1=0x7e;P2=0xaa;delayms(300);P0=0x55;P1=0xff; P2=0x55;delayms(300); P0=0xaa; P1=0x7e; P2=0xaa;delayms(300); P0=0x55; P1=0xff; P2=0x55;delayms(300); P0=0xaa; P1=0x7e; P2=0xaa;delayms(300); P0=0x55; P1=0xff; P2=0x55;delayms(300); P0=0xaa; P1=0x7e; P2=0xaa;delayms(300); P0=0x55; P1=0xff; P2=0x55;delayms(300);P0=0xaa;P1=0x7e;P2=0xaa;delayms(300);P0=0xff;P1=0xff;P2=0xff;delayms(300);P0=0x7f;delayms(300);P1=0xbf;delayms(300);P2=0xdf;delayms(300);P1=0xaf;delayms(300);P0=0x77;delayms(300);P1=0xab;delayms(300);P2=0xdd;delayms(300);P1=0xaa;delayms(300);P0=0xff;P1=0xff;P2=0xff;delayms(300);P2=0x7f;delayms(300);P1=0xbf;delayms(300);P0=0xdf;delayms(300);P1=0xaf;delayms(300);P2=0x77;delayms(300);P1=0xab;delayms(300);P0=0xdd;delayms(300);P1=0xaa;delayms(300);P0=0xff;P1=0xff;P2=0xff;delayms(300);P0=0x7f;delayms(300);P1=0xbf;delayms(300);P2=0xdf;delayms(300);P1=0xaf;delayms(300);P0=0x77;delayms(300);P1=0xab;delayms(300);P2=0xdd;delayms(300);P1=0xaa;delayms(300);P0=0xff;P1=0xff;P2=0xff;delayms(300);P2=0x7f;delayms(300);P1=0xbf;delayms(300);P0=0xdf;delayms(300); P1=0xaf;delayms(300); P2=0x77;delayms(300); P1=0xab;delayms(300); P0=0xdd;delayms(300); P1=0xaa;delayms(500);P0=0xff; P1=0xff; P2=0xff;delayms(300);P0=0x7f; P1=0x7f; P2=0x7f;delayms(300); P0=0xbf; P1=0xbf; P2=0xbf; delayms(300);P0=0xdf;P1=0xdf;P2=0xdf;delayms(300);P0=0xef;P1=0xef;P2=0xef;delayms(300);P0=0xf7;P1=0xf7;P2=0xf7;delayms(300);P0=0xfb;P1=0xfb;P2=0xfb;delayms(300);P0=0xfd;P1=0xfd;P2=0xfd;delayms(300);P0=0xfe;P1=0xfe;P2=0xfe;delayms(300);P0=0x7f;P1=0x7f;P2=0x7f;delayms(300);P0=0x3f;P1=0x3f;P2=0x3f;delayms(300);P0=0x1f;P1=0x1f;P2=0x1f;delayms(300);P0=0x0f;P1=0x0f;P2=0x0f;delayms(300);P0=0x07;P1=0x07;P2=0x07;delayms(300);P0=0x03;P1=0x03;P2=0x03;delayms(300);P0=0x01;P1=0x01;P2=0x01;delayms(300);P0=0x00;P1=0x00;P2=0x00;delayms(300);P0=0x80;P1=0x80;P2=0x80;delayms(300);P0=0xc0;P1=0xc0;P2=0xc0;delayms(300);P0=0xe0;P1=0xe0;P2=0xe0;delayms(300);P0=0xf0;P1=0xf0;P2=0xf0;delayms(300);P0=0xf8;P1=0xf8;P2=0xf8;delayms(300);P0=0xfc;P1=0xfc;P2=0xfc;delayms(300);P0=0xfe;P1=0xfe; P2=0xfe;delayms(300); P0=0xff; P1=0xff; P2=0xff;delayms(300); P0=0x55; P1=0xaa; P2=0x55;delayms(800); P0=0xaa; P1=0x55; P2=0xaa;delayms(800); P0=0x55; P1=0xaa; P2=0x55; delayms(800);P0=0xaa;P1=0x55;P2=0xaa;delayms(800);P0=0x55;P1=0xaa;P2=0x55;delayms(800);P0=0xaa;P1=0x55;P2=0xaa;delayms(800);P0=0xff;P1=0xff;P2=0xff;delayms(800);P0=0x10;P1=0x59;P2=0x16;delayms(2000);P0=0x10;P1=0x59;P2=0x16;delayms(2000);P0=0x10;P1=0x59;P2=0x16;delayms(2000);P0=0xff;P1=0xff;P2=0xff;delayms(1000);}}voiddelayms(unitxms){unit i,j;for(i=xms;i>0;i--)for(j=110;j>0;j--);}附录三电路原理图。

相关文档
最新文档