摘 要
本论文介绍了Microchip公司的PIC单片机PIC16F1827的结构特点和工作原理,以及XLAMP MC-E LED的功能特性。给出了利用PIC MCU的CCP模块输出PWM从而对XLAMP MC-E LED进行配光的硬件系统电路和系统软件的设计方法。实验方法采用Altium Designer6.9软件绘制LED驱动电路原理图,利用MPLAB X IDE软件来编写C语言程序,然后制作PCB电路板,最后进行软硬件的调试。论文的主要意义在于通过实现PIC16F1827对RGB灯的调光控制,得到单一和混合的颜色,实现实际需求。进一步对C语言设计程序、电子电路设计原理、单片机编程原理等知识的综合运用,提高自己的理论知识水平、动手实践能力和科学研究精神。
引言
目前,社会上有很多种单片机,比如51单片机、AVR单片机、ARM单片机、PIC单片机等等。不同的单片机类型应用于不同的场合。在我国,使用得比较广泛的是传统的8位的51单片机。由于信息时代的发展,Mirochip的PIC单片机在市场上占据着越来越多的份额,目前,PIC单片机的种类已经发展到10000多种,有高档、中档、低档等类型,在农业、工业上得到普遍的使用,在项目开发中可以根据实际需求进行PIC MCU选型。在我们实际生活中,PWM有着很广泛的用途,可以用步进电机、LED灯、开关电源等等。单片机输出PWM波形的方法有很多,比如利用内置的定时器模块、ADC模块、CCP模块、等等。相比于前两种模块,定时器模块过于占用CPU资源,且不停的进行计数;ADC精确度如果不够,则会产生较大的误差,且操作起来不是很方便;而利用PIC单片机独有的CCP模块,寄存器控制简单,并且便于程序修改,是输出PWM的最优选择。
在21世纪,LED灯在我们生活中扮演着越来越重要的角色。虽然LED灯相比于其他照明灯具,价格比较贵,但是以自身节能、无污染、寿命长、体积小的优势在市场上赢得了大家的认同,前景充满阳光,被称为第四代绿色光源,广泛应用于家居装饰、城市夜景、电脑背光源、显示屏和普通照明等领域。在我国十二五规划中,LED产业受到了大力的政策和资金支持,通过国家补贴推动LED灯的普及和加速,增大企业的竞争力,这对未来更好的推广和使用LED灯,淘汰白炽灯有着很重要的意义。
本论文根据PIC16F1827和XLAMP MC-E LED的datasheet,理解PIC16F1827的工作原理后,设计MCU与XLAMP MC-E LED彩灯进行引脚的接线控制和芯片的编程,通过使用PIC单片机的CCP模块输出PWM进行RGB灯配光,实现RGB三种颜色的256级灰度任意混合,产生256*256*256=1677216种颜色,形成不同光色的组合,满足生活的实际需求。
LED发光原理及其特点
2.1LED发光原理
LED是一种能直接把电能转换成光能的半导体发光二极管,并且具有正向导通,反向截止的特点。LED主要是由P型半导体和N型半导体两部分所组成,P区的多数载流子是空穴,N区的多数载流子是电子。在P型半导体和N型半导体之间有一个过渡层叫做PN结。在PN结当中,在外加电场的作用下,P区的空穴流向N区,N区的电子流向P区,在PN结处电子和空穴出发生复合,多余的能量则以光的形式释放出来,从而把电能直接转换为光能。
2.2LED的特点
首先,LED发出光的与自然光是截然不同的,普通的白炽灯的频谱是连续的,所产生的热量通过辐射的方式散出,而LED的频谱是不连续的,其中没有包括红外和紫外部分,因此它的光线没办法带走热量,只能通过传导方式来散出。由于LED通过使用冷发光技术,相比普通照明灯具,在发光的过程中发热量低很多。其次,LED由Ga与As、P的化合物制成,这种材料是不含毒性的,不会像荧光灯含水银会造成污染,同时LED也可以进行回收和二次利用。并且LED的温度不高,可以直接用手去安全触摸,是一种典型的新一代绿色照明光源。LED被完全封装在环氧树脂里面,比起高压钠灯、金卤灯和荧光灯都更加牢固,不容易发生损坏现象。LED耗电相当低,利用直流驱动,不会产生频闪,而普通灯都是采用交流驱动,必定会产生频闪,长时间使用会对人眼产生一定的伤害。LED的电光功率转换接近30%,即相当于1W的电能,LED用到0.3W来发光,剩下的0.7W以热的形式消耗掉。
2.3XLamp MC-E LED的特点
XLamp MC-E LED 是一种采用多芯片封装技术的LED,由红色、绿色、蓝色、白色四个正方形的LED芯片封装在一起。这种多芯片LED的优点在于:减少四个LED相互之间的距离,增加各芯片发出的红光、绿光、蓝光和白光的混合区域,进而提高红光、绿光、蓝光和白光混合的均匀度,使其出光效果更好。由于各个LED是独立于整个封装,所以能够防止在某一点集中发热,进而很好的控制LED的温度不会过高。这里需要注意的是,MC-E LED封装由于封装的芯片多,发热量大,采用铝基PCB电路板或铜基PCB电路板,芯片直接固定在金属基板上,因为使用金属基板可以方便外接散热器散热。MC-E LED消耗的总功率,是各芯片消耗功率的总和,总光通量也是各芯片发光通量的和,用总光通量除以总消耗功率,即可得出该器件的发光效率。
3.PIC单片机编程理论
3.1 PIC单片机工作原理
3.1.1PIC16F1827的主要结构
PIC16F1827主要由CPU、振荡器模块、参考时钟模块、比较器模块、ADC模块、IO端口、Timer2/4/6模块、捕捉/比较/PWM模块所构成。PIC16F1827包含了一个增强型中档8 位CPU 内核。该CPU 具有49 条指令,提供了直接寻址、间接寻址和相对寻址模式。中断功能包括定时器中断、ADC中断、外部中断、外设中断、比较器中断、电平变化中断和自动现场保护。PIC16F1827 器件中有三种类型的存储器:数据存储器RAM、程序存储器ROM和数据EEPROM 存储器。下图为PIC16F1827主要结构:
3.1.2 PIC16F1827的引脚功能介绍
PIC16F1827引脚图
PIC16F1827引脚功能图
PIC16F1827的RA端口和RB端口具有很丰富的复用功能,根据芯片datasheet,配置引脚复用寄存器,设置相应的引脚功能。其中每个端口有3个寄存器与其操作有关系,包括:TRISx寄存器,是一个数据方向寄存器;PORTx寄存器,用来读取器件引脚上的电平;LATx寄存器,作用是输出锁存器。有些端口还包括其他寄存器,如:ANSELx寄存器,用来做模拟选择,WPUx寄存器,是用来设置弱上拉。
3.1.3PIC16F1827的配置字
在对单片机编程的过程中,配置位的信息十分重要,一个系统是否能正常运行,配置位的设置准确是关键。PIC16F8127的器件配置包括配置字寄存器1、配置字寄存器2、代码保护和器件ID。代码保护是用来保护MCU不受未经授权的访问。
3.2 PIC单片机开发板原理
在开发的过程中,用到了爱晶电子的PIC18F4620开发板。开发板可以用来进行嵌入式系统开发,做程序烧写的一个桥梁,其中硬件组件包括CPU、RAM、IO口等等。这个开发板上有很多模块,其中常用到的模块是MCU主模块、4*4矩阵键盘、PICKIT2接口、IO口设备。各模块之间相互接线可以通过使用短路帽或者软跳线,也叫杜邦线,这种连接方式其他模块的接线可以由开发人员自己来决定,具有很好的灵活性。开发板可以由USB1供电或者USB2供电。晶振接口可以根据实际需要改换成4MHZ、10MHZ、20MHZ等等。ICSP接口即在线调试编程接口可以用来与ICD2、ICD3进行连接。通过开发板,我们可以利用这个板上的一些模块来对MCU做程序测试,缩短研发的进度,提高效率。
4.绘制电路图及制作PCB电路板
4.1 LED电路驱动方式
LED驱动电路的形式包括:直流驱动和交流驱动两种形式。其中直流驱动包括恒流型、恒压型、限流型等方式。但是在实际的应用当中,使用最多的就是直流驱动的形式。假如采用恒压来作为LED电路驱动的时候,则LED两端电压基本上是保持在一个固定值不变,但是由于电压中会存在一些波动,会导致LED的电流会随着电压的变化而发生变化,产生不稳定现象。然而,如果采用的是恒流驱动的方式,即保持LED的电流不变,一旦外界发生了一定的干扰,导致电流发生了变化,LED电流也能在自身电路调节下恢复到原先设置的参数。在本次实验中,使用的方法就是恒流型驱动方式。这种方式使用简单,电路不复杂,使用了PT4115作为恒流芯片,资料充足,性价比高,是很好的选择。
4.2LED驱动电路原理
要在220V情况下工作,需要一个降压整流滤波电路。首先从输入端220V先经过变压器转为交流的12V,通过整流桥,即将桥式整流的四个二极管封装在一起,只引出4个引脚,作用是把交流电转换为直流电。电解电容C5的作用是进行滤波,去除掉整流后的杂波。LM317是一个三段可调节输出正电压稳压器,这种稳压器的使用非常方便,只需要在两个外部电阻来设置输出电压。这次实验中PIC16F1827采用的电压是3.3V,所以根据稳压器的数据手册计算得到R5的阻值为320欧姆。P1接口是用来提供烧写程序的接口,5个脚分别表示:VCC、GND、VPP、PGD、PGC。PT4115是一款高调光比LED恒流驱动器,功能是可以用来驱动一颗或者多颗串联LED。PT4115的输入电压范围从6V到30V,输出电流是可以调整的,最大可以达到1.2A。其中,CSN表示电六采样端,SW表示功率开光的漏端,DIM表示开关使能、模拟和PWM调光端,GND表示信号和功率地,VIN是电源输入端,必须就近接旁路电容。电路中采用4个PT4115,每个恒流源分别为一个LED供电。PIC16F1827的RA2,RA3,RA4,RB3四个脚分别连接到4个PT4115的DIM端,分别通过MCU输出PWM信号来对LED灯进行调光,进而对RGB灯进行配光。
4.3 LED驱动电路板
编写RGB灯配光程序
5.1 MPLAB X IDE软件介绍
MPLABX IDE可以用来运行在Windows或者Linux系统上的调试软件,是专门用来开发Microchip单片机应用。由于它提供了一个统一的集成“环境”来支持嵌入式单片机的代码开发,因此称为集成开发环境(IDE)。
PIC单片机的开发工具链被MPLAB X集成开发环境带来了巨大变化。跟以往完全由内部开发的MPLAB版本不同,MPLAB X是一种基于Oracle的开源NetBeans IDE。由于采用这种开源方式,使我们得以非常方便自如地添加了许多常用功能,同时还提供了一种更易于扩展的架构以便将来添加新功能。
本次实验中利用MPLAB X IDE软件来做进行开发,MPLAB X IDE 这个软件可以用来进行C语言程序的编写,同时可以用来烧写到单片机芯片内。并且利用这个软件,可以查看每一个寄存器的地址和数据,可以进行断点调试,使用起来非常方便开发。要注意的是,在开始安装MPLAB X 时要先安装JAVA,另外在文件中要使用中文注释的时候,文件类型一定要改为GBK、GB2312中的一种。并且配置位一定要根据具体的芯片手册,进行配置位的设置,如果设置错误,会导致整个MCU无法正常运行。
MPLAB X IDE 界面图
5.2PWM调光控制理论
5.2.1LED调光方法
LED调光的方式主要有三种:线性调光、可控硅调光以及PWM调光。
线性调光主要利用电路的分压原理,这种方式的优点是操作方便,不产生干扰,缺点在于效率比较低,而且当LED的电流在下降的时候,会导致白光LED向黄色光谱偏移,同时还会因为分压产生过多的热量。
可控硅调光的优点在于工作效率较高,性能稳定。但是缺点在于可控硅导通后需要一个维持电流来保持导通,否则会恢复到截止状态,并且在低负载的时候会出现不稳定现象。在使用的时候,此方法可以直接应用在普通的白炽灯上,但是对于LED灯,需要对电路进行再次改进,比较复杂和麻烦。
目前PWM调光技术被认为是最好的LED调光技术。在进行实际操作的时候,可以通过MCU编程控制PWM的寄存器来设置PWM的占空比和周期,进而输出特定的PWM信号来改变LED的电流,从而改变LED的亮度。
5.2.2PWM调光的优点
PWM调光技术的优点在于应用简单、效率高、精度高,并且调光得效果不错。当使用PWM进行LED灯调光的时候时,LED灯的电压保持在0V或者PWM输出电压这两个值,LED的光谱不会发生偏移,当频率在200MHZ以上时,人眼不会感觉到LED闪烁的现象。通过MCU的寄存器配置,输出的数字信号能很好的转换成PWM信号,输出的PWM波形能够保持稳定,并且占空比的误差很小,波形的微小波动基本上可以忽略其影响。在设置寄存器的过程中,可以从0设置到255,进行256级灰度的亮度控制。
总结与意义
本论文利用PIC16F1827来控制XLamp MC-E LED灯的实际调光效果符合预期效果,颜色能够得到任意的混合,电路方面各部分也稳定。单片机控制RGB灯的配光实验,可以为接下来进行利用遥控无线智能控制LED,以及更上一层的用智能手机控制LED灯作一个铺垫。并且从这次实验当中得出的XLamp X IDE LED驱动电路图和配光程序,可以提高下次开发的效率,减少开发的时间和成本。
通过学习和运用单片机,使我能够更好的进行学以致用,把学过的C语言程序设计、单片机原理与应用、模拟电子技术、数字电子技术等知识做综合的使用。这次实践让我对PIC单片机的操作有了深刻的理解,也提高了自己的英文阅读水平,学会了如何收集、整理、分析资料,也提高了写代码的能力,在这个过程中也学会了对于知识,要做到对某个知识点要深入理解。做事时要用心、细心。在这次实验的过程中,也碰到了很多问题,我明白了只有自己亲自动手去做一个电路板,去编写程序,才能去解决软硬件的问题。单片机是一门实践的课程,关学习理论是不行的,只有真真切切的做过一些项目,才能把单片机各个模块的功能真正发挥它的作用,只有通过每一步的调试,才能明白程序的整个流程是怎么样的,中断程序该如何运用,才能更深刻的去理解单片机里面每一个寄存器该如何配置。
我们今天研究单片机的开发应用有很重要的意义。目前,在信息时代的发展过程中,单片机的应用范围很广泛,在计算机、智能手表、智能家用电器等等,都离不开单片机。可以说,单片机已经深入到我们的实际生活当中的各个领域,并且发挥着巨大的作用。并且,学习和研究单片机,是以后从事嵌入式系统开发的一把钥匙。兴趣是最好的老师。在大学里学到的课程中,我最感兴趣的是单片机,未来,我会继续努力学习,坚持不懈,把单片机学得更好,应用得更好,在智能领域努力专研,努力成为国家未来的栋梁,为中国特色社会主义做出自己的贡献。路漫漫其修远兮,吾将上下而求索!
原创文章,作者:Editor,如若转载,请注明出处:https://www.diyilunwen.com/lwfw/xxjs/796.html