基于单片机的节日彩灯控制器
- 格式:docx
- 大小:51.04 KB
- 文档页数:10
单片机课程设计题目:院(系):专业:学号:姓名:指导教师:摘要彩灯控制器在我们的日常生活中有着重要的运用,如广告牌的设计和节日彩灯的设计都能运用到它的原理。
本次报告中设计的花样彩灯控制器是其中较简单的,但这是进行复杂设计的基础。
查阅相关资料,用简单的输入输出端口等硬件,结合实际彩灯的亮灭控制过程进行设计。
利用键盘上的灯实现灯的各种形式的变换,使彩灯变换的样式更多,克服了节日彩灯变换样式单调的缺点,使节日彩灯朝着变换多种多样的方式发展。
关键词:可编程节日彩灯;循环;控制高低电平;实现对彩灯的控制目录目录引言 (4)1、设计目的与要求 (5)2、设计总体方案 (5)3、模块电路的设计 (7)4、独立设计部分 (10)5、焊接制作与调试结果及其分析 (12)6、设计过程中的问题及其解决方案 (13)7、心得体会 (13)8、改进工作展望 (14)参考文献 (14)附录一 (15)附录二 (17)附录三 (19)1 设计目的与要求1.1引言在现代生活中,彩灯作为一种景观,安装在建筑物的适当地方。
一是作为装饰增添节日气氛,二是有一种广告宣传的作用:用在舞台上增强晚会灯光效果。
彩灯控制器在我们的日常生活中有着重要的运用,如广告牌的设计和节日彩灯的设计都能运用到它的原理。
本次报告中设计的花样彩灯控制器是其中较简单的,但这是进行复杂设计的基础。
数码管是一种半导体发光器件,其基本单元是发光二极管。
通过对其不同的管脚输入相对的电流,会使其发亮,从而显示出数字能够显示时间、日期、温度等所有可用数字表示的参数。
由于它的价格便宜、使用简单,在电器特别是家电领域应用极为广泛,空调、热水器、冰箱等等。
绝大多数热水器用的都是数码管,其他家电也用液晶屏与荧光屏。
可编程节日彩灯打破常规彩灯闪烁固定变化的现状,可根据人们不同的意愿进行编程设计出想要的变换的色彩效果。
查阅相关资料,用简单的输入输出端口等硬件,结合实际彩灯的亮灭控制过程进行设计。
1 任务及要求1.1 设计任务1. 设计一个基于单片机的节日彩灯控制器。
2. 设计出硬件电路;3. 设计出软件编程方法,并写出源代码;4. 用PROTEUS进行仿真;1.2 设计要求1.用C语言或汇编语言编实现程序设计。
2.利用查表,中断等方式实现目的。
3.系统的各各功能模块要清楚,有序。
4.程序运行时有友好的用户界面2 设计思想2.1 硬件设计思想节日彩灯控制器是利用将单片机的CPU、RAM、ROM、定时器/计数器及输入/输出(I/O)接口电路集成在一块集成电路芯片上的特点。
通过其与发光二极管及驱动电路的连接,从而构成一个完整的硬件电路。
然后通过对单片机的ROM进行编程,实现对彩灯闪烁的控制。
2.2 软件设计思想通过编程改变P1口的状态,从而改变彩灯的闪烁。
本程序主要可分为主程序模块,比较模块LOOP0、LOOP1、LOOP2、LOOP3、LOOP4、LOOP5和状态显示程序模块k1_light、k2_light、k3_light、k4_light延时程序模块del10ms 等模块。
其中延时时间t1 = T×20×248;t1 = T×C3H×FFH;T为单片机的机器周期3 电路原理与电路图3.1 电路原理以AT-89C52单片机作为主控核心,与按键、电阻等较少的辅助硬件电路相结合,利用软件实现对LED彩灯进行控制,材料有单片机AT89C52、多色发光二极管LED、电阻RES。
3.2 电路原理图4 流程图与算法描述4.1 流程图图4-1 主程序流程图4.2 算法描述本程序主要可分为主程序模块,比较模块,状态显示程序模块和延时程序模块。
比较模块LOOP0、LOOP1、LOOP2、LOOP3、LOOP4、LOOP5。
状态显示程序模块k1_light、k2_light、k3_light、k4_light延时程序模块del10ms等模块。
5程序清单org 0000hljmp startorg 0003hljmp ext1org 0020hstart: mov r0, #0ffh ; 对r0赋值,r0为所设标志位 setb ea ; 开中断setb ex0 ; 允许外部中断0申请中断setb it0 ; 外部中断0为跳变方式触发 mov sp, #70h ; 设置中断loop0: cjne r0, #0ffh, loop1 ; r0不为ff, 转到loop1ajmp main_light ; 否则执行左右流水灯loop1: cjne r0, #01h, loop2 ; r0不为01, 转到loop2ajmp k1_light ; 否则执行左向流水灯loop2: cjne r0, #02h, loop3 ; r0不为02, 转到loop3ajmp K2_light ; 否则执行右向流水灯loop3: cjne r0, #03h, loop4 ; r0不为03, 转到loop4ajmp k3_light ; 否则执行双亮点向中间移动loop4: cjne r0, #04h, loop5 ; r0不为04, 转到loop5ajmp k4_light ; 否则执行双亮点向两边移动loop5: ajmp loop0 ; 返回重新查询ext1: clr ea ; 关中断push accpush pswmov a, p1 ; 读入键值anl a, #0fh ; 屏蔽高四位mov 30h, a ; 键状态存入30hlcall del10msmov a, p1 ; 再次读入键值anl a, #0fhcjne a, 30h, pass ; 两次键值不同,是抖动,退出中断ajmp k1_check ; 如果相等,进行键识别k1_check: cjne a, #0eh, k2_check ; 不是k1, 判断是不是k2mov r0, #01h ; 是k1, 置标志为01ajmp passk2_check: cjne a, #0dh, k3_check ; 不是k2, 判断是不是k3mov r0, #02h ; 是k2, 置标志为02ajmp passk3_check: cjne a, #0bh, k4_check ; 不是k3, 判断是不是k4mov r0, #03h ; 是k3, 置标志为03ajmp passk4_check: cjne a, #07h, pass ; 不是k4, 退出中断mov r0, #04h ; 是k4, 置标志为04ajmp passpass: pop psw ; 现场恢复pop accsetb ea ; 开中断reti ; 中断返回main_light: mov r7, #08h ; 左右流水灯程序mov r6, #06hmov a, #0fehl_loop: mov r1, a ; r1保存现在亮点位置,做样式变换时从该处开始mov p0, alcall del100msrl adjnz r7, l_loopmov a, #0bfhr_loop: mov r1, amov p0, alcall del100msrr adjnz r6, r_loopajmp loop0k1_light: mov r1, a ; 左向流水灯mov p0, alcall del100msrl amov r1, aajmp loop0k2_light: mov r1, a ; 右向流水灯mov p0, alcall del100msrr amov r1, aajmp loop0k3_light: mov p0, #07eh ; 双亮点向中间移 lcall del100msmov p0, #0bdhlcall del100msmov p0, #0dbhlcall del100msmov p0, #0e7hlcall del100msajmp loop0k4_light: mov p0, #0e7h ; 双亮点向两边移lcall del100msmov p0, #0dbhlcall del100msmov p0, #0bdhlcall del100msmov p0, #07ehlcall del100msajmp loop0del10ms: ; 10ms延时子程序(12M) mov r5, #20temp1: mov r4, #248djnz r4, $djnz r5, temp1retdel100ms: mov r3, #0c3h ;100.036mstemp2: mov r2, #0ffh ;511usdjnz r2, $djnz r3, temp2retend6仿真结果图 6.1 从上到下闪烁图 6.2 从下到上闪烁图 6.3 上下同时闪烁7 设计总结7.1 设计体会通过这次的设计使我认识到我对单片机方面的知识太重要了,对于书本上的很多知识还不够熟悉,有很多我们需要掌握的知识还没掌握,我会在以后的学习生活中弥补我所缺少的知识。
任务书以单片机为核心,设计一个节日彩灯控制器控制24个LED灯:P1.2—开始,按此键则灯开始流动(由上而下)。
P1.3—停止,按此键则停止流动,所有灯为暗。
P1.4—上,按此键则灯由上向下流动。
P1.5—下,按此键则灯由下向上流动。
目录1.引言2.工艺过程3.系统控制要求4.方案论证5.系统电路设计6.系统软件设计7.系统程序设计8.连接调试9.心得10.致谢11.参考文献附录1.引言随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。
LED 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。
特别是每当节日的到来,节日彩灯更是到处都看的到。
节日彩灯已成为生活中不可缺少的装饰物。
它集中地运用了单片机、LED、,自动控制等技术,是典型的基于单片机的电子产品。
本文以AT89C51单片机为控制核心,采用模块化的设计方案,运用LED彩灯、按键等组成电路,实现彩灯在开启时满足不一样的闪亮方法。
按键可以在彩灯使用的时候选择不同的亮法,使彩灯变化多样,键一可以使彩灯依次循环点亮,健二可以使彩灯从左到又从右到左循环点亮,三号键使两端灭,中间亮,再对半交替亮,然后再奇偶亮。
通过按键能方便使用者选择不同样的亮法。
节日彩灯使生活中常常用到的装饰物品,是我国普遍流行的传统的民间的综合性的工艺品。
彩灯艺术也就是灯的综合性的装饰艺术。
在当今的社会里,彩灯已经成为我们生活的一部分,能给我们带来视觉上的享受还能美化我们的生活。
彩灯控制器主要是通过电路产生有规律变化的脉冲信号来实现彩灯的各种变化,它集中地运用了单片机、LED、,自动控制等技术,是典型的基于单片机的电子产品。
本文以AT89C51单片机为控制核心,采用模块化的设计方案,运用LED彩灯、按键等组成电路,实现彩灯在开启时满足不一样的闪亮方法。
按P1.2键使灯开始流动;按P1.3键则停止流动;按P1.4键则灯由上向下流动;按P1.5键则灯由下向上流动。
目录毕业论文(设计)任务书- 1 -开题报告- 2 -摘要- 5 -关键字- 6 -第一章方案论证与选择11.1 主控电路方案论证与选择11.2 电源电路方案论证与选择11.3 显示电路方案论证与选择2第二章硬件设计32.1 电源电路32.2 主控电路32.3 显示电路42.3.1 LED彩灯显示电路42.3.2 数码管显示电路42.4 按键电路5第三章软件设计63.1 主函数流程图73.2 中断函数流程图83.3 模式函数流程图9第四章芯片简介104.1 AT89S51单片机104.2 三端集成稳压器12第五章总结13参考文献14附录15致16毕业论文(设计)任务书开题报告一、课题来源由指导老师提供。
二、设计目的和意义㈠研究目的⒈建立基于单片机的彩灯控制器,用它来控制16个发光二极管发光,实现亮点的循环移动。
⒉通过软件编程实现各种各样的亮点平面循环移动。
该彩灯控制器能够实现五种闪烁模式。
通过按键可选择闪烁模式,并由数码管显示出是第几种模式。
㈡研究意义随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。
LED 彩灯由于其丰富的灯光色彩,低廉的造价以与控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。
通过对彩灯控制器的设计,提高单片机的应用能力,基本掌握单片机控制系统的设计流程。
三、国外现状和发展趋势目前,国的一些主要城市都是传统的单一循环式的彩灯控制器比较多,因为其功能单一,浪费高,又不方便实用渐趋淘汰,取而代之的新一代的单片机功能实现的控制器,其选择功能相当多,已经有些开始在研究基于单片机、芯片处理技术方面的平面循环彩灯控制器,并且以有一些线路以投入运行,到目前为止反映良好,更能适合于中小城市的普遍推广使用。
而我们也是利用单片机通过编程实现对平面彩灯实现各种控制,这种开发出的产品也是适合市场发展的潮流的。
在2008年奥运会上LED彩灯的应用远不仅于开幕式。
单片机课程设计--节日彩灯控制器的设计荆楚理工学院课程设计成果学院:电子信息工程学院班级:11电气工程及其自动化1班学生姓名:刘诗权学号: 2011401020127设计地点(单位):D1302设计题目: 节日彩灯控制器的设计完成日期: 2014 年 1 月3日指导教师评语:______________________________________________________________________________________________________________ ______________________________________________________________ ______________________________________________________________ ______________________________________________________________ ____________成绩(五级记分制):____________________教师签名:_____________________目录1 摘要 (1)2 系统简介 (2)2.1 总体设计方案说明 (2)2.2 单片机系统组成方框图 (2)2.3 AT89S51单片机介绍 (2)3 系统设计 (4)3.1 系统总体设计 (4)3.2 硬件电路设计 (5)3.3 软件设计 (7)4 实验结果与讨论 (11)5 结论 (12)6 参考文献 (12)7附录 (13)1 摘要随着科技的发展,节日彩灯已经作为节日的一个重要部分越来越丰富多彩了,同时它作为节日的一部分给我们的生活带来了许多美好。
本文分析了彩灯四种不同亮法的原理,基于汇编语言设计了一种按键控制的可以有四种不同亮法的彩灯,当按下第一个键的时候彩灯从上到下亮,按下第二个键时候彩灯从下到上亮,第三个键彩灯从中间到两边亮,第四个彩灯从两边到中间亮。
基于单片机的彩灯控制器设计一、引言彩灯是一种可以调节颜色和亮度的灯光装置,被广泛应用于舞台灯光效果、建筑物装饰、商业广告、节日庆典等场合。
传统的彩灯控制器往往依赖于传感器和模拟电路实现,无法快速调节灯光效果,操作不方便。
为了实现更加灵活、方便的彩灯控制,本文将设计一款基于单片机的彩灯控制器。
二、系统设计本彩灯控制器系统设计基于单片机,通过单片机控制器实现对灯光的调节和控制。
系统硬件主要由单片机、彩灯模块、按键开关、显示模块和电源构成,软件主要由单片机程序编写实现。
1.单片机选择单片机是整个系统的核心控制器,选择合适的单片机至关重要。
根据给定的设计要求,选取具有较强处理能力和丰富外设接口的单片机。
一般来说,常用的51系列单片机和STM32系列单片机具备较好的性能和扩展能力。
2.彩灯模块设计彩灯模块是实现灯光调节的核心部分,可以使用RGBLED灯珠或者是WS2812灯带等灯光模块。
通过控制彩灯模块的亮度和色彩来实现不同的灯光效果。
3.按键开关设计通过按键开关来切换不同的灯光模式,实现系统的开关和功能选择。
可以设计多个按键开关,分别对应不同的灯光模式,通过按下不同的按键实现灯光模式的切换。
4.显示模块设计为了方便用户了解灯光的当前状态和模式选择,可以使用OLED显示模块或者数码管显示模块来实现数据的显示。
5.电源设计由于彩灯模块通常需要较高的驱动电流,所以需要提供稳定的电源。
可以采用电池供电或者是AC-DC转换器等方式,确保系统稳定运行。
三、系统实现1.程序设计通过单片机编程实现对彩灯的控制和灯光模式的切换。
根据不同的按键输入,设置对应的灯光参数和模式,通过单片机的I/O接口控制彩灯模块的亮度和色彩。
2.硬件连接按照设计要求,将单片机、彩灯模块、按键开关、显示模块和电源连接起来。
通过对应的引脚和接口进行连接,确保系统正常运行。
四、总结本文设计了一款基于单片机的彩灯控制器,通过单片机编程实现对彩灯的控制和灯光模式的切换。
课程设计题目基于51单片机的节日彩灯设计学院物流工程学院专业物流工程班级姓名同组者指导教师月日课程设计任务书学生姓名:专业班级:指导教师:工作单位:物流工程 __题目: 单片机节日彩灯控制器初始条件:1.Protues 7 professional的ISIS 7 professional和ARES 7 professional软件2.Keil uvision4软件3.单片机的相关资料指导书要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)设计一个节日彩灯控制器,实现不同的闪烁方式,要求:(1)P3.3: 开始,按此键则灯开始流动(由上而下);(2)P3.2: 停止,按此键则停止流动,所有灯为暗;(3)P3.1: 上,按此键则灯由上向下流动;(4)P3.0: 下,按此键则灯由下向上流动。
时间安排:十八周到十九周设计,十九周答辩指导教师签名:年月日系主任(或责任教师)签名:年月日武汉理工大学课程设计教学检查记录表课程设计名称设计周数检查日期课程设计指导教师进行方式:集中□分散□.地点检查项目检查结果好一般不理想差课程设计选题适当程度学生数与指导教师数配比(15名学生/教师好; >=20名/教师一般; >=30名学生/教师不理想;>40名学生/教师差)指导教师到位情况学生课程设计完成进度及质量对学生课程设计日常管理(出勤考核)措施及执行情况课程设计秩序综合意见:检查人附件6:本科生课程设计成绩评定表姓名陈文超性别男专业、班级物流工程学院行政1001班课程设计题目:基于51单片机的交通灯设计课程设计答辩或质疑记录:1.选题合理、目的明确 10分2.设计方案正确,具有可行性、创新性 20分3.设计结果 20分4.态度认真、学习刻苦、遵守纪律 15分5.设计报告的规范化、参考文献充分(不少于5篇) 10分 6. 答辩 25分成绩评定依据:最终评定成绩(以优、良、中、及格、不及格评定)指导教师签字:年月日摘要 01 设计任务 (1)2 总体方案设计与论证 (2)2.1 方案比较 (2)2.2 方案论证 (3)2.3 方案选择 (3)3 系统硬件设计 (4)3.2 单片机最小系统设计 (4)3.3 LED彩灯显示电路设计 (4)3.4 按键控制电路设计 (4)4 系统的软件设计 (5)4.1 按键扫描子程序设计 (5)4.2 主程序设计 (5)参考文献 (7)彩灯是我国普遍流行的传统的民间的综合性的工艺品。
湖北文理学院理工学院课程单片机课程设计题目节日彩灯控制器设计专业通信工程姓名学号姓名学号姓名学号2015.6一、任务以单片机为核心,设计一个节日彩灯控制器。
二、设计要求以单片机为核心,设计一个节日彩灯控制器,要求有四个控制按键:●K1—开始,按此键则灯开始流动(两翼展开)。
●K2—停止,按此键则停止流动,所有灯为暗。
●K3—上,按此键则灯由上向下流动。
●K4—下,按此键则灯由下向上流动。
第1章绪论彩灯是我国普遍流行的传统的民间的综合性的工艺品。
彩灯艺术也就是灯的综合性的装饰艺术。
新中国成立后,彩灯艺术得到了更大的发展,特别是随着我国科学技术的发展,彩灯艺术更是花样翻新,奇招频出。
而随着人们生活环境的不断改善和美化,在许多节日的气氛里可以看到彩色霓虹灯,这种LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用。
其将电子、建筑、机械、遥控、声学、光导纤维等新技术、新工艺用于彩灯的设计制作,把形、色、光、声、动相结合,思想性、知识性、趣味性、艺术性相统一。
在当今的社会里,彩灯已经成为我们生活的一部分,能给我们带来视觉上的享受还能美化我们的生活。
1 LED彩灯控制器概述新型LED彩灯系统包括两大部分,即LED彩灯控制器(89C51主控模块)和LED彩灯管(管内LED板模块)。
彩灯控制器是主控模块,具有按键、显示等功能,并利用89C51的P口输出控制信号;彩灯管是受控模块,上面焊有三色LED彩灯和信号驱动芯片,模块置于LED的透明管内。
该LED彩灯控制器是一种基于STC89C51单片机的彩灯控制器,实现对LED彩灯的控制。
其以STC89C51单片机作为主控核心,与键盘、显示、驱动等模块组成核心主控制模块。
如果稍微改动控制电路,就可以改变电路的不同工作状态,控制彩灯变幻出不同的闪烁效果。
2 LED彩灯控制技术状况彩灯控制电路是由单元模块电路组合而成的,主要以STC89C51单片机为控制中心,并与按键控制电路、时钟电路、复位电路在直流稳压电路的相互作用下进而控制彩灯亮灭的顺序,从而实现多控制、多闪烁方式的LED彩灯循环。
节日彩灯控制器一、设计目的1、了解节日彩灯控制器的工作原理2、掌握按键输入的消抖处理程序和延时程序的编写3、掌握电路板的实物焊接二、设计内容1、设计4个按键S17、S18、S19、S20,S17—开始,按此键则灯开始流动(由上而下)。
S18—停止,按此键则停止流动,所有灯为暗。
S19—上,按此键则灯由上向下流动。
S20—下,按此键则灯由下向上流动。
2、由按键控制功能的流水灯,其中的LED采取共阳极接法,通过依次向连接LED 的I/O口送出低电平,可实现题目要求的功能。
3、要求做出实物。
三、电路及连线设计图1电路图1、所需元器件1)电阻:10KΩ(1个)、200Ω(8个)、500Ω(2个)2)电容:10μF(1个)、30pF(2个)3)LED灯(8个)、按钮(4个)、晶振(12MHZ)四、使用说明1、使用5V电源供电2、按启动键S17,开始从右到左依次循环点亮3、按第一个转换键S19,灯变为从左到右依次循环点亮4、按第二个转换键S20, 灯变为从右到左依次循环点亮5、按停止按键S18,灯停止循环,全部熄灭五、流程图设计图2程序流程图六、程序设计如下org 00hljmp startorg 30hstart: mov p3,#0ffhjnb p3.3,kaishisjmp startstop: mov p1,#0ffhsjmp startkaishi: mov p1,#0fehlcall delayloop: mov a,p1rl amov p1,alcall delayjnb p3.2,stopjnb p3.1,kaishi ;判断有没有3号键按下jnb p3.0,fansjmp loopfan: mov p1,#07fhlcall delaylop: mov a,p1rr amov p1,alcall delayjnb p3.2,stopjnb p3.1,kaishi ;判断有没有3号键按下sjmp lopdelay: mov r6,#200 ;(4*250+3)*200+2=0.2sloop2: mov r7,#250loop1: nopnopdjnz r7,loop1djnz r6,loop2retend七、设计总结:感谢学校安排这次单片机小学期,让我们有了将理论与实践同步的机会。
基于单片机的节日彩灯控制器Prepared on 24 November 2020湖北文理学院理工学院课程单片机课程设计题目节日彩灯控制器设计专业通信工程姓名学号姓名学号姓名学号一、任务以单片机为核心,设计一个节日彩灯控制器。
二、设计要求以单片机为核心,设计一个节日彩灯控制器,要求有四个控制按键:●K1—开始,按此键则灯开始流动(两翼展开)。
●K2—停止,按此键则停止流动,所有灯为暗。
●K3—上,按此键则灯由上向下流动。
●K4—下,按此键则灯由下向上流动。
第1章绪论彩灯是我国普遍流行的传统的民间的综合性的工艺品。
彩灯艺术也就是灯的综合性的装饰艺术。
新中国成立后,彩灯艺术得到了更大的发展,特别是随着我国科学技术的发展,彩灯艺术更是花样翻新,奇招频出。
而随着人们生活环境的不断改善和美化,在许多节日的气氛里可以看到彩色霓虹灯,这种LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用。
其将电子、建筑、机械、遥控、声学、光导纤维等新技术、新工艺用于彩灯的设计制作,把形、色、光、声、动相结合,思想性、知识性、趣味性、艺术性相统一。
在当今的社会里,彩灯已经成为我们生活的一部分,能给我们带来视觉上的享受还能美化我们的生活。
1 LED彩灯控制器概述新型LED彩灯系统包括两大部分,即LED彩灯控制器(89C51主控模块)和LED彩灯管(管内LED板模块)。
彩灯控制器是主控模块,具有按键、显示等功能,并利用89C51的P口输出控制信号;彩灯管是受控模块,上面焊有三色LED彩灯和信号驱动芯片,模块置于LED的透明管内。
该LED彩灯控制器是一种基于STC89C51单片机的彩灯控制器,实现对LED彩灯的控制。
其以STC89C51单片机作为主控核心,与键盘、显示、驱动等模块组成核心主控制模块。
如果稍微改动控制电路,就可以改变电路的不同工作状态,控制彩灯变幻出不同的闪烁效果。
2 LED彩灯控制技术状况彩灯控制电路是由单元模块电路组合而成的,主要以STC89C51单片机为控制中心,并与按键控制电路、时钟电路、复位电路在直流稳压电路的相互作用下进而控制彩灯亮灭的顺序,从而实现多控制、多闪烁方式的LED彩灯循环。
3 本设计任务运用STC89C51单片机、发光二极管、电阻、电容、按键等元件组成LED 节日彩灯控制电路中的按键控制电路、彩灯显示电路以及单片机最小系统等模块。
并用Proteus等软件仿真,做出其电路仿真图。
第2章总体方案设计与论证通过查阅大量相关技术资料,并结合自己的实际知识,我主要提出了两种技术方案来实现系统功能。
下面我将首先对这两种方案的组成框图和实现原理分别进行说明,并分析比较它们的特点,然后阐述我最终选择方案的原因。
1 方案比较彩灯控制器大致可分为两种方案实现。
一种是利用数字逻辑电路装置控制,另一种是采用单片机控制。
方案一根据设计任务要求介绍的彩灯控制电路的基本组成,可以确定彩灯控制器应由振荡电路、计数/时序分配电路、移位位寄存器和彩灯显示五部分组成。
其框图如图2-1所示。
图2-1 方案一的原理框图方案二本方案主要是通过对基于单片机的多控制、多闪烁方式的LED彩灯循环系统的设计,来达到本设计的要求。
其硬件构成框图如图2-2所示,以单片机为核心控制,由单片机最小系统(时钟电路、复位电路、电源)、按键控制电路、LED发光二极管和5V直流电源组成。
图2-2 方案二的原理框图方案二:此设计方案中单片机的P1口接4路按键控制电路,实现彩灯花型的切换功能;单片机上的P2口接8路LED发光二极管组成彩灯电路,显示彩灯循环情况。
2 方案论证如果采用方案一,利用数字逻辑电路装置控制,其电路不是很复杂,制作相对较容易点,成本也相对较低,但可调性差,亮灯模式少而且样式单调,达不到设计任务要求或实现困难。
而采用方案二,以单片机控制其优点是电路集成度高,工作原理简单,清晰明了,自定义编程,控制的图案花样多,移植性好等。
3 方案选择综上,显然方案二各方面优越于方案一,以及为了体现专业优势,本次设计采用第二种方案。
第3章系统硬件设计为使该LED节日彩灯控制系统具有更加好的方便性和灵活性,我们对系统的硬件做了精心设计。
硬件电路包括直流电源电路、单片机最小系统、LED彩灯显示电路、按键控制电路等四大模块。
STC89C51单片机的工作电压范围:—,所以通常给单片机外接5V直流电源。
由于时间关系,此处用3节的干电池供电。
1 单片机最小系统设计要使单片机工作起来,最基本的电路的构成由单片机、时钟电路、复位电路等组成。
单片机最小系统如图3-2所示。
时钟电路:本系统采用单片机内部方式产生时钟信号,用于外接一个12MHz石英晶体振荡器和2个30pF微调电容,构成稳定的的自激振荡器,其发出的脉冲直接送入内部的时钟电路。
复位电路:确定单片机工作的起始状态,完成单片机的启动过程。
单片机系统的复位方式有上电自动复位和手动按键复位。
本设计采用手动按键复位,该复位方式同样具有上电自动复位功能。
电路如图3-2所示。
图3-2 单片机最小系统2 LED彩灯显示电路设计LED彩灯显示电路实际上是由8个发光二极管和8个电阻构成的电路。
发光二极管与电阻对应串联,然后接在与之相对应的P2口上。
通过软件编程对P2口输出高低电平来实现不同的闪烁花型。
由于发光二极管的导通电压一般为以上,另外,他的工作电流根据型号不同一般为1mA到30mA,电阻选择范围100欧姆~3千欧姆在此我们这里选用330欧姆的电阻。
如图3-3所示。
图3-3 LED彩灯显示电路3 按键控制电路设计按键控制电路是由4个按键开关构成的。
他们分别接在单片机AT89C51的P1接口Key1—Key4接在—,为了一对一的控制LED灯的闪烁方式。
当按下开关Key1时, LED彩灯系统闪烁第一种彩灯花型。
当按下开关Key2时, LED灯系统闪烁第二种闪烁方式,以此类推。
如图3-4所示。
图3-4 键盘控制电路第4章系统的软件设计单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还不能看到多控制、多闪烁方式的LED彩灯系统循环点亮的现象,我们还需要告诉单片机怎么样进行控制,即编写程序控制单片机管脚电平的高低变化,来实现发光二极管的明灭。
软件编程是多控制、多闪烁方式的LED彩灯系统中的一个重要的组成部分,是本设计的重点和难点。
下面,我将阐述多控制、多闪烁方式的LED彩灯系统是如何实现8个LED彩灯的循环点亮,来介绍实现流水彩灯控制的软件编程方法。
1 主程序设计程序启动时跳转到键盘判断模块程序中,此程序里面包含Key1-Key4的按键情况判断,循环检测直到有按键按下的时候,程序转去相对应按键的彩灯显示的花型模块,图4 主程序流程图第5章系统调试与测试结果分析使用的调试工具及调试环境1 调试工具本设计调试工具采用电脑、单片机仿真以及5V直流稳压电源。
2 调试环境地点:寝室室温:30 ℃2 系统调试根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。
由于在系统设计中采用模块设计法,所以方便对各电路模块功能进行逐级测试,最后将各模块组合后进行整体测试。
1硬件调试对各个模块的功能进行调试,主要调试各模块能否实现指定的功能。
通过kill软件烧录下载到硬件中验证功能。
2软件调试软件调试采用单片机仿真器及微机,将编好的程序进行调试,主要是检查语法错误。
3硬件软件联调将调试好的硬件和软件进行联调,主要调试系统的实现功能。
3 测试结果及状态分析此次系统设计结果较好,经Proteus软件仿真系统的调试,可检测出仿真电路正常;对应按键按下,彩灯出现不同花型,实现了多控制、多闪烁的LED彩灯循环;经以上仿真测试证实,本设计能实现设计系统要求的预期功能。
结论本次课程设计以STC89C51单片机作为主控核心,按键控制电路、彩灯显示电路以及单片机最小系统等模块组成的核心主控制电路,利用软件编程烧录程序到单片机来实现对LED节日彩灯的控制。
通过软硬件的仿真调试,对彩灯控制器的运行成果感觉比较满意,它实现了我们要求达到的目标,实现了多控制、多闪烁方式的LED节日彩灯循环,并且用快慢两种节拍实现花型交换。
本系统亮灯模式多,可根据操作提示随意变换想要的闪烁方式。
同时本设计具有电路结构简单、易操作、硬件少、体积小、成本低、低能耗等优点,具有一定的实用和参考价值。
但是在设计中也出现了一些问题:Proteus仿真软件不是很稳定,造成仿真页面奔溃,另外硬件调试程序时出现了延时问题等。
这种都是以后的工作当中需要注意并解决的问题。
参考文献[1] 刘宏.电子工艺实习,华南理工大学出版社,2011.[2] 邓奕.电子线路CAD实用教程,华中科技大学出版社,2013[3] 康华光.电子技术基础.高等教育出版社,2006.[4] 手把手教你学51单片机C语言版,宋雪松,清华大学出版社。
2010[5] C语言程序设计,谭浩强,清华大学出版社,2010附录1程序#include <>#define unchar unsigned char#define unit unsigned int#define led P2sbit button1=P1^4;sbit button2=P1^5;sbit button3=P1^6;sbit button4=P1^7;void delaytime(){unsigned int i = 7000,j=7000;while (i--);while (j--);}void main(){unchar i,j;unchar led1,led2;led=0x00;while(1){if(button1==0){while(button1==0);j=1;}if(button2==0){while(button2==0);j=2;}if(button3==0){while(button3==0);j=3;}if(button4==0){while(button4==0);j=4;}switch(j){case 0x01:led=0x01;for(i=0;i<8;i++){delaytime();led=led<<1;}break;case 0x02:led=0x80;for(i=0;i<8;i++){delaytime();led=led>>1;}break;case 0x03: delaytime();led=0xff;break;case 0x04:led=0x19;led1=led&0x11;led2=led&0x12;for(i=0;i<4;i++){delaytime();led1=led1>>1;led2=led2<<1;led=led1|led2;}break;}}}附录2硬件电路板附录3功能实现图附录4系统仿真电路图。