1、 目录 摘要 关键词 一. 前言 二. 总体设计方案 三. 硬件电路设计 3.1 单片机系统 3。2 LED概述 3.3 外部时钟方式电路 3。4 手动复位电路 3。5 霓虹灯控制电路 四. 软件设计 五. 软件调试 六. 总结 附录 基于单片机的霓虹灯控制系统设计 基于单片机的霓虹灯控制系统设计 摘要:单片机技术是一门应用性很强的专业课,其理论与实践技能是从事机电类专业技术工作的人员所不可少的。本次程设计是选择AT80C51为核心控制元件,利用取表的方法,使端口P1 做单一灯的变化:左移2 次,右移2 次,闪烁2 次(延时的时间0。2 秒),设
2、计了单片机霓虹灯控制系统,使其产生有规律的闪烁和移动. 关键字T80C51LED灯霓虹灯 一。前言 单片机,亦称单片微电脑或单片微型计算机。它是把中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、输入/输出端口 (I/0)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机。单片机是把主要计算机功能部件都集成在一块芯片上的微型计算机。它是一种集计数和多中接口于一体的微控制器,被广泛应用在智能产品和工业自动化上,而51单片机是个单片机中最为典型和最有代表性的一种. 随着城市建设和市场经济的飞速发展,城市的美化和日益激烈的广告竞争越来越得到社会的关注,作
3、为城市装饰和广告宣传的霓虹灯的需求量也越来越大。过去霓虹灯控制器多采用E2PROM和相应的逻辑电路来完成,现在也有采用一些专用霓虹灯控制芯片的控制器。前者所需电路较多,制作不易改变,且所需控制的霓虹灯路数越多,扩展起来也比较繁杂;而后者由于电路已作定,控制方式不能随意改变,功能较为单一。然而市场上需要低成本高性能的霓虹灯控制技术.我们此次设计的霓虹灯控制系统就符合市场需求。 二.总体方案设计 在本次设计中,硬件部分由单片机系统、LED发光二极管组成。原理图如图1所示。单片机选用的是AT89C51单片机,利用其中的一个定时器设定灯光闪烁的时间,时钟电路选用的是11。0592M的晶振。复位电路
4、部分采用的是上电复位和手动复位两种复位方式。由于考虑到单片机I/O端口的带载能力,LED发光二极管采用共阳极的接法,用1K电阻分压。 软件部分,由于采用的是11.0592M晶振的时钟电路,单片机定时器的最大定时时间为65。536ms,不能达到要求的闪烁频率.所以采用定时50ms,10个定时中断灯光进行一次亮灭的跳变。并在每一次跳变时记录下灯闪烁的次数,通过对闪烁次数的判断,来进行对不同LED灯的亮灭的整体时序循环控制. 单 片 机 LED 显示 电路 复位电路 时钟电路 图1单片机的霓虹灯控制电路原理图 三。硬件电路的设计 3.1单片机系统 标
5、准型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芯
6、片引脚 I/O 存储器 EPROM/ROM 定时/计数器 运算器 控制器 中断 CPU 片内振荡器 RAM/SFP 并行口 存储器扩展控制器 串行口 XTAL 图3AT89C51内部结构原理图 3。2 LED概述 LED(Light Emitting Diode),发光二极管,是一种固态的半导体器件,它可以直接把电转化为光。LED的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来.半导体晶片由三部分组成,一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子,
7、中间通常是1至5个周期的量子阱。当电流通过导线作用于这个晶片的时候,电子和空穴就会被推向量子阱,在量子阱内电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED发光的原理.而光的波长也就是光的颜色,是由形成P—N结的材料决定的。它是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。由于具有容易控制、低压直流驱动、组合后色彩表现丰富、使用寿命长等优点,广泛应用于城市各工程中、大屏幕显示系统.LED可以作为显示屏,在计算机控制下,显示色彩变化万千的视频和图片。 LED是一种能够将电能转化为可见光的半导体。 近十几年来,为了开发蓝
8、色高亮度发光二极管,世界各地相关研究的人员无不全力投入。而商业化的产品如蓝光及绿光发光二级管LED及激光二级管LD的应用无不说明了III-V族元素所蕴藏的潜能。在目前商品化LED之材料及其外延技术中,红色及绿色发光二极管之外延技术大多为液相外延成长法为主,而黄色、橙色发光二极管目前仍以气相外延成长法成长磷砷化镓GaAsP材料为主.LED的具体结构如图4所示: 图4 LED的结构图 3。3 外部时钟方式电路 外部时钟电路如图5所示,它在单片机的外部通过XTAL1、XTAL2这两个引脚跨接晶体振荡器和微调电容,构成稳定的自激振荡器.本系统采用的为11。0592MHz的晶振,一个机器周期为1
9、us,C1、C2为22PF。 图5 外部时钟方式电路图 3。4 手动复位电路 复位电路分为上电自动复位和按键手动复位,RST引脚是复位信号的输入端,复位信号是高电平有效。上电自动复位通过电容C3和电阻R2来实现,按键手动复位是图6中复位键来实现的。 图6 手动复位电路 3。5 霓虹灯控制电路 霓虹灯控制电路用红色、绿色、黄色LED发光二极管,分别与8个1K的分压电阻相串联,分别与单片机的P1。0,P1。1,P1。2,P1.3,P1。4,P1.5,P1。6,P1。7口相连。
10、 四.软件设计 在用表格进行程序设计的时候,要用以下的指令来完成 1. 利用MOV DPTR,#DATA16 的指令来使数据指针寄存器指到表的开头。 2。 利用MOVC A,@A+DPTR 的指令,根据累加器的值再加上DPTR 的值,就可以使程序计数器PC 指到表格内所要取出的数据。 因此,只要把控制码建成一个表,而利用MOVC A,@A+DPTR 做取码的操作,就可方便地处理一些复杂的控制动作,取表过程如下图所示: 3。 汇编源程序 ORG 0 START: MOV DPTR,#TABLE LOOP: CLR A MOVC A,@A+DPTR CJNE A,#01H,LO
11、OP1 JMP START LOOP1: MOV P1,A MOV R3,#20 LCALL DELAY INC DPTR JMP LOOP DELAY: MOV R4,#20 D1: MOV R5,#248 DJNZ R5,$ DJNZ R4,D1 DJNZ R3,DELAY RET TABLE: DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FH DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FH DB 07FH,0BFH,0DFH,0EFH DB 0F7H,0FBH,0FD
12、H,0FEH
DB 07FH,0BFH,0DFH,0EFH
DB 0F7H,0FBH,0FDH,0FEH
DB 00H, 0FFH,00H, 0FFH
DB 01H
END
4。 C 语言源程序
#include
13、f,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; } } } 五.软
14、件调试 在protues上进行仿真实验。首先使用Keil uVsion 2将编写完成的程序编译生成HEX文件,将HEX文件烧录到单片机中,进行仿真实验,结果如下图所示,可以看到,LED已经选择性的闪烁。 仿真图 六。总结 通过这次紧张的课程设计,我收获颇多,每天面对着电脑,翻阅各种相关资料,也亲自动手调试,体会颇深.在这次课设中,加深了单片机相关知识的理解,也接触了烧录器. 在课设开始的前期,也遇到了麻烦,比如说,LED闪烁时间不符合要求,C语言编程不太熟练,很感谢汤老师的耐心教导,她的幽默让我们觉得亲切,她的认真负责让我们折服.在繁忙的一个学期即将结束之时,我的思想成熟了,这次的课设让我找到了方向,让我懂得了很多,有知识方面的,但大部分还是人格方面的.我相信,只要不放弃,只要努力,就一定可以! 附录I 元件清单 元件名称 型号 数量 单片机 AT89C51 1 LED Ark SM470501K 8 电容 33pf 2 电阻 1K 8 排线 2 晶振 11。0592MHz 1 第6页






