遥控调光调色LED灯设计

上传人:仙*** 文档编号:137769651 上传时间:2022-08-19 格式:DOC 页数:33 大小:610.50KB
收藏 版权申诉 举报 下载
遥控调光调色LED灯设计_第1页
第1页 / 共33页
遥控调光调色LED灯设计_第2页
第2页 / 共33页
遥控调光调色LED灯设计_第3页
第3页 / 共33页
资源描述:

《遥控调光调色LED灯设计》由会员分享,可在线阅读,更多相关《遥控调光调色LED灯设计(33页珍藏版)》请在装配图网上搜索。

1、哈尔滨剑桥学院毕 业 设 计 论文题目: 遥控调光调色LED灯设计 学 生: 杨光 指导教师: 崔莉讲师 专 业: 电气工程及其自动化 班 级: 12级电气2班 2016年5月遥控调光调色LED灯设计摘 要LED灯控制系统我们的生活中随处可见,在傍晚繁华的街道上,更是绚烂多彩,十分好看。这种LED灯给我们的生活增添了美景,给我们以舒服的视觉环境,并且还能起到照明、指示等作用。本文在对单片机技术研究的基础上,采用单片机作为LED控制系统的核心,通过外围电路的搭建,设计了一种基于智能化遥控方法实现的调光调色功能的LED灯控制系统。本系统优于传统的LED照明控制系统,能够实现通过智能遥控方法调节光的

2、强度,使用方便,功耗低,性价比高,便于推广使用。本系统利用点亮LED灯的数目来改变光照强度,LED灯点亮的个数越多,光线强度越大。本系统利用光敏传感器对光照的强度进行检测,然后将检测的结果送入到A/D转换模块中,并将转换结果送入单片机进行分析和处理,并利用结果调整光的强度。在环境中光照强度较大时,本系统中的LED灯点亮个数自动较少,在不影响视觉效果的情况下,有效节约能耗;相反,在环境中的光照强度较弱时,本系统中的LED灯点亮个数自动增加,提高光照强度,获取更好的视觉效果。本系统有效避免了手动开启、关闭、调整LED灯点亮个数等繁杂性操作,提高了LED系统的智能化程度,使系统能够自行根据环境情况,

3、获取最佳视觉效果。关键词:智能调光;光敏传感器;LED灯;光照强度目 录摘要I1 绪论11.1研究背景和意义11.2主要研究内容22 系统整体设计42.1系统功能设计42.2所使用芯片的简介52.2.1单片机芯片52.2.2模数转换芯片ADC080872.2.3地址锁存芯片74HC37382.2.4并行口扩展芯片8255102.2.5七段数码器123 系统硬件电路设计143.1系统硬件电路模块结构143.2单片机最小系统模块143.3 A/D转换模块153.4地址锁存模块163.5数码管显示模块173.6 8255与显示模块174 软件设计及仿真184.1软件的总体设计184.2A/D转换程序

4、设计184.3七段数码管的显示程序设计194.4 8255及LED显示程序设计214.5中断定时器程序设计214.6延时函数程序设计235 系统调试245.1系统硬件调试245.2系统软件调试24结论26致谢27参考文献28附录29II哈尔滨剑桥学院毕业设计遥控调光调色LED灯设计1 绪论 1.1研究背景和意义经济的快速发展,LED照明系统的在我们的生活中应用的更加普遍。LED灯控制系统我们的生活中随处可见,在傍晚繁华的街道上,更是绚烂多彩,十分好看。这种LED灯给我们的生活增添了美景,给我们以舒服的视觉环境,并且还能起到照明、指示等作用。LED灯的优点有很多,现在很多照明系统中采用的都是这种

5、LED灯。这种灯具有体积小、节能、使用时间长、亮度高、散热少、环保性好、耐用、外边结构结实、不易损坏等优点。由于LED灯现在使用的领域越来越多,所以,有必要对LED灯控制系统智能化进行研究,提高LED灯的智能遥控能力,提高系统的自动化和智能化程度。智能调光系统在未来的发展前景是非常好的。现在物联网技术的飞速发展以及传感器技术的跨越式前进,使人们生活中的自动化和智能化程度越来越高。在加上现在的物联网技术的发展,使得原先不可能的事情,都变成了显示。利用各种新型技术的有效集合,都能够促进类似LED智能灯控制系统的发展。随着社会的发展,照明系统已经成为各种场合具体应用的不可或缺的一部分,它甚至在舞台灯

6、光、城市路灯、家居环保中起着举足轻重的作用,而其核心模块就是单片机智能控制系统。但对于一些大型的应用场合,如:露天停车场、活禽养殖厂、工厂控制车间等,都存在光照应用不合理,电力能源过度消耗等严重问题,甚至城市光污染越来越成为一个新的议题。智能调光系统不仅可以解决上述问题,还可以使灯在有需要的时候自动开启或者关闭,并且能够做到自适应调整,以达到对外界的最佳照明效果。成功地避免了灯在不需要的时候开启或者需要时关闭,大大的避免了不必要的电力能源浪费,对于地球环保和能源的节约,可以起到巨大的推动作用。据可靠调查,一个城市每年在电力消耗的经济支出上对于普通人来说简直是一个天文数字,且一个人一生中的不必要

7、的用电都可能供城市公用路灯系统支持几天。智能光照系统如果可以普及化,不仅可以为财政部门省下了一大笔的开支,使其可以将节省下的资金投资到更有意义的地方去,使得城市可以更好、更快的发展。同时对于世界来说,更是可以取得巨大的节约能源效果,对于绿色地球的实现做出巨大的贡献。展望一下未来,智能调光系统的应用前景是十分光明的。伴随着物联网技术的广泛应用和传感器技术领域的突破,人们可以更加方便控制各种灯光了。时下正在兴起的无线技术,也为智能调光增添了一缕新的色彩。智能调光系统可以广泛应用于智能家居、智慧旅店、智能建筑、智能农业等系统中,实时探测环境中的光照强度,即时生成数据并发送到监控平台或系统中心。如:(

8、1)智慧家居根据实际需要,让你的家明亮舒适。(2)智慧农业为农作物提供适宜的光照,促进作物的生长。(3)智慧厂房为工厂生产提供合适的光照环境,节约能源消耗。(4)智慧楼宇结合阳光和灯光,让楼宇保持明亮舒适。(5)智慧养殖为家禽家畜提供适宜的光照,促进其生长繁殖。本文在对单片机技术研究的基础上,采用单片机作为LED控制系统的核心,通过外围电路的搭建,设计了一种基于智能化遥控方法实现的调光调色功能的LED灯控制系统。本系统优于传统的LED照明控制系统,能够实现通过智能遥控方法调节光的强度,使用方便,功耗低,性价比高,便于推广使用。本系统利用点亮LED灯的数目来改变光照强度,LED灯点亮的个数越多,

9、光线强度越大。本系统利用光敏传感器对光照的强度进行检测,然后将检测的结果送入到A/D转换模块中,并将转换结果送入单片机进行分析和处理,并利用结果调整光的强度。在环境中光照强度较大时,本系统中的LED灯点亮个数自动较少,在不影响视觉效果的情况下,有效节约能耗;相反,在环境中的光照强度较弱时,本系统中的LED灯点亮个数自动增加,提高光照强度,获取更好的视觉效果。本系统有效避免了手动开启、关闭、调整LED灯点亮个数等繁杂性操作,提高了LED系统的智能化程度,使系统能够自行根据环境情况,获取最佳视觉效果。1.2主要研究内容LED灯智能调光系统具有很高的自动化程度,本系统由STC89C52RC和ADC0

10、808、LED灯、七段数码显示管等芯片构成。该系统能够实现光信号强度的检测、控制、以及显示功能。本文研究的是一种通过光线强度情况,对LED灯的亮和灭个数进行自动遥控的一种调光系统。本系统基于光敏电阻传感器,通过环境的光线强弱进行检测,并将检测得到的电压值送入ADC采集模块中,最终送入单片机内进行处理。单片机的分析结果,可以直接遥控LED灯控制系统的开关,使得相应数量的开关闭合或者打开,从而让LED灯系统的光照强度在可控范围内,达到一定的程度。本系统实现了对环境中光线强度的自动调节功能,节约了能耗,免去了手动打开或者关闭LED灯开关的操作,实现了感应遥控LED灯系统的目的。因此,本系统对照明领域

11、具有一定的研究意义。2系统整体设计2.1系统功能设计本文利用以光敏电阻能够根据外界环境光线的强度变化而改变自身阻值的特性,设计了一种LED灯智能遥控调节系统。外界环境的光线越强、光敏电阻的阻值越小;相反,外界环境的光线越弱、光敏电阻的阻值越大。当光敏电阻的阻值发生变化时,光敏电阻的两端电压将会发生变化,通过ADC模块能够对这个电压信号进行采集,并经单片机进行处理,最终通过LED数码管进行显示。本系统主要由五大模块组合而成,分别是:单片机最小系统模块,光线接收模块,AD转换模块,地址锁存模块(74HC373),8255和LED显示模块。系统整体结构框图如图2-1所示。图2-1 系统整体结构框图L

12、ED的内在特征决定了它具有很多优点,诸如:(1)体积小。(2)耗电量低:LED耗电相当低,直流驱动,功耗(单管0.030.06瓦),电光功率转换接近30%。一般来说LED的工作电压是23.6V,工作电流是0.020.03A;这就是说,它消耗的电能不超过0.1W,相同照明效果比传统光源节能近80%。(3)使用寿命长:有人称LED光源为长寿灯。它为固体冷光源,环氧树脂封装,灯体内也没有松动的部分,不存在灯丝发光易烧、热沉积、光衰等缺点,在恰当的电流和电压下,使用寿命可达6万到10万小时,比传统光源寿命长10倍以上。(4)高亮度、低热量:LED使用冷发光技术,发热量比普通照明灯具低很多。(5)环保:

13、LED是由无毒的材料做成,不像荧光灯含水银会造成污染,同时LED也可以回收再利用。光谱中没有紫外线和红外线,既没有热量,也没有辐射,眩光小,冷光源,可以安全触摸,属于典型的绿色照明光源。(6)坚固耐用:LED被完全封装在环氧树脂里面,比灯泡和荧光灯管都坚固。灯体内也没有松动的部分,使得LED不易损坏。上述一系列的优点,决定了LED灯正在成为主流应用最佳选择。2.2所使用芯片的简介2.2.1单片机芯片单片微型计算机简称单片机,特别适合用于控制领域,故又称为微控制器,它是将计算机的基本部件微型化,使之集成在一块芯片上的微机。单片微型计算机是微型计算机的一个重要分支,也是一个非常活跃和颇具有生命力的

14、机种。片内含有CPU、ROM、RAM、并行I/O、串行I/O、定时器/计数器、中断控制、系统时钟及系统总线等。单片机有着体积小、功耗低、功能强、性能价格比高、易于推广应用等显著优点,在自动化装置、智能化仪表、过程控制和家用电器等许多领域得到日益广泛的应用。因此要完成此系统的设计,考虑到实际的应用和性价比,在数据处理和控制方面单片机是首选。STC89C52RC是一款低功耗和高性能的CMOS 8位微控制器,拥有8K的系统可编程Flash存储器1。在这个单独的芯片内,具有8位CPU。它的系统可编程Flash,能够让STC89C52RC成为嵌入式控制应用系统中,一种具有高度灵活性的实际方案解决芯片2。

15、STC89C52RC引脚图如图2-2所示。图2-2 STC89C52RC引脚图STC89C52RC的内部具有很多构造,包括:8k字节Flash;512字节RAM;32位I/O口线;看门狗定时器。它的内部还设置有4KB EEPROM和MAX810复位电路,含有3个16位定时器/计数器,1个6向量的2级中断结构3。它的工作方式为全双工串行口形式。STC89X52芯片能够将自身频率降至0Hz的静态逻辑下实施工作。它在空闲模式的状态下,CPU能够停止工作,能够让RAM、定时器/计数器、串口、中断不间断性的进行工作4。在掉电保护状态的情况下,RAM内容能够进行存储操作。它的振荡器可以实现被冻结,而且单片

16、机在冻结以后,所有的工作也就停止运行了,直至接收到下一个中断或者硬件复位电路启动为止。它的最高工作频率能够实现高达35Mhz,并且可以从6T/12T中进行选择5。P1.0和P1.1引脚复用功能如表2-1所示。表2-1 P1.0和P1.1引脚复用功能引脚号功能特性P1.0T2(定时器/计数器2外部计数输入),时钟输出P1.1T2EX(定时器/计数器2捕获/重装触发和方向控制)P3口既能够作为一般的I/O口使用,还具有很多特殊功能,如表2-2所示。表2-2 P3口引脚复用功能引脚号复用功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T

17、0(定时器0的外部输入)P3.5T1(定时器1的外部输入)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通)2.2.2模数转换芯片ADC0808ADC0808属于带有8位的A/D转换器、8路多路开关,而且能够和微处理机具有兼容性的控制逻辑的CMOS组件。该芯片为逐次逼近式A/D转换器,能够与单片机直接进行接口6。ADC0808具有1个8路模拟开关、1个地址锁存和译码器、1个A/D转换器和1个三态输出锁存器。多路开关能够对8个模拟通道进行选通,允许8路模拟量分时进行输入,同时应用A/D转换器实施信息的转换7。三态输出锁器可以应用在锁存A/D转换完的数字量情况,在OE端是高电平的情况

18、下,允许利用三态输出锁存器取走转换完的数据信息8。ADC0808对输入模拟量要求:信号单极性,电压范围是05V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。ADC0808的引脚图如图2-3所示。图2-3 ADC0808管脚图15和2628(IN0IN7):用来作为8路模拟量输入端口。8、14、15和1721:用来作为8位数字量输出端口。22(ALE):用来作为地址锁存允许信号,输入,在高电平的情况有效。6(START):在START位于上跳沿的情况下,全部内部寄存器将会清零;下跳沿的情况下,实行A/D转换操作;在此转换过程中

19、,START会维持在低电平的情况。7(EOC):作为A/D转换结束信号,输出,在A/D转换结束操作的情况下,此端口将会输出一个高电平。9(OE):作为数据输出允许信号,输入,在高电平的情况有效。在A/D转换结束的情况下,该端口将输入一个高电平,然后才可以打开输出三态门,输出数字量。10(CLK):用来作为时钟脉冲输入端口。12(VREF(+)和16(VREF(-):用来作为参考电压输入端口。11(VCC):用来作为主电源输入端口。13(GND):用来作为接地端口。2325(ADDA、ADDB、ADDC):3位地址输入线,用来选通8路模拟输入中的某一路。2.2.3地址锁存芯片74HC37374H

20、C373芯片内部具有八路D型透明锁存器。该芯片经常使用在面向总线的三态输出领域中,其全部的锁存器都会共同使用1个锁存使能端口LE和1个输出使能端口OE()端9。74HC373芯片引脚图如图2-4所示。图2-4 74HC373的引脚图OE():output_enable,用来作为输出使能端口;LE:latch_enable,用来作为数据锁存使能。其中,latch为锁存;Dn:是芯片的第n路输入数据端口;Qn:是芯片的第n路输出数据端口;74HC373的真值表如表2-3所示。表2-3 74HC373的真值表DnLEOE()QnHHLHLHLLXLLQnXXHZ(1)真值表,表示芯片在输入和其它的情

21、况下的输出情况。真值表的意思如下:第一、二行:当OE()0、LE1时,输出端数据等于输入端数据;第三行:当OE0、LE0时,输出端保持不变;第四行:当OE()1时,无论Dn、LE为何值,输出端为高阻态。(2)高阻态,就是输出既不是高电平,也不是低电平,而是高阻抗的状态;在这种状态下,可以多个芯片并联输出;但是,这些芯片中只能有一个处于非高阻态状态,否则会将芯片烧毁。(3)数据锁存,即当输入的数据消失时,在芯片的输出端,数据仍然保持。(4)数据缓冲,加强驱动能力。74LS244/74LS245/74LS373/74LS573都具备数据缓冲的能力。在实际应用的时候是这样做的:OE0;先将数据从单片

22、机的口线上输出到Dn;再将LE从0-1-0;这时,你所需要输出的数据就锁存在Qn上了,输入的数据在变化也影响不到输出的数据了;实际上,单片机现在可以忙着干别的事情,如串行通信、扫描键盘。2.2.4并行口扩展芯片82558255为Intel公司研究并推广的一种具有可编程并行I/O接口功能的芯片。该片拥有3个8位并行I/O口,具有3个通道以及3种不同形式的工作方式10。它的各个端口的功能能够通过软件进行设置,能够便于使用,便于推广,具有很强的应用性11。8255能够当成是单片机和外围很多器件连接时的中间过渡电路12。8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址

23、线、控制线接口。同时必须具有与外设连接的接口A、B、C口。由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。8255芯片的引脚图如图2-5所示。图2-5 8255芯片的引脚图8255各引脚的功能13如下:RESET:作为复位输入线端口使用。C()S():作为芯片选择信号线端口使用。在此输入引脚是低电平的情况下,也就是C()S()=0的情况,代表芯片已经被选中,许可8255和CPU相互间实现通讯操作;相对应的,在C()S()=1的情况下,8255将不能和CPU进行数据的传输操作。R()D():作为读信号线端口使用。在此输入

24、引脚是低跳变沿的情况下,也就是RD()会生成一种低脉冲,而且当C()S()=0的情况下,能够让8255利用数据总线向CPU发送数据,或者是状态数据信息,也就是CPU由8255读取得到的信息或者数据。WR():作为写入信号端口使用。在此输入引脚是低跳变沿的情况下,也就是WR()生成某个低脉冲信号时,而且当C()S()=0的情况下,则许CPU把数据或者控制字写入到8255的内部。D0D7:作为三态双向数据总线端口使用。8255和CPU能够进行数据的传送,并且作为其传输通道使用。在CPU执行输入以及输出指令的情况下,可以利用它完成8位数据的读或者写操作。同时,控制字和状态信息也就可以利用数据总线进行

25、传送操作。8255具有3个相互独立的输入/输出通道端口,用+5V单电源供电,能在以下三种方式下工作。方式0基本输入输出方式;方式1选通输入/出方式;方式2双向选通输入/输出方式;PA0PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。工作于三种方式中的任何一种。PB0PB7:端口B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。不能工作于方式二。PC0PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口,每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使

26、用,可作为控制信号输出或状态信号输入端口。不能工作于方式一或二。A1A0:地址选择线,用来选择8255的PA口、PB口、PC口和控制寄存器。当A1A0=00时,PA口被选择;当A1A0=01时,PB口被选择;当A1A0=10时,PC口被选择;当A1A0=11时,控制寄存器被选择。2.2.5七段数码器显示器的类型有很多种,系统的显示器通常用来作为数据信息的输出设备。在基于单片机技术设计的系统内,使用最为广泛的共有两种显示器14。第一种是发光二极管显示器,也就是LED显示器;第二种是液晶显示器,也就是LCD显示器。LED和LCD显示器各自具有不同的特点,相对来说,两种显示器共有的优点是结构简易,性

27、价比高,接口形式方便使用,并且都具有广泛的应用范围15。发光二极管,也就是LED。LED显示器还可以叫做数码管。LED显示器的内部构造中,通常是具有8个发光二极管。其中,7个长条形的发光管进行整齐的排列,在外部看来呈现一种“日”字形。还有一种发光管会在显示器右下方作为小数显示时使用。这种数码管能够实现各种数字和部分英文字母的显示。LED显示器主要具有两种不同的构建形式:一种是基于8个发光二极管的阳极,将阳极全部连接以后,就可以称作是共阳极LED显示器;还有一种是基于8个发光二极管的阴极,将阴极全部连接在一起以后,就可以称作是共阴极LED显示器。通过发光二极管能够构成显示屏,并且显示屏中的每个点

28、均属于一个或多个发光二极管。利用控制电路能够实现对二极管的有效控制。这种方式能够控制二极管的亮和灭,并且能够通过这种方法控制点的发光与否。然后,通过控制让整个大屏幕系统对图案进行显示。液晶显示器的LCD中,使用最为广泛的一种是TFT类型。这种类型的LCD显示器是通过光源、液晶光栅以及芯片控制电路构成的。LCD的光源一般情况下会显示常亮的白色强光。在光线在液晶液晶屏中通过的情况下,可以将电压进行转变,转换到液晶颗粒的滤光方向上,使得每个点的颜色发生变化,并且以一定的强度实施图案的显示16。液晶显示器的型号有很多种,依据显示方式的不同能够分成不同的显示类型。其中,包括:段式显示,行点阵式显示以及全

29、点阵式显示,共3种类型。液晶显示器中的段式显示类型和数码管显示的原理很相似。行点阵式型液晶显示器,通常情况下是用来显示英文字符。全点阵式液晶显示器,一般情况下用来对信息进行显示,显示的范围比较多样,例如:汉字、图形以及图表等信息。考虑到本系统的设计要求和实际使用情况,本系统选用八位七段数码显示器,其外形结构如图2-6所示。图2-6 八位七段数码显示器8个笔划段h、g、f、e、d、c、b、a,分别对应1个字节,也就是8位的D7、D6、D5、D4、D3、D2、D1、D0。所以,通过8位二进制码就能够对想要显示的字符和字形代码进行表示。LED显示器的点亮形式主要有以下两种,第一种是静态显示,还有一种

30、是动态显示。静态显示,意思是说每个显示器必须占有独立的,而且能够实现锁存功能的I/O界面,并将其用在笔划段字形代码中。这种情况下,单片机仅需要将要显示的字形代码发送到界面电路,然后就不必需要更多的关注了。在显示新数据信息的情况下,系统会再次发送新型的字形码。所以,利用这种方法,在单片机内部,将大幅度的减少CPU开销。静态显示电路的优点为:在同一时间内能够显示不一样的字符,然而,它的缺点就是占用端口资源较多。动态显示,意思是说把需要显示的多位LED显示器,通过利用一个8位的段选端口,并通过动态扫描形式,一位一位地轮流点亮各位显示器。数码管动态显示接口属于单片机应用实践中最为普遍的一种现实手段。在

31、单片机输出字形码的情况下,如果能够将全部数码管接收到完全一样的字形码,哪个数码管能够显示出字形,完全由单片机对位选通COM端电路的控制实现。因此,仅需要把需要显示的数码管的选通控制启动,然后借助这点实现字形的展示。没有被选通的数码管一般情况下是不会被点亮的。利用分时轮换形式,可以实现对数码管的COM端控制,并且通过全部数码管实现轮流受控的显示方式。当数码管中的字符进行轮流显示的情况下,每位数码管的点亮时间仅仅需要12ms,而且人的视觉暂留现象和发光二极管的余辉效应能够让观察者产生错觉。虽然,在实际使用中,所有位的数码管并不是在同一时间被点亮,而是仅仅通过扫描形式。由于在扫描的过程比较快,因此使

32、得这种显示方式具有一定的稳定性。3 系统硬件电路设计3.1 系统硬件电路模块结构本系统最终选定的主要硬件芯片为:单片机STC89C52RC、ADC0808元件、8255芯片、74HC373元件、发光二极管等。本系统的硬件电路模块结构图如图3-1所示。图3-1 系统硬件电路模块结构图3.2单片机最小系统模块时钟电路是单片机芯片工作的最基本元素,单片机的时钟信号能够通过两种方法产生。第一种是内部产生方式,通过芯片中含有的振荡电路实现;另一种产生方法是外部产生。内部方法的电路需要在外围电路中接入晶振和电容,共同组建成并联谐振电路。外部方法是通过外部振荡器信号源直接连接XTAL1或者XTAL2。一般情

33、况下,XTAL1需要接地,XTAL2需要接外部时钟。复位电路属于单片机的最小系统的组成电路,主要用于完成初始化操作。复位电路的目的为,让CPU以及其寄存器间处在一个确定的初始化状态。系统在正常上电的情况下能够实现复位。而且,在系统程序运行遇到问题时,或者操作出现错误时,都会让系统处于死锁状态。这就需要参照复位开关恢复系统的正常工作状态。操作型式有上电自动复位操作以及手动复位操作。其中,上电自动复位操作为把单片机连接电源,并对复位电路的电容实现充电;按键电平复位是基于RST端,并利用电阻和VCC电源进行连接实现的。本文的单片机最小系统电路图如图3-2所示。图3-2 单片机最小系统模块3.3 A/

34、D转换模块首先,要做一个分压电路。将滑动变阻器两个固定端,一端接上5V的直流电源,另外一端接地。中间的可以滑动的位置接上ADC0808的IN7,IN0IN6接地,这样表示只有通道7可以传入数据,其余通道都不能采集数据。此外,还需要将ADC0808的地址选通端ADD A,ADD B,ADD C全部接上高电平,表示我们选择了IN7进行输入。其次,由于ADC0808内部没有时钟电路,我们需要给它提供时钟信号,这个靠单片机使用定时中断来产生,将其CLK端接P3.1。其它的,如ALE地址锁存信号接单片机的P3.2,START接上单片机的P3.0,EOC接上单片机的P3.4,输出允许端OE接单片机的P3.

35、5。最后,ADC0808输出的结果是0255之间的8位二进制数,OUT1是最高位,OUT8是最低位,需要将它们对应接上单片机的P1口的P1.7P1.0。ADC0808的电路连接图如图3-3所示。图3-3 ADC0808电路连接图3.4地址锁存模块74HC373是地址锁存器,使用它可以将地址和数据分开传递,使用时用单片机的引脚ALE对它的LE来进行控制了。其数据端D0D7接上单片机的P0口的8位引脚,OE()接地,表示它工作在直通方式。输出端低两位Q1Q0用作8255的地址选通端。最高位Q7接8255的片选端CS()。74HC373的引脚连接图如图3-4所示。图3-4 74HC373的引脚连接图

36、3.5数码管显示模块8位七段数码显示器有8位位选端和8位数据输入端。本次设计的连法:8位位选端由P2口来进行控制,8位数据输入端有P0口来进行控制,显示的方式是动态扫描显示法。即:单片机轮流选中8位中的每一位,来进行显示。只要延时程序设计的合理,七段数码显示器就可以稳定的显示。8位七段数码管的显示结果的说明:最前两位显示的是LED灯点亮的数目,中间一位显示的是任意一个按钮被按下去的次数,最后三位表示ADC的采集的光敏电阻两端的电压值。3.6 8255与显示模块8255芯片的连接:D0D7与单片机的P0口相连,用来接收数据。读写端也与单片机读写端相连,方便单片机对其进行读写操作。地址选通线A0、

37、A1接入7HC373的Q0、Q1;RESET接地;片选端C()S()接74HC373的Q7;16枚LED灯的接法为:8255的PA口接上8枚,PB口也接上了8枚,LED使用共阳极的接法,即它们的阳极全部通过排阻接上电源。PC口悬空不用。8255的引脚连接图如图3-5所示。图3-5 8255的引脚连接图27哈尔滨剑桥学院毕业设计4 软件设计及仿真4.1软件的总体设计本系统的主程序流程图如图4-1所示。图4-1 系统主程序流程图4.2A/D转换程序设计由于ADC0808内部没有时钟产生电路,所以若想让ADC0808正常工作,就必须对其提供合适的时钟脉冲。我们使用中断定时器来产生,原因有两个。一是比

38、较精确,且时钟脉冲的产生比较稳定。二是充分地利用了单片机闲置的资源内部中断定时器。在进行C语言编程的时候,要注意控制好延时时间,使AD转换正常进行。并且在执行其他子程序之前都要判断转换ADC是否已经完成。ADC0808仿真图如图4-2所示。Proteus中的电压表模型显示数值为1.09V,在05V范围内。七段数码显示器上显示的数据也和这一数据相吻合,也就是说本次采集的数据是正确的,但不同的阻值,有可能存在着一些误差。频率计显示的是ADC0808的采集频率的大小。图4-2 ADC0808仿真图4.3七段数码管的显示程序设计8位七段数码显示管的数据端是单片机的P0口控制,位选是由P2口来控制。本系

39、统的数码管显示采用动态显示方式。也即是利用轮流扫描的方式来选中八位中的每一位,通过人眼的视觉余晖效应,实现稳定的显示效果。如果延时程序合理,则能够稳定显示数值。8位共阴极七段数码管的显示程序display(),单片机需要从P1口读进来的8位二进制数0255转换成05V内的有效电压值,然后进行输出显示。8位七段显示数码管的前两位显示的是LED灯点亮的个数,中间的那位1表示按钮已经按下一次了;最后3位显示的是滑动变阻器的等效电阻两端的电压值。其数值正好与Proteus中的电压表所读出的值相等。数码管的显示子程序:void display(void)/共阴段码 char code table = 0

40、x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, /07 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71,0x40; /8F、-P0=0;P2=0x7f;P0=tablenum2/10;delay(1);P0=0;P2=0xbf;P0=tablenum2%10;delay(1);P0=0;P2=0xdf;P0=table16;delay(1);P0=0;P2=0xef;P0=tablecnt1+cnt2;delay(1); P0=0;P2=0xf7;P0=table16; delay(1); P0=0;P

41、2=0xfb;P0=tablenum1/100|0x80;/第三位 delay(1); P0=0;P2=0xfd;P0=tablenum1%100/10;/十位delay(1); P0=0;P2=0xfe;P0=tablenum1%10; /个位delay(1); P2=0xff;/关闭显示器数码管显示的仿真结果如图4-3所示。图4-3 数码管显示的仿真图4.4 8255及LED显示程序设计至于对LED显示模块的控制,我们是采用对8255的串口写控制字来操作的。LED显示自适应调整部分一共分为5个层次,也就需要5个相应的函数,分别是led0()、led2()、led4()、led6()、led

42、8(),具体执行哪一个,要看流程控制语句switch-case的具体参数的值了。对LED显示模块的控制,本系统选用对8255的串口写控制字来操作的。显示处理程序如下:switch(v) case 0:PA8255=0xff;delay(2);break; case 1:PA8255=0xfc;delay(2);break; case 2:PA8255=0xf0;delay(2);break; case 3:PA8255=0xc0;delay(2);break; case 4:PA8255=0x00;delay(2);break; default:break; LED显示模块的仿真图如图4-4所

43、示。图4-4 LED显示模块的仿真4.5中断定时器程序设计本文需要对ADC0808提供稳定的工作时钟脉冲,所以,本文使用定时中断来实现。本文添加了手动控制LED灯功能,由于人工手动控制点亮LED的个数需要使用外部中断来监测按钮是否按下,以及已经按钮按了几下的处理。表4-1 定时/计数器模式寄存器TMOD定时/计数器1D7D6D5D4GATEC/T()M1M0定时/计数器0D3D2D1D0GATEC/T()M1M0GATE:定时操作开关控制位,当GATE=1时,INT0()或INT1()引脚为高电平,同时TCON中的TR0或TR1控制位为1时,定时/计数器0或1才开始工作。若GATE=0,则只要

44、将TR0或TR1控制位为1,定时/计数器0或1就开始工作。C/T():定时器或计数器的功能选择位。C/T()=1时为计数器,通过外部引脚T0或T1输入技术脉冲。C/T()=0时为定时器,由内部系统的始终提供及时工作脉冲。M1、M0:分别是模式选择位的高位和低位,通过他们对定时器的工作模式进行设置。当M1M0=10时,定时/计数器工作在方式2,8位自动加载定时/计数器。本次设计需要对ADC0808提供稳定的工作时钟脉冲,我采用定时中断来产生。人工手动控制点亮LED的个数需要使用外部中断来监测按钮是否按下,以及已经按钮按了几下的处理。外部中断0的程序摘录如下:void waibu() interr

45、upt 2cnt+;if(cnt=5) cnt=0;switch(cnt)case 0:PB8255=0Xff;delay(2);break;case 1:PB8255=0Xfc;delay(2);break;case 2:PB8255=0Xf0;delay(2);break;case 3:PB8255=0Xc0;delay(2);break;case 4:PB8255=0X00;delay(2);break;4.6延时函数程序设计本文利用延时函数实现显示的延迟,通过调用函数,让ADC0808的采集过程和转换过程在一定的时间内完成,让七段数码显示管稳定的显示数据。延时函数程序如下: void

46、delay(uint z)/延时z ms的时间uinti,k;for(k=0;kz;k+)for(i=0;i120;i+);哈尔滨剑桥学院毕业设计5 系统调试5.1系统硬件调试绘制完成硬件原理图以后,需要按照硬件原理图进行电路板的焊接。在焊接操作全部完成以后,首先需要进行目测,看各个焊点是否存在虚焊或者漏焊现象。通过万用表检测各个芯片间的连接电路,以及电源与地之间是否正确连接。因为本系统在设计时,需要用排线把主板和副版相连接,所以需要检查引脚连接是否有问题。系统硬件调试时,需要先针对系统中选择的器件质量进行检查,如果没有问题,则可以进行下一项调试操作;然后再根据系统硬件电路原理图检查电路是否有

47、虚焊和漏焊的现象出现;最后,利用专业的工具,例如:万用表和示波器等调试工具和设备,或者PROTEUS等软件,针对硬件电路实现电气性能的测试,观察其是否能正常工作。上述操作都完成以后,如果没有发现问题,就可以进行软件部分的调试了。检查的方法可以使,通过把主板芯片引脚和副版芯片引脚直接通过万用表进行检测,观察是否能够接通,再上电进行检测,同时还要注意是否有芯片发热的现象出现。如果发生了这种现象,应该立刻切断电源开关,开始查找是不是硬件电路连线存在问题。5.2系统软件调试在进行软件调试时,通常情况下需要使用的是模块化调试技术,每个模块都要进行调试。通过把全部模块组合到一起实现整个系统模块的调试。在硬

48、件调试完成后,才开始进行软件调试。首先利用软件的各个子程序模块进行调试,在单独的模块调试完成以后,如果没有出现问题,就把相互有关联的模块进行组合,实现联调;然后,再通过这种方法解决程序模块连接时,有可能发生的逻辑错误;最后,针对整个系统的所有程序模块的整体组合进行调试,并与系统进行联机,实现共同调试。软件的调试一般情况都会出现语法错误和逻辑错误两种。语法错误能够进行直接修改操作,而逻辑错误要进行单步调试,然后观察程序能否按逻辑顺序执行,再写入芯片中。通过观察程序的运行结果,进行重复性调试操作。考虑到Proteus软件的仿真模型LDR(光敏电阻)的用法较为繁琐,调整起来不怎么灵活,光敏电阻的阻值

49、变化要么变化较为缓慢,要么变化剧烈,无法捕捉到有意义的阻值点,无法使实验的结果一目了然的体现出来。我们选择用滑动变阻器模仿它的阻值变化。另外,我们选择采集滑动变阻器的有效电阻两端的电压UR,因为如果采集电流的话,采集电路就比较容易干扰单片机系统。LED显示模块总共有16枚LED参与点亮,其中智能自动调节的有8枚,人工手动调节的也有8枚。初步效果如下:0UR 1,说明外界光线最强,所有灯都灭掉;1UR 2,开2个灯;2UR 3,打开4个灯;3UR 4,打开6个灯;4UR 5,说明外界光线最弱,此时所有的8个灯都打开。按钮1的使用效果:不按时没有灯点亮,接着就是每按下一次,就依次递增点亮1盏灯。总

50、共有8个层次的变化。按钮2的使用方法,只是每按下去一次,就依次递增点亮2盏灯,总共有4个层次的变化。软件仿真部分由两部分组成,结构原理图用Proteus来创建,单片机C程序由Keil uVision4来编写。具体步骤:首先,在Keil中创建一个工程,编写C文件后,并添加到工程中去,编译正常后,会生成16进制文件。其次,在Proteus中完成原理图的连接后,再将由Keil生成的16进制文件导入到单片机中去,这样就可以在Proteus中进行仿真了,注意单片机的晶振频率需调成12MHZ的。最后,在Proteus中对元器件进行必要的调整,就可以观察显示结果了。结论本文在对单片机技术研究的基础上,采用单

51、片机作为LED控制系统的核心,通过外围电路的搭建,设计了一种基于智能化遥控方法实现的调光调色功能的LED灯控制系统。本系统利用点亮LED灯的数目来改变光照强度,LED灯点亮的个数越多,光线强度越大。本文利用以光敏电阻能够根据外界环境光线的强度变化而改变自身阻值的特性,设计了一种LED灯智能遥控调节系统。外界环境的光线越强、光敏电阻的阻值越小;相反,外界环境的光线越弱、光敏电阻的阻值越大。当光敏电阻的阻值发生变化时,光敏电阻的两端电压将会发生变化,通过ADC模块能够对这个电压信号进行采集,并经单片机进行处理,最终通过LED数码管进行显示。本系统有效避免了手动开启、关闭、调整LED灯点亮个数等繁杂

52、性操作,提高了LED系统的智能化程度,使系统能够自行根据环境情况,获取最佳视觉效果。本系统主要由五大模块组合而成,分别是:单片机最小系统模块,光线接收模块,AD转换模块,地址锁存模块(74HC373),8255和LED显示模块。本系统优于传统的LED照明控制系统,能够实现通过智能遥控方法调节光的强度,使用方便,功耗低,性价比高,便于推广使用致 谢我要衷心的感谢我的指导老师,通过本次毕业设计,我运用了很多所学的专业知识,并且通过查询相关的文献资料,也学习了一些书本上未曾讲到的专业知识,从中获得了很大收获。本论文的写作的过程中,碰到了很多未曾想到的困难,但是在指导教师的耐心和认真的指导下,通过我自

53、己的努力,完成了本次毕业设计。本论文的完成并不是我一个人的成果,我要感谢很多人。如果没有指导教师的正确引领和指导,没有家人和朋友的支持和帮助,这篇毕业论文是不能够完成的。在这里我向指导教师致以崇高的敬意,感谢您的辛勤指导!我还要感谢在毕业论文写作期间给予我关心和帮助的同学们,正是你们的关心和督促才让我一直充满激情从未停止前进的脚步。我还要感谢我的母校,正是有了母校这片沃土,我才会有发挥我的光和热的机会。谢谢老师、同学,还有我的母校!参考文献1 李军.单片机原理与应用M.清华大学出版社,2014.2 刘南平,吉红.模拟电子技术M.北京:科学出版社,2014.9.153183.3 张毅刚,王少军,

54、付宁.单片机原理及接口技术M.人民邮电大学出版社,2015.4 胡仁杰 堵国樑. 全国大学生电子设计竞赛优秀设计方案选编M. 东南大学出版社, 2014.5 朱长满, 杭航. 数字式变压器组保护装置:, CN204145081UP. 2015.6 Antonopoulos A, Bucher M, Papathanasiou K, et al. Modeling of high-frequency noise of silicon CMOS transistors for RFIC designJ. International Journal of Numerical Modelling El

55、ectronic Networks Devices & Fields, 2014, 27(5-6):802811.7 陈显平. 传感器技术M. 北京航空航天大学出版社, 2015.8 Jocab. Millman. and Arvin.Grabel.Microelectronics.2de. McGraw-Hill Book Company, New York.2014. 9 王长涛 韩忠华 夏兴华. 单片机原理及应用-C语言程序设计与实现(第2版)M. 人民邮电出版社, 2014.10 葛青, 葛良全. 数字电路测试实验系统设计探讨J. 中国电力教育, 2014(14):166-167.11

56、 康华光.电子技术基础模拟部分第四版M,高等教育出版社.201412 张积东.单片机52/98开发与应用M.北京:机械工业出版社,2011:97-98. 13 徐斯. 基于Keil C51编译器的程序优化J. 湖南农机, 2014(2).14 于博, 杨晓庆. 基于Keil C51与Proteus仿真联合的单片机应用研究J. 软件工程师, 2015, 18(9):51-52.15 李小坚. Protel DXP电路设计与制版实用教程M. 人民邮电出版社, 2015.16 王长涛 韩忠华 夏兴华. 单片机原理及应用-C语言程序设计与实现(第2版)M. 人民邮电出版社, 2014.附 录系统仿真图1系统仿真图20

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!