led显示屏制作教程之led广告牌制作教程.ppt_第1页
led显示屏制作教程之led广告牌制作教程.ppt_第2页
led显示屏制作教程之led广告牌制作教程.ppt_第3页
led显示屏制作教程之led广告牌制作教程.ppt_第4页
led显示屏制作教程之led广告牌制作教程.ppt_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目二、LED广告屏的设计,课程负责人:林宏伟,LED屏简介,LED点阵显示模块是一种能显示字符、图形和汉字的显示器件,具有价廉节电、使用寿命长、易于控制等特点;它广泛应用于各种公共场合,如车站、机场公告、商业广告、体育场馆、港口机场、客运站、高速公路、新闻发布、证券交易等方面。,任务一:LED点阵显示模块制作,1.认识LED点阵显示模块; 2.了解LED点阵显示模块的电路结构; 3.能制作简单的LED点阵显示模块; 4.会识别和检测LED点阵显示模块。,任务要求:,很多单个的LED组合起来,可以显示字符和图形。实际应用中,一个LED点阵显示模块一般是由MN个LED发光二极管组成的矩阵。,常用的有57、79、88结构。,由多个LED点阵显示模块可组成点阵数更高的点阵,如四个88 LED点阵显示模块可构成1616点阵。,一、点阵显示模块的结构及引脚,有的点阵中的每个发光二极管是由双色发光二极管组成的,即双色LED点阵模块。,一、点阵显示模块的结构及引脚,一块88 LED单色点阵显示模块是由64只发光二极管按一定规律安装成方阵,将其内部各二极管引脚按一定规律连接成8条行线和8条列线,作为点阵模块的16条引脚,最后封装起来构成的(如图2-1)。 双色点阵模块的内部是由双色发光二极管组成,列线数不变,行线数增加1倍,共有24根引脚。,二、88 LED点阵模块的电路结构,(a)单色点阵模块 (b)双色点阵模块 图2-1 88LED点阵显示模块,点阵显示器的电路连接图有共阴极和共阳极两种。,图2-2b为列共阳极接法,每一行由8个LED组成,它们的阴极都连接在一起,每一列也是由8个LED组成,它们的阳极都连接在一起,行接负、列接正,则其对应的LED就会发亮;,图2-2a为列共阴极接法,每一行由8个LED组成,它们的阳极都连接在一起,每一列也是由8个LED组成,它们的阴极都连接在一起,行接正、列接负,则其对应的LED就会发亮;,行正列负连接,行负列正连接,列共阴型,列共阳型,图2-2,a),b),请注意:我们是站在列线的角度上来看是共阴极或是共阳极的,站在行线的角度则相反。,议一议: 通常显示汉字需要1616点阵,若将4块88点阵模块拼装成1616点阵显示块,应如何拼装,如何连线?,三、点阵显示模块的制作,1. 88点阵电路图,由图2-3可知,88点阵共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,每列的8个发光二极管的正极连接在一起,并分别引出8根线,即8根列线DC1DC8 ;每行的8个发光二极管的负极连接在一起,并分别引出8根线,即8根行线DR1DR8 。欲点亮某只发光二极管,须在其所在的列线上加高电平,在其所在的行上加低电平。,图2-3,图2-4,行负列正式点亮条件,行0 列1,2. 焊接实物图,焊接时注意列线和行线的正确连接方法。 焊接实物图如图2-4所示。,3. 安装注意事项, 每只二极管插装时正极朝着一个方向(如正极 在右边)。, 每列每行要在一条直线上。, 列线可从下边(或上边)引出,行线可从右边 (或左边)引出。, 注意焊接时间要短,否则可能损坏发光二极管。,四、点阵显示模块的识别和检测,1. 欧姆表检测法,应将万用表转换到欧姆挡的10K挡,因为一般万用表欧姆挡的10K挡使用的是9V电池或者15V电池供电,大于发光二极管的导通电压,能够使发光二极管导通而发出微弱的光;欧姆挡的其它挡使用的是1.5V电池供电,达不到发光管的开启电压(即正向导通电压),测量效果不明显。,随机地找两个引脚测试(其原理与测量二极管基本相同),看着前面的 LED有没有点亮的,没有则改其它引脚再试,有则将引脚位置、点亮的 LED的行、列位置和极性记录下来;如果全没有,则调换表笔,再测一遍。如图2-5所示。,最后我们将得到一份完整的 LED点阵列数据表,根据该数据表就可以确定每根列线和行线所对应的引脚。,图2-5 欧姆表检测法,2. 电路测量法,电路测量法,如图2-6所示。,该方法点亮发光二极管的亮度高,更加方便直观。,图2-6 电路测量法,一种88 LED点阵模块的引脚图如图2-7所示。其中字母C表示行引脚,字母R开头的表示列引脚。如第9脚为C8,是第8行引脚;第10脚为R4,是第4列引脚。,图2-7 一种88LED点阵模块的引脚图,实际应用中,LED点阵模块有多种型号,引脚排列不尽相同,需要时可查阅相关资料。,任务二: LED点阵显示编程,用单片机的I/O接一个88 LED点阵显示模块,其中P0口接行线,P3口接列线,编程实现在88 LED点阵上显示循环左右移动的柱形、静止字符和滚动字符。,任务要求:,一、点阵屏显示原理,我们可以把每一个字的字形理解为一幅图形,把显示器的每一个点理解为一个像素,则88点阵显示屏可以显示在64像素范围内的任何图形。关键问题是如何控制LED发光显示。(编码显示法),1. 图形由发光点(像素)构成,LED电子显示屏是由几万-几十万个半导体发光二极管像素点均匀排列组成。利用不同的材料可以制造不同色彩的LED像素点。目前应用最广的是红色、绿色、黄色。而蓝色和纯绿色LED的开发已经达到了实用阶段。 LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点。 LED之所以受到广泛重视而得到迅速发展,是与它本身所具有的优点分不开的。这些优点概括起来是: 亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。,大型实用LED电子显示屏简介,点矩阵显示器一般采用一种叫做动态扫描的方式进行显示,实际上有三种扫描方法:,点扫描法 扫描亮点从左上角开始,从左至右,由上而下不停移动到右下角,周而复始。依次轮流点亮64点。这种方法常用于鉴别点矩阵显示器的好坏。在使用时需要注意,其扫描频率必须大于1664=1024Hz,周期小于1ms。,2. 字符的显示方式,列扫描法,扫描时由单片机控制驱动电路从左至右依次将点矩阵显示器每一列上8个LED的公共端(阳极)接至高电平,然后由单片机的另一驱动口对这8个LED送出行控制信号。由等效电路不难看出,行线输出“0”时,对应的LED点亮,行线输出为“1”时,对应的LED不亮。也就是说,在列扫描法中,每次选中的列上可以有多个LED同时点亮。列扫描方式示意图见图2-9。,需要注意,用列扫描法制作显示器时,其扫描频率必须大168=128Hz,周期小于7.8 ms才能符合视觉暂留要求。,图2-9 列扫描方式示意图,要想显示字符,首先我们需要确定所显示字符的行码,即对应某一列的8根行线的电平值。其确定方法如图2-10所示。,列扫描法字符的编码方式,图2-10 确定行码的方法,比如要显示字符“2”,步骤为:首先在纸上画出88共64个圆圈,然后将需要显示的笔画处的圆圈涂黑(亮),最后再逐列确定其所对应的十六进制数。 例如第二列的亮灭为:灭亮亮灭灭灭亮亮,其对应的二进制数为10011100B (由高位到低位,低电平亮,高电平灭) ,对应的十六进制数为9CH。,列扫描法中的图形其实是一列一列显示的 ,每显示一列都加入了一定的延时,设扫描顺序从左到右,如果延时时间较长,我们看到的就是从左到右轮流显示的,如果我们把延时时间缩短到足够短时,由于眼睛的视觉暂留现象,人的主观感觉就是每列都在亮。,列扫描法字符的显示过程,你如果觉得使用这种方法获得字符编码太麻烦的话,我们可以从网上下载一个字模生成软件,只要输入要显示的字符,点击“生成字模”就可以输出各行码并自动创建一个行码表。如图2-11所示。,图2-11字模生成软件,行扫描法,方法类似于列扫描,只是单片机每次选中的是一行,而不是一列。注意事项相同。 行扫描和列扫描都要求点矩阵显示器一次驱动一行或一列(8颗LED),如果不外加驱动电路,LED会因电流较小而亮度不足。常用驱动电路如图2-12所示。也可采用74LS244、UN2003驱动。,图2-12 点矩阵显示器的常用驱动电路,逐列扫描方式。如,P1口输出列码决定哪一列能亮(相当于位码),P2口输出行码(列数据)决定列上哪些LED亮(相当于段码),能亮的列从左向右扫描完8列(相当于位码循环移位8次)即显示出一帧完整的图像。 逐行扫描方式,与逐列扫描调换,即P2口输出位码,P1口输出段码,扫描完8行显示出一帧图像。,3. 造型表编码存储方式,点矩阵显示器的造型表一般以数据库的形式存放在软件中。单片机使用查表指令“MOVC A, A +DPTR”或 “MOVC A, A + PC”来读取。,二、 电路仿真,1.电路图,图2-13,2. 选用器件,1)单片机:AT89C51 2)点阵屏:MATRIX-88 3)排阻:RESPACK-8 4)电源:POWER,三、编写程序,1. 循环移动的柱形,其效果如图2-14所示。,图2-14 循环移动的柱形,如何能在88 LED点阵上显示一个竖立的柱形,并让其先从左到右平滑移动两次,然后再从右到左平滑移动两次,而且如此循环下去呢?,由前面的内容可知,88点阵中每个发光二极管放置在行线和列线的交叉点上,当对应的DC端置1电平,而某一DR端置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述: 一根竖柱:对应的列置1,而行则采用扫描的方法来实现。 一根横柱:对应的行置0,而列则采用扫描的方法来实现。,参考程序:,分析:,START: NOP MOV R3,#2 ;设定循环次数 LOOP2: MOV R4,#8 MOV R2,#0 ;查表指针初值 LOOP1: MOV P2,#0FFH ;将P2口全部送“1” MOV DPTR,#TAB ;指向表首地址 MOV A,R2 MOVC A,A+DPTR ;查表 MOV P0,A ;将查表的结果送入P0口 INC R2 ;查表指针加一,准备查下 ;一个数据 LCALL DELAY ;调用延时程序,延时 DJNZ R4,LOOP1 ;判断是否全保护显示完 DJNZ R3,LOOP2 ;循环 MOV R3,#2 LOOP4: MOV R4,#8 MOV R2,#7 ;查表指针初值,LOOP3: MOV P2,#0FFH ;将P2口全部送“1” MOV DPTR,#TAB ;指向表地址 MOV A,R2 MOVC A,A+DPTR ;查表 MOV P0,A ;将查表的结果送入P0口 DEC R2 ;准备查下一个数据 LCALL DELAY ;延时 DJNZ R4,LOOP3 DJNZ R3,LOOP4 LJMP START DELAY: MOV R5,#10 ;延时程序 D2: MOV R6,#20 D1: MOV R7,#250 DJNZ R7,$ DJNZ R6,D1 DJNZ R5,D2 RET TAB:DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH END,二、 相关指令,1. DB伪指令,指令格式: 标号: DB 字节数据表 定义字节数据伪指令,常用来定义数据表格。 如: CHAR : DB 0C0H,0F9H,0A4H,0B0H,99H,92H DB 82H,0F8H,80H,90H ;表示从标号CHAR开始的地方 ;将数据从左到右依次存放在指 ;定地址单元。,2. MOVC 查表指令,指令格式: MOVC A,A+DPTR 指令功能:把A+DPTR所指程序存储单元的内容送累加器A中,常用于查找存放在程序存储器中表格的代码数据。 应该注意,在使用本条指令前,需要把代码表格的16位地址(常使用符号地址)以立即数形式赋给DPTR,而把要查找代码表格的单元号数赋到累加器A中。例如:,DISP: MOV DPTR,#TAB ;将表的首地址送入DPTR MOV A,#00H ;把表中要查找的数据号 ;码送入A中 MOVC A, A+DPTR ;把表中的第0数据0FFH送入A MOV P1,A ;A再送到P1口 MOV A,#01H ;准备查表中的第二个数据 MOVC A,A+DPTR ;把表中的第1数据9CH送入A MOV P1,A ;送到P1口 RET TAB: DB 0FFH,9CH,7AH,76H,6EH,6EH,9EH,0FFH ;字符“2“的行码表(0-7共8个),议一议 :,通常把“MOVC A,A+DPTR” 指令叫查表指令。那么它的功能是什么,如何使用该条指令?它应该和哪一条伪指令使用相对应。,1)只亮某一行:,CLR P0.x ; x代表某位,2)亮某几行: 位操作法 CLR P0.x ; 亮几行写几句 字节操作法 MOV P0,#0abH ; ab表示16进数码,3)只亮某一列: 首先,MOV P0,#0; 保证行线为低电平 然后,MOV P3,#0; 先黑屏 最后,SETB P3.x ; 亮某列,4)亮某几列:类比亮某几行,5)让亮行动起来(行扫描法):,6)让亮列动起来(请练习自编程序) ,MAIN: MOV P0,#0FFH NOP MOV R0,#0FEH; MOV R1,#08H LOOP: MOV P0,R0 MOV A,R0 RL A MOV R0,A LCALL DELAY; DJNZ R1,LOOP SJMP MAIN DELAY: MOV R7,#0FFH LP: MOV R6,#200 DJNZ R6,$ DJNZ R7,LP RET END,MAIN: MOV P0,#0 MOV P3,#0 NOP MOV A,#01H; MOV R1,#08H MOV R2,#7 LOOP: MOV P3,A LCALL DELAY; RL A LCALL DELAY; DJNZ R1,LOOP LOOP1: RR A MOV P3,A LCALL DELAY DJNZ R2,LOOP1 SJMP MAIN DELAY: MOV R7,#0FFH LP: MOV R6,#20 LP1: MOV R5,#10 DJNZ R5,$ DJNZ R6,LP1 DJNZ R7,LP RET END,显示汉字一般最少需要1616或更高的分辨率。由于我们使用的是88的点阵模块,所以这里我们编写一个显示静止字符“2”的程序。其效果如图2-15所示。 首先我们可以先利用字模生成软件,生成字符“2”的行码表。,2. 显示静止字符,图2-15,ORG 0000H LJMP START ORG 0100H START: MOV DPTR,#TAB ;指向编码表首地址 MOV R3,#8 ;设置列扫描次数 MOV R0,#01H ;扫描第一列 MAIN: MOV P3,R0 ;计数初值送给A CLR A ;A清零 MOVC A,A+DPTR ;查表TAB,取显示码 MOV P0,A ;送行码显示 INC DPTR ;取码指针加1 LCALL DELAY ;调用延时程序,延时 MOV A,R0 ;为移位R0值,先传给A RL A ;左移一位,准备进行下一列扫描 MOV R0,A ;将移位后的值回送给R0 DJNZ R3,MAIN ;8列没扫描完,跳到MAIN LJMP START ;8列扫描完,返回START DELAY: MOV R7,#0FFH ;延时程序 LOOP: DJNZ R7,LOOP RET TAB: DB 0FFH,9CH,7AH,76H,6EH,6EH,9EH,0FFH ;行码数据表 END,显示心形,完整心形行码:0xFF,0xCF,0xB7,0xBB,0xDD,0xBB,0xB7,0xCF,第2列行码0xCF,第3列行码0xB8,第1列行码0xFF,第4列行码0xBB,第5列行码0xDD,第6列行码0xBB,第7列行码0xB8,第8列行码0xCF,高,低,3. 显示滚动字符,一个88的点阵模块只能显示一个字符,我们若要显示更多的字符,可以采取使字符左右滚动或上下滚动显示。这里我们编写一个向左滚动显示字符“23”的程序,其效果如图2-16所示。,图2-16 滚动的字符“23”,要使显示的内容滚动,我们可以使用一个变量,在查行码表时,不断改变每一列所对应的行码,产生滚动效果。比如,第一次显示时,第一列对应第一列的行码,第二次显示时,第一列对应第二列的行码。,使字幕移动的方法:,1)每个码依次作为起始码,码的个数为外层循环次数; 2)最内层循环,连续扫描8个码,完成一屏显示,每次扫描要适当延时; 3)每一屏重复显示x次(中层循环次数),x决定着扫描速度。,参考程序,参考程序:,ORG 0000H LJMP START START: MOV 30H,#00H ;从表中第一个行码取起 MAIN: MOV R6,#7FH ;循环次数,决定滚动快慢 GOON: LCALL DISP DJNZ R6,GOON MOV A,30H INC A ;第一列对应的表中的行 ;码数加一 MOV 30H,A CJNE A,#08H,MAIN ;第二个字符没显示完 ;继续滚动 MOV 30H,#00H ;重新从第一个字符开始 LJMP MAIN,DISP: MOV R2,30H ;循环计数 MOV R0,#08H ;每次取八个行码显示 MOV R3,#01H ;用于循环左移扫描 XIAN: MOV A,R2 ;计数初值送给A MOV DPTR,#TAB ;指向表地址 MOVC A,A+DPTR ;查表 MOV P0,A ;送字 MOV A,R3 MOV P2,A ;扫描列 ACALL DELAY ;调用延时程序,延时 RL A ;循环左移 MOV R3,A INC R2 DJNZ R0,XIAN MOV R0,#08H RET,DELAY: MOV R7,#0FFH ;延时程序 LOOP: DJNZ R7,LOOP RET TAB: DB 0FFH,9CH,7AH,76H DB 6EH,6EH,9EH,0FFH ;字符“2“的行码 DB 0FFH,0BDH,7EH,6EH DB 6EH,56H,0B9H,0FFH ;字符“3“的行码 E

温馨提示

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

评论

0/150

提交评论