1 / 31
文档名称:

红外感应RGB LED点阵-动态图.pdf

格式:pdf   大小:3,848KB   页数:31页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

红外感应RGB LED点阵-动态图.pdf

上传人:青山代下 2024/5/21 文件大小:3.76 MB

下载得到文件列表

红外感应RGB LED点阵-动态图.pdf

相关文档

文档介绍

文档介绍:该【红外感应RGB LED点阵-动态图 】是由【青山代下】上传分享,文档一共【31】页,该文档可以免费在线阅读,需要了解更多关于【红外感应RGB LED点阵-动态图 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:..西南交通大学课程设计(报告)红外感应RGB_LED灯色彩控制年级:12级组员:俞程玮20122156通信二班蒋耀泽20122152通信二班刘颖杰20122129通信二班组号:红外三组****:**二零一四年七月:..设计任务及要求设计并制作一红外感应颜色控制RGB-LED灯。:(1)每感应一次(挥手),RGB-LED颜色变化一次。(2)颜色至少8种(彩虹颜色)。:(1)将单RGB-LED换成RGB-LED点阵。(2)其他感应方式改变RGB-LED颜色。II:..摘要本篇报告主要是介绍红外感应RGB-LED灯色彩控制的实现电路。LED灯使用的是8*8的点阵。红外控制,是通过接收器接收红外对管的发射信号,行成脉冲,并计数,从而实现八种动态图画变化。通过感应(如手势)的变化而实现LED灯的灯亮序变化形成图形字母,电路结构简单,设计功耗小。通过这次实习,我们学习了如何把理论知识和实践相结合起来。用红外线做信号载波具有成本低、传播范围和方向可以控制、不产生电磁辐射干扰和被干扰等诸多优点,因此被广泛地应用在各个技术领域中。关键词:RGB_LED;红外感应;动态图;点阵;III:..目录设计任务及要求..................................................................................................................II第1章绪论........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................18IV:..。由含镓(Ga)、砷(As)、磷(P)、氮(N)、硅(Si)等的化合物制成的二极管,当电子与空穴复合时能辐射出可见光,因而可以用来制成发光二极管。在电路及仪器中作为指示灯,或者组成文字或数字显示。砷化镓二极管发红光,磷化镓二极管发绿光,碳化硅二极管发黄光,氮化镓二极管发蓝光。因化学性质又分有机发光二极管OLED和无机发光二极管LED。LED灯是用高亮度白色发光二极管发光源,光效高、耗电少,寿命长、易控制、免维护、安全环保;是新一代固体冷光源,光色柔和、艳丽、丰富多彩、低损耗、低能耗,绿色环保,适用家庭,商场,银行,医院,宾馆,饭店他各种公共场所长时间照明。无闪直流电,对眼睛起到很好的保护作用,是台灯,手电的最佳选择。-LED灯色彩控制的实现电路。LED灯使用的是8*8的点阵。红外控制,是通过接收器接收红外对管的发射信号,行成脉冲,并计数,从而实现八种动态图画变化。通过感应(如手势)的变化而实现LED灯的灯亮序变化形成图形字母,电路结构简单,设计功耗小。通过这次实习,我们学习了如何把理论知识和实践相结合起来。用红外线做信号载波具有成本低、传播范围和方向可以控制、不产生电磁辐射干扰和被干扰等诸多优点,因此被广泛地应用在各个技术领域中。5:..Ⅱ系列芯片EP2C8T144C8N,该芯片功耗低、容量大、性价比高,有多达8k个逻辑单元。由于FPGA供电电路和下载、配置电路较复杂,所以核心板将这部分电路集成了,从而降低了使用FPGA的难度。课程设计中如需使用FPGA,可将FPGA核心板当作一颗芯片来使用。,名字为EP2,,可直接调用。核心板上有两排插针,引出了大部分可用IO口和电源,插针的数字编号即是对应的IO口编号,其它编号(名字)的插针是特殊功能的。GND——地线。至少有一个GND脚要与主板相连,建议3个都连上。VP——核心板电源输入口(+6~+12V,推荐使用+9V),核心板上圆孔空心插座的中心触点与VP是连到一起的。、+5V——辅助电源输出,可分别对外提供不超过100mA的直流电源,使用小电流时可由此引出。6:..图2FPGA核心板核心板内建了一个50MHz的标准时钟,并且固定连接到了P17,可将之作为系统时钟。JTAG插座是编程与调试接口,使用Quartus软件的Programmer工具与USBBlaster下载线可以对FPGA进行烧写,。AS插座是对配置芯片的烧写(编程)接口。JTAG方式下对FPGA芯片编程,芯片掉电后数据丢失,所以核心板上集成了配置芯片,如果配置芯片里写入了FPGA的配置信息,核心板上电后会自动从配置芯片读取配置信息对FPGA进行配置。使用Quartus软件的Programmer工具与USBBlaster下载线可以对配置芯片进行烧写(编程),。烧写前需将Programmer工具软件的模式设置成AS(ActiveSerialProgramming)。。其中的高频部分一般为38kHz,低频部分为1kHz。调制信号的原理图如下图3红外信号产生电路原理图7:..下图是Multisim仿真波形(其中的高频部分一般为38kHz,低频部分为1kHz),因此当红外接收器接收到上文所述红外信号时将会输出1kHz左右的方波信号。接收电路如下8:..,此处为了便于观察仿真波形而选择了1nF。图中的信号产生器相当于红外接收传感器。图6仿真波形从仿真波形可以看出,输入信号的下降沿会激发一个高电平输出。,,即挥手一次,该单稳电路将会输出一个高电平脉冲,。、形状、封装以及最终所使用的电路板大小为,设计了如下的PCB原理图和布线方案。9:..图7PCB原理图原理图中正上方的是3个555触发器,前面两个555触发器产生红外信号,第三个555触发器接收红外信号并输出高电平信号到芯片上。为了保护芯片,,前两个555触发器则使用5V电源。下方是EP2C5T144C8芯片、三极管和的点阵。值得注意的是,为了减少毛疵,在三极管的基极接了5KΩ的上拉电阻,上拉电阻接5V,。此时只有芯片输出到三极管基极上的信号为低电平时,才能控制这个三极管所对应的共阳极上的小灯亮。所有阴极的输出都接了400Ω的保护电阻。另外,本电路直接给芯片供电,。10:..图8PCB布线图最初从原理图导入元件的PCB图连线很乱,交叉多。由于实验室目前的条件只适合做单面PCB,此种情况下布线的布通率非常低,且飞线无数。手工飞线是一件劳神费时的工作。在EDA软件上做工作总比修改实际电路要简单,所以,在布局布线阶段要细致认真,要综合考虑电路的布局需要(从信号抗干扰的角度)、电路操作便利(显示观察方便、按键操作方便、接口连接方便等)、安装焊接、调试。能在前期把困难解决的就不要留在后面。由于FPGA的IO口几乎可以任意指配,所以我们尝试调整与FPGA的引脚连接,使交叉尽量少(预拉线尽量少交叉),以提高布通率。实际上,由于P18引脚只能作为输入口使用,可以考虑将P18与P25(P18引脚的左边)引脚短接,将引脚锁定到P25引脚。从最终完成的PCB布局图可以看出虽然仍有交叉线,但相对于最初导入的PCB图少得多,只需四条飞线就可以解决该问题,且各个飞线较短,不易出错。该布局的方式使得各个连线紧密,达到合理利用电路板的作用。11:..程序设计图9总体电路图电路总体分为5个部分:计数器、共阳极扫描模块、图案存储模块、数据选择模块以及颜色控制模块。图10计数器如图,为计数模块,输入为时钟信号以及挥手信号。每挥一次手就输出outcode就自加一,并且在0到7之间循环。而c1-c8则是使能信号,每次只有一路输出高电平。代码见附件。12:..图11阳极扫描模块如图为共阳极扫描模块,输入为时钟信号。输出L为阳极信号,每255个时钟信号扫一路阳极。输出adr表示正在扫描第几路阳极。输出outcode则表示正在扫描动图中的第几张图案。而adress表示阳极的扫描次数,在0到55之间循环。代码见附录。图12图案存储模块为了方便设计和节约设计时间,我们采用了Altera提供的现成的宏功能模块资源中的存储元件lpm_rom只读存储器。首先我们建立了mif格式文件,如图图13mif格式文件该mif文件存储了一个沙漏动图的信息。接着就可以做出如图12所示的只读存储器了。这个存储器的输入是mif文件的地址,输出mif文件中的内存。由于一共有八副动态图,所以我们一共创建了8个存储模块。所以图10中的c1-c8输出一一控制了这八个存储器的使能端,使得每挥一次手只能有一路存储器输出图案信息。13:..图13数据选择模块前文已经提到八个存储器每次挥手只有一路有图案信息输出,剩余七个的输出都是0,为了将有用的真实的图案信息提取出来,我们设计了一个数据选择模块,每次只让八个存储器输出数据中的一路通过。代码见附录。图14颜色控制模块该模块为前面产生的图案进行配色,使最后的动态图更加生动。代码见附录。14:..调试RGB-LED灯的设计的功能有每感应一次(挥手),RGB-LED颜色变化一次,同时颜色至少8种(彩虹颜色)。将单RGB-LED换成RGB-LED点阵。使用其他感应方式(挥手,遥控,开关)改变RGB-LED颜色。把程序下载到电路板上,通过LED灯的驱动电路。在红外感应的作用下,LED灯颜色变化情况与程序设计中的完全一致:沙漏、左箭头、右箭头、圈叉、爱心、船、电池和汉字。图15实际电路图1图16实际电路图215:..图17实际电路图3图18实际电路图416:..,测试点阵屏上显示的内容是否与程序设置的内容一致。进行回收感应时,能否表现出LED灯位置颜色等变化。17:..,在rom中填入自主设置的文字图案颜色信息,执行“processingpilation”进行编译。全编译过程包括分析与综合,适配,编程和时序分析环节。当综合器发生了错误,则所发现的每个错误都有一个对应的消息显示在信息窗口。同样,综合器也可能生成一些警告信息,一般来说,大部分警告信息不影响设计结果。当综合完成时,设计者可以从产生的编译报告中查看综合适配等结果信息。由于EDA方法设计电路的最终结果是得到满足设计的要求的硬件电路,所以在下载到目标芯片之前,设计者要根据实验测试或外围电路的需要对芯片的引脚进行锁定。执行“assignments”下的“pins”命令,双击选中要锁定的信号端口,在“location”栏中对相应信号进行锁定。引脚锁定后还需要对设计文件重新进行编译操作,“tools”下的“programmer”命令,选中“USB_Blaster”用于下载方式。点击“start”把程序下载在芯片里用于驱动LED灯。,在进行电路板的通电测试。每次挥手,图案跟着改变,每两次挥手之间图案的变化状态与程序控制的要求一致。结论与收获体会在这次的红外感应RGB_LED灯色彩控制课程设计实习中,我们第一次接触PCB的设计与制作。在这个过程中,我们遇到了很多问题与困难,值得庆幸的是在老师同学的帮助下同时我们也摸索出了一些解决办法,这才使得我们的课题得以继续下去。比如刚开始我们的红外接收传感器就接收不到红外信号,经过种种测试我们才确定了是传感器烧了。又比如,我们在做点阵的时候发现点阵的毛疵很多,我们发现在三极管的基极接上一个上拉电阻能够明显改善有毛疵的现象。凡此种种,电路中冒出来的问题总是使我们提心吊胆紧张烦躁,但是当我们解决了这些问题的时候,又会觉得豁然开朗心情舒畅。18:..可惜的是时间有限,其实我们可以通过编程使得点阵显示更加复杂的图案,个性更加鲜明。红外感应接收器可以接收外来红外感应信号,进行其它更进一步的实验内容,比如自动门的控制,电视频道的控制。如果使用点阵还可以显示更加复杂的文字与图片信息。通过这次实习,我们对电路分析,EDA技术有了更进一步的认识。把理论与实践相结合起来的方式,使我们对理论知识更为深刻,增强了自我的动手能力。通过自学一些软件与编程方法也让我们体会到了所学课程知识的欠缺,知识的海洋是无止境的,需要我们的不断努力和探索。这次关于电子课程设计的实习对于我们来说确实是一个不错的挑战和学习机会,在短短的十几天时间里,从一无头绪到最后通过认真思考,讨论方案到最后成功的做出作品,这是以前我们都不敢想的,但是现在却圆满完成了。这说明了没有完成不了的任务只是看你有没有真的用心罢了,只有努力去做的人才可能会成功。有人曾说过:“科研工作是一项艰苦、寂寞并且需要全心全意投入的工作,一旦选择了这个责任,我们就要承担得起他人所不能承受的压力。”正因为这样,所以当成果出现的时候,我们是多么的有成就感!19:..附录1程序计数器代码:moduleoutputregc1,c2,c3,c4,c5,c6,c7,c8;counter(incode,c1,c2,c3,c4,c5,c6,c7,cinitialoutcode=3'b000;8,outcode);always@(posedgeincode)inputincode;beginoutputreg[3:0]outcode;outcode=outcode+1;endif(outcode==4'b1000)4'b0011:outcode=4'b0000;begincase(outcode)c1=1'b0;4'b0000:c2=1'b0;beginc3=1'b0;c1=1'b1;c4=1'b1;c2=1'b0;c5=1'b0;c3=1'b0;c6=1'b0;c4=1'b0;c7=1'b0;c5=1'b0;c8=1'b0;c6=1'b0;endc7=1'b0;4'b0100:c8=1'b0;beginendc1=1'b0;4'b0001:c2=1'b0;beginc3=1'b0;c1=1'b0;c4=1'b0;c2=1'b1;c5=1'b1;c3=1'b0;c6=1'b0;c4=1'b0;c7=1'b0;c5=1'b0;c8=1'b0;c6=1'b0;endc7=1'b0;4'b0101:c8=1'b0;beginendc1=1'b0;4'b0010:c2=1'b0;beginc3=1'b0;c1=1'b0;c4=1'b0;c2=1'b0;c5=1'b0;c3=1'b1;c6=1'b1;c4=1'b0;c7=1'b0;c5=1'b0;c8=1'b0;c6=1'b0;endc7=1'b0;4'b0110:c8=1'b0;begin20:..c1=1'b0;4'b0111:c2=1'b0;beginc3=1'b0;c1=1'b0;c4=1'b0;c2=1'b0;c5=1'b0;c3=1'b0;c6=1'b0;c4=1'b0;c7=1'b1;c5=1'b0;c8=1'b0;endc6=1'b0;endcasec7=1'b0;endc8=1'b1;endmoduleend阳极扫描程序:moduleb=b+1;Lcircle(clk,L,adress,outcode,adr);if(b==15000)inputclk;outcode=outcode+1;outputreg[7:0]L;if(b==15000)outputreg[2:0]outcode;b=0;elsea=a-8;outputreg[3:0]adr;endoutputreg[5:0]adress;endintegern,t,i,a,b;always@(posedgeclk)if(adr==4'b1000)adr=0;beginif(a==56)a=0;if(n==256)beginn=0;t=t+1;endif(outcode==3'b111)outcode=0;if(t==1)adress=a;begint=0;adr=adr+1;a=a+1;if(a%8==0)beginfor(i=0;i<=7;i=i+1)endbeginn=n+1;if(i==adr)L[i]=0;endelseL[i]=1;endmodule数据选择程序:moduleinputclk;HUO8(incode,clk,P1,P2,P3,P4,P5,P6,P7,outputreg[7:0]POUT;P8,POUT);always@(posedgeclk)inout[7:0]P1,P2,P3,P4,P5,P6,P7,P8;begininput[3:0]incode;case(incode)21:..3'b000:POUT=P1;3'b110:POUT=P7;3'b001:POUT=P2;3'b111:POUT=P8;3'b010:POUT=P3;endcase3'b011:POUT=P4;end3'b100:POUT=P5;endmodule3'b101:POUT=P6;颜色控制程序:modulebeginR4=0;G4=0;B4=255;PWM(clk,rom_in,red,green,blue,t,L);R7=139;G7=80;B7=0;R3=0;G3=0;B3=255;inputclk;input[7:0]rom_in;R6=0;G6=0;B6=255;R1=255;G1=215;B1=0;input[2:0]incode;input[3:t,L;R1=0;G1=0;B1=255;R0=139;G0=37;B0=0;outputreg[7:0]red,green,blue;R0=139;G0=37;B0=0;endintegern,R0,R1,R2,R3,R4,R5,R6,R7,Gendend0,G1,G2,G3,G4,G5,G6,G7,B0,B1,B2,B3,B4,B5,B6,B7;if(L==3'b010||L==3'b101)3'b000:always@(posedgeclk)beginbeginbegint)4'b000:R7=139;G7=80;B7=0;if(L==3'b000||L==3'b111)case(incode)R5=0;G5=0;B5=255;begin3'b100:R2=0;G2=0;B2=255;R7=139;G7=80;B7=0;beginR1=255;G1=215;B1=0;R0=139;G0=37;B0=0;if(L==3'b000||L==3'b111)R0=139;G0=37;B0=0;endbeginendif(L==3'b001||L==3'b110)R7=139;G7=80;B7=0;if(L==3'b011||L==3'b100)beginR0=139;G0=37;B0=0;beginR7=139;G7=80;B7=0;endR7=139;G7=80;B7=0;R6=0;G6=0;B6=255;if(L==3'b001||L==3'b110)R5=255;G5=215;B5=0;R1=0;G1=0;B1=255;22:..R0=139;G0=37;B0=0;if(L==3'b000)if(L==3'b001||L==3'b110)endbeginbeginif(L==3'b010||L==3'b101)R7=139;G7=80;B7=0;R6=0;G6=0;B6=255;beginR6=139;G6=80;B6=0;R3=255;G3=215;B3=0;R7=139;G7=80;B7=0;R5=139;G5=80;B5=0;R2=255;G2=215;B2=0;R5=0;G5=0;B5=255;R4=139;G4=80;B4=0;R1=0;G1=0;B1=255;R2=0;G2=0;B2=255;R3=139;G3=80;B3=0;endR1=255;G1=215;B1=0;R2=139;G2=80;B2=0;if(L==3'b010||L==3'b101)R0=139;G0=37;B0=0;R1=139;G1=80;B1=0;beginendR0=139;G0=80;B0=0;R5=0;G5=0;B5=255;if(L==3'b011||L==3'b100)endR3=255;G3=215;B3=0;beginif(L==3'b111)R2=0;G2=0;B2=255;R7=139;G7=80;B7=0;beginendR5=255;G5=215;B5=0;R7=139;G7=37;B7=0;if(L==3'b011||L==3'b100)R4=0;G4=0;B4=255;R6=139;G6=37;B6=0;beginR3=0;G3=0;B3=255;R5=139;G5=37;B5=0;R4=0;G4=0;B4=255;R1=255;G1=215;B1=0;R4=139;G4=37;B4=0;R3=0;G3=0;B3=255;R0=139;G0=37;B0=0;R3=139;G3=37;B3=0;endendR2=139;G2=37;B2=0;endendR1=139;G1=37;B1=0;3'b101:3'b001:R0=139;G0=37;B0=0;beginbeginendif(L==3'b100)23:..beginbeginR7=139;G7=37;B7=0;R7=139;G7=80;B7=0;R6=0;G6=0;B6=255;R0=139;G0=80;B0=0;R6=139;G6=80;B6=0;R3=255;G3=215;B3=0;endR5=139;G5=80;B5=0;R2=255;G2=215;B2=0;if(L==3'b001||L==3'b110)R4=139;G4=80;B4=0;R1=0;G1=0;B1=255;beginR3=139;G3=80;B3=0;endR7=139;G7=37;B7=0;R2=139;G2=80;B2=0;if(L==3'b010||L==3'b101)R6=0;G6=0;B6=255;R1=139;G1=80;B1=0;beginR1=0;G1=0;B1=255;R0=139;G0=80;B0=0;R5=0;G5=0;B5=255;R0=139;G0=80;B0=0;endR3=255;G3=215;B3=0;endif(L==3'b111)R2=0;G2=0;B2=255;if(L==3'b010||L==3'b101)beginendbeginR7=139;G7=37;B7=0;if(L==3'b011||L==3'b100)R7=139;G7=37;B7=0;R6=139;G6=37;B6=0;beginR5=0;G5=0;B5=255;R5=139;G5=37;B5=0;R4=0;G4=0;B4=255;R2=0;G2=0;B2=255;R4=139;G4=37;B4=0;R3=0;G3=0;B3=255;R1=255;G1=215;B1=0;R3=139;G3=37;B3=0;endR0=139;G0=80;B0=0;R2=139;G2=37;B2=0;endendR1=139;G1=37;B1=0;3'b010:if(L==3'b011||L==3'b100)R0=139;G0=37;B0=0;beginbeginendif(L==3'b000||L==3'b111)R7=139;