《单片机彩灯控制课程设计.doc》由会员分享,可在线阅读,更多相关《单片机彩灯控制课程设计.doc(11页珍藏版)》请在三一办公上搜索。
1、目 录.一 概述2 1.1 彩灯的设计背景及意义2 1.2 系统设计功能概述2二 彩灯设计内容简要2 2.1 彩灯设计要求2 2.2 彩灯设计原理2 2.3 彩灯总体控制框图3.三 硬件电路设计3 3.1 硬件组成3 3.2 80C51单片机硬件结构4 3.3 系统的硬件构成及功能5.四 系统的软件设计5软件程序6.五 设计体会8.六 参考文献9 彩灯控制器设计一.概述1.1彩灯的设计背景及意义彩灯是人们日常生活中的一种装饰用品,它美观大方,尤其在节日期间,倍增节日气氛。它蕴涵着丰富的文化底蕴,被广泛地应用于各种店面的装饰。变换无穷的彩灯样式,给城市增添活力,吸引着人们的注意力,深受人民的喜爱
2、。在日常生活中,人们还将彩灯摆放成各种图案,增添美感。随着电子技术的发展,应用系统向着小型化、快速化、大容量、重量轻的方向发展。科学技术更加贴近人们的生活,向着满足人们需求的方向发展。1.2系统设计功能概述本设计是以80C51单片机为基础的彩灯控制方案,来实现对LED彩灯的控制。以80C51单片机作为主控核心,与键盘、显示、驱动等模块组成核心主控制模块。在lab6000试验箱上根据上位机发出信号和从机的外部中断来控制彩灯的花型及其变化的快慢。二.彩灯设计内容简要:2.1彩灯设计要求:1.花型种类不少于四种,花型自拟(可用数码管的各段及发光二极管做彩灯); 2.可用键控制彩灯按预设的花型进行变换
3、;3.可用键控制分别用快/慢两种节拍实现花型变换。本机地址为00H,当接到上位机发的00H时,则回发00H当接到上位机发的AAH时,则将预设花型代号发出当收到55H时,则后面的数据为新的花型2.2彩灯设计原理:主要在lab6000试验箱上进行控制。通过软件设计,使上位机单片机P0口作为三色LED驱动信号输出口,P1口为8个按键输入口。下位机P1口与八个发光二极管相接作为输出口、P0口与8位七段码LED相接作为显示器的输出口。2.3彩灯总体控制框图:LED显示电路(给从机发出信号)接受从机发回信号复位电路按键电路(输入控制信号)(上位机)80C51单片机八个发光二极管显示花样外部中断复位电路接受
4、主机信号(从机)80C51单片机三硬件电路设计:3.1硬件组成按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等. 80C51单片机属于MCS-51系列单片机,由Intel公司开发,其结构是8048的延伸,改进了8048的缺点,增加了如乘(MUL)、除(DIV)、减(SUBB)、比较(PUSH)、16位数据指针、布尔代数运算等指令,以及串行通信能力和5个中断源。采用40引脚双列直插式DIP(Dual In Line Package),内有128个RAM单元及4K的ROM。80C51有两个16位定时计数器,两个外中断,两个定时计数中断,及一个串行中断,并有4
5、个8位并行输入口。80C51内部有时钟电路,但需要石英晶体和微调电容外接,本系统中采用12MHz的晶振频率。因此,彩灯控制器为由发光二极管、数码管、晶振、复位、电源等电路和必要的软件组成的单个单片机3.2 80C51单片机硬件结构:80C51外形及引脚排列如图所示: 管脚说明: RST:复位输入信号,高电平有效。在振荡器工作时,在RST上作用两个机器周期以上的高电平,将器件复位。P0口:8位、漏极开路的双向I/O口当使用片外存储器(ROM及RAM)时,作低八位地址和数据总线分时复用。P0口(作为总线时)能驱动 8个 LSTTL负载。P1口:8位、准双向I/O 口。在编程/校验期间,用做输入低位
6、字节地址。P1口可以驱动 4个 LSTTL负载。P2口:8位、准双向I/O口。当使用片外存储器(ROM及RAM)时,输出高8位地址。在编程/校验期间,接收高位字节地址。P2口可以驱动4个LSTTL负载。 P3口:8位、准双向I/O口,具有内部上拉电路。P3提供各种替代功能。P3口可以输入/输出4个LSTTL负载。串行口: P30RXD 串行输入口。P31TXD 串行输出口。中断:P32 外部中断0输入。P33 外部中断1输入。 EA /Vpp片外程序存储器访问允许信号,低电平有效。EA=1,选择片内程序存储器(80C51为4KB,80C52为8KB) ;EA=0,则程序存储器全部在片外而不管片
7、内是否有程序存储器。ALE/PROG地址锁存允许信号,输出。在访问片外存储器或I/O时,用于锁存低八位地址,以实现低八位地址与数据的隔离。 PSEN 片外程序存储器读选通信号,低电平有效。在从片外程序存储器取指期间,在每个机器周期中,当有效时,程序存储器的内容被送上 P0口(数据总线)。可以驱动 8个LSTTL负载。电源和晶振:Vcc运行和程序校验时接电源正端。Vss接地。XTAL1输入到单片微机内部振荡器的反相放大器。XTAL2反相放大器的输出,输入到内部时钟发生器。33系统的硬件构成及功能描述:控制系统硬件设计电路图如图所示:上位机硬件控制电路 系统硬件设计电路图功能描述:上位机硬件设计电
8、路主要由四部分组成:按键复位电路、时钟振荡电路、按键电路、LED显示电路。按键复位电路:复位是单片机的初始化操作,其作用是使CPU中的各个部件都处于一个确定的初始状态,并从这个状态开始工作。在接电瞬间RST端的电位与Vcc相同,随着电容充电电流的减小,+5V立即加到了RST/VPD端,RST的电位逐渐下降 时钟振荡电路:在80C51的外部,XTAL1和XTAL2之间跨越晶体振荡器和微调电容,从而构成一个自激振荡器,形成时钟振荡电路。时钟电路产生的振荡脉冲经过触发器二分频后,形成单片机的时钟脉冲信号。按键电路:用P1.0P1.7八个I/O口作为输入口,按键输入均采用高电平有效。图中P1口的按键,
9、工作时可以发出控制从机的信号,即控制整个系统。LED显示电路:与单片机的P0口相连接,其电路图如图所示。 可以显示主机发出的信号,也可以显示从机反馈回来的信号。下位机硬件接卸控制电路功能描述:系统硬件设计电路主要由四部分组成:按键复位电路、时钟振荡电路、外部中断、发光二极管显示、LED显示电路。按键复位电路:复位是单片机的初始化操作,其作用是使CPU中的各个部件都处于一个确定的初始状态,并从这个状态开始工作。在接电瞬间RST端的电位与Vcc相同,随着电容充电电流的减小,+5V立即加到了RST/VPD端,RST的电位逐渐下降。 时钟振荡电路:在80C51的外部,XTAL1和XTAL2之间跨越晶体
10、振荡器和微调电容,从而构成一个自激振荡器,形成时钟振荡电路。时钟电路产生的振荡脉冲经过触发器二分频后,形成单片机的时钟脉冲信号。发光二极管显示电路:用P0.0P0.7八个I/O口作为输出口,用来显示不同的花型.高电平有效。LED显示电路:与单片机的P1口相连接,其电路图如图所示。有来显示接收到的主机信号。外部中断电路:P32 外部中断0输入用来控制花型的变化实现出现不同花型。P33 外部中断1输入用来控制花型变化的快慢。四系统的软件设计 程序如下:ORG 0000H AJMP START ;指向主程序 ORG 0010HMAIN:MOV P1,#0FFH ;设置P1口为输入口START: MO
11、V P0,#0FFH ;初始状态,选择场景控制开关 JNB P0.0,KEY0 SJMP STARTKEY0: JNB P0.1, KEY1 JNB P0.2, KEY2 JNB P0.3, KEY3 JNB P0.4, KEY4 SJMP STARTSTART1: MOV P0, #0FFH ACALL DELAY MOV A, P1 ;送显示初值 JNB ACC.1, KEY1 ;ACC.1=0?若为0则P1.1对应的键按下,转KEY1 JNB ACC.2, KEY2 ;ACC.2=0?若为0则P1.2对应的键按下,转KEY2 JNB ACC.3, KEY3 ;ACC.3=0?若为0则P1
12、.3对应的键按下,转KEY3 JNB ACC.4, KEY4 ;ACC.1=0?若为0则P1.4对应的键按下,转KEY4 SJMP START1 KEY1:MOVR2,#08H MOVR5,#0FEHNEXT0:MOVA,P0 JNB ACC.3,KEY4 JNB ACC.4,KEY3 JB ACC.0,MAIN MOVA,R5 MOVP1,A ;点亮灯 ACALLDELAY MOVA,R5 RL A ;左移,下一个灯亮 MOVR5,A DJNZR2,NEXT0 SJMPKEY1KEY2: MOV A,P0 ;按键2,三色联动,JB ACC.0,MAIN ;检测开关是否按下 JNB ACC.4
13、, KEY3 JNB ACC.3, KEY4 MOV P1,#0DAH ACALL DELAY2 MOV P1,#0C7H ACALL DELAY2 MOV P1,#06EH ACALL DELAY2 AJMP KEY2LP1: JBC TF1, LP2 SJMP LP1LP2: MOV TH1, #0B1H MOV TL1, #0E0H DJNZ R3, LP1 RETKEY3: ACALL DELAY MOV A,R6 ;循环点亮加速 ADD A,#3H MOV R6,A SJMP NEXT0KEY4 : ACALL DELAY ;循环点亮减速 MOV A,R6 MOV A,#3H MOV
14、 R6,A SJMP NEXT0DELAY: MOV R3, #14H ;加速减速,延时程序 MOV TMOD, #10H MOV TH1, #0B1H MOV TL1, #0E0H SETB TR1DELAY2:CALLDELAY CALL DELAY RET END五设计体会:历时五个星期的单片机课程设计,我从中受益匪浅。因为对我而言学到的不仅是专业知识,而且是团队的合作精神。在本次课程设计中,我主要感触最深的当属查阅大量的设计资料了。为了让自己的设计更加完善,查阅这方面的设计资料是十分必要的,同时也是必不可少的。作为一个团队,分工就显得尤为重要,我主要负责系统硬件电路设计和最终调试的任务
15、,我和搭档互相帮助,彼此勉励,有问题一起寻求解决之道。虽然一开始我们就对方案的选择发生分歧,但这丝毫不影响我们的交流、探讨。因为大家初衷是一样的。开始设计的功能不能全部实现出来,于是拿着程序反复分析和修改,在老师和同学的帮助指导下最终找出错误所在。经过总结和分析,我和组员一致认为要做好一个课程设计,就必须做到:在设计程序之前,对所用单片机的内部结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰的思路和一个完整的的软件流程图;在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就
16、能明白你的思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是很正常,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题。 这次课程设计使我明白理论与实际相结合的重要,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从而提高自己的实际动手能力和独立思考的能力。同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。在接下来的复习中我会再接再厉,加深对单片机相关知识的理解。六参考文献:单片机应用技术张晔王玉民出版社:高等教育出版社 出版日期:2006.6跟我学用单片机. 肖洪兵 北京航空航天大学出版社 出版日期:2002.8 单片机实践应用与技术马长林、陈怡 北京大学出版社 出版日期:2008单片机高级教程第1版 何立民 北京航空航天大学出版社 出版日期:2001单片机课程设计指导 程成 出版社 清华大学出版社 出版日期:2009单片机原理及接口技术 李朝清 北京航空航天大学出版社出 版日期:1999