计算机控制课程设计点阵LED显示系统.doc

上传人:laozhun 文档编号:2882229 上传时间:2023-03-01 格式:DOC 页数:24 大小:299KB
返回 下载 相关 举报
计算机控制课程设计点阵LED显示系统.doc_第1页
第1页 / 共24页
计算机控制课程设计点阵LED显示系统.doc_第2页
第2页 / 共24页
计算机控制课程设计点阵LED显示系统.doc_第3页
第3页 / 共24页
计算机控制课程设计点阵LED显示系统.doc_第4页
第4页 / 共24页
计算机控制课程设计点阵LED显示系统.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《计算机控制课程设计点阵LED显示系统.doc》由会员分享,可在线阅读,更多相关《计算机控制课程设计点阵LED显示系统.doc(24页珍藏版)》请在三一办公上搜索。

1、计算机控制技术课程设计报告设计题目:点阵LED显示系统班 级: 学 号: 姓 名: 时 间: 1 系统概述LED显示屏(LED panel):又叫电子显示屏,是由LED点阵组成,通过红色或绿色灯珠的亮灭来显示文字、图片、动画、视频,内容可以随时更换,各部分组件都是模块化结构的显示器件。通常由显示模块、控制系统及电源系统组成。显示模块由LED灯组成的点阵构成,负责发光显示;控制系统通过控制相应区域的亮灭,可以让屏幕显示文字、图片、视频等内容,电源系统负责将输入电压电流转为显示屏需要的电压电流。LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视

2、墙、液晶显示屏无法比拟的优点。LED具有亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定等特点,因此,LED受到广泛重视而得到迅速发展。并且,LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。LED显示屏性能超群: 发光亮度强 ,在可视距离内阳光直射屏幕表面时,显示内容清晰可见. 超级灰度控制 ,具有1024-4096级灰度控制,显示颜色16.7M以上,色彩清晰逼真,立体感强. 静态扫描技术 :采用静态锁存扫描方式,大功率驱动,充分保证发光亮度。自动亮度调节 具有自动亮度调节功能,可在不同亮度环境下获得最佳播放效果

3、。全面采用进口大规模集成电路,可靠性大大提高,便于调试维护。全天候工作 完全适应户外各种恶劣性环境,防腐,防水,防潮,防雷,抗震整体性能强、性价比高、显示性能好,像素筒可采用P10mm、P16mm等多种规格。先进的数字化视频处理,技术分布式扫描,模块化设计/恒流静态驱动,亮度自动调节,超高亮纯色象素 ,影像画面清晰、无抖动和重影,杜绝失真 ,视频、动画、图表、文字、图片等各种信息显示、联网显示、远程控制。LED的主要应用领域有:(1)信号制式应用:信号照明是LED单色光应用比较广泛也是比较早的一个领域。(2)显示应用:指示牌、广告牌、大屏幕显示等,显示屏幕可分为单色和彩色。(3)照明应用:便携

4、灯具,汽车用灯,特殊照明。由于LED尺寸小,便于动态的亮度和颜色控制,因此比较适合于建筑装饰照明。背光照明:普通电子设备功能显示背景源、笔记本电脑背光源等。1.1 设计环境实验系统本次设计采用了西安唐都科教仪器公司的TD-PID+实验系统。 1.2 设计要求设计点阵LED显示系统,要求系统实现以下功能:1. “开幕式”:从中间向两边逐次熄灭8个灯; 2. “倒计时”:顺序显示9、8、7、1、0; 3. “闭幕式”:从两边向中间逐次点亮8个灯;4 自行设计两种显示效果;5 通过键盘选择,实现多种效果的组合。1.3 总体设计利用并行接口芯片8255PA口、PB口控制8x8点阵LED的行和列,PC口

5、的低四位、高四位分别控制4x4键盘行和列。按1键开始“开幕式”表演:从中间向两边逐次熄灭8个灯;按下2键开始“闭幕式”表演:从两边向中间逐次点亮8个灯;按下3键开始“风车”表演:风车转动;按下4键开始“烟花”表演:烟花开放按下5键启动“倒计时”功能:顺序显示9、8、7、1、0;按下6键:结束。同时实现按键转跳功能,也就是在表演过程中,按下其它键,立即转跳显示其它表演。程序中需要预先填入要输出数字90、烟花、风车图的字模,由于需要改变方向输出,不同输出所需的字模也不一样,故需要多种字模。LED点阵显示图形的原理是:每次只输出一列,8列都输出之后才将自摸移动一列,重新按列输出:每次变化的时间非常短

6、,肉眼无法识别出来,因而以为显示的是整个图形。控制显示速度的变化实际上就是控制每列输出后延迟的时间。2 硬件设计2.1 硬件构成本次设计点阵LED显示需要的硬件模块有8x8点阵LED、4x4键盘,可编程并行接口芯片8255等,下面简要介绍相关芯片:8x8点阵LED单元该单元提供一个8X8的点阵LED显示模块,点阵LED的行列控制已经连接好。行控制为R1R8,列控制为L1L8。其线路连接如图1所示。 图1 点阵LED显示单元8255单元该单元提供一片开放的并口控制器8255,用于学习并行接口8255的编程方法。其线路连接如图2所示 图2 8255单元4x4键盘单元该单元提供4X4的小键盘阵列及4

7、位七段数码管,电路连接为扫描电路形式。其线路连接如图3所示。图3 键盘及数码管显示单元2.2 硬件连线图TD-PID+实验板上连接图如图4所示: L1 L8 点阵LED单元 R1 R7 X1 X4 键盘及数码 Y1 显示单元 Y4 D0 PA0 D7 PA7 PB0 8255 单元 PB7 A1 A0 WR PC0 RD CS PC3 PC4 PC7 XD0 XD7 系 统 总 线 XA3 XA2 XIOW XIOR IOY0 图4 TD-PID+实验板上连线图 将系统总线和8255的数据总线相连,利用并行接口芯片8255PA口、PB口作为输出口,分别于点阵LED的列控制L1L8、行控制R1R

8、8相连,控制 LED的行和列,PC口的低四位、高四位分别控制4x4键盘行X1X4和列Y1Y4。 其它8255的片选端CS、A0、A1分别接系统总线的IOY0、XA2、XA3。3 系统软件设计3.1 系统软件总述本次设计采用的语言为汇编语言,大量使用了模块化程序,所有功能都能通过调子程序实现。点阵LED显示系统设计的软件部分由主程序、烟火表演1子程序、烟火表演2子程序、开幕式子程序、闭幕式子程序、数字倒计时程序子程序、显示子程序、以及延时子程序1和2组成。在平时编程中,用C语言编写程序有利于实现较复杂的算法,但是汇编语言程序则具有较高的效率且容易精细计算程序运行的时间。不论是什么语言,始终是要被

9、电脑转换成C语言进行执行的。所以,在此次设计中,编程采用的是汇编语言,整个程序层次有序,结构清晰,易于维护,完整程序见程序代码。3.2 I/O口分配8255I/O口分配如表1所示表1I/O口IOY0MY8255_AMY8255_BMY8255_CMY8255_MODE分配9800HIOY0+00H*4IOY0+01H*4IOY0+02H*4IOY0+03H*4 3.3 软件流程图系统流程图如图5所示:图5 系统流程图3.4 程序代码IOY0EQU9800HMY8255_AEQU IOY0+00H*4MY8255_BEQU IOY0+01H*4MY8255_CEQU IOY0+02H*4MY82

10、55_MODEEQU IOY0+03H*4STACK1SEGMENTSTACKDW256DUP(?)STACK1ENDSDATA1SEGMENTINR DB 0 ;存放列键值单元CS1CDW?IP1CDW?CNT DB 0 ;计数单元NUM DB 0FIRE1 DB 0C1H,63H,36H,1CH,038H,6CH,0C6H,83H;风车1 DB 10H,18H,18H,07FH,0FEH,18H,18H,08H DB 0C1H,63H,36H,1CH,038H,6CH,0C6H,83H DB 10H,18H,18H,07FH,0FEH,18H,18H,08H MOVEYANHUA DB 8

11、1H,00H,00H,00H,00H,00H,00H,81H ;烟火2 DB 81H,42H,00H,00H,00H,00H,42H,81H DB 00H,00H,24H,00H,00H,24H,00H,00H DB 00H,00H,00H,18H,18H,00H,00H,00H DB 00H,00H,00H,18H,18H,00H,00H,00H DB 00H,00H,24H,00H,00H,24H,00H,00H DB 81H,42H,00H,00H,00H,00H,42H,81H DB 81H,00H,00H,00H,00H,00H,00H,81H OPEN1 DB 0FFH,0FFH,

12、0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;开幕式字段OPEN2 DB 0FFH,0FFH,0FFH,0H,0H,0FFH,0FFH,0FFHOPEN3 DB 0FFH,0FFH,0H,0H,0H,0H,0FFH,0FFHOPEN4 DB 0FFH,0H,0H,0H,0H,0H,0H,0FFHOPEN5 DB 0H,0H,0H,0H,0H,0H,0H,0HCLOSE1 DB 0H,0H,0H,0H,0H,0H,0H,0H ;闭幕式字段CLOSE2 DB 0FFH,0H,0H,0H,0H,0H,0H,0FFHCLOSE3 DB 0FFH,0FFH,0H,0H,0H,0H,0FFH

13、,0FFHCLOSE4 DB 0FFH,0FFH,0FFH,0H,0H,0FFH,0FFH,0FFHCLOSE5 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHNUMTABLE DB 00H, 00H, 4FH, 49H, 49H, 49H, 7FH, 00H;9,0 DB 00H, 00H, 4FH, 49H, 49H, 49H, 7FH, 00H;9,0 倒计时字段 DB 00H, 00H, 7FH, 49H, 49H, 49H, 7FH, 00H;8,1 DB 00H, 00H, 01H, 01H, 79H, 05H, 03H, 00H;7,2 DB

14、 00H, 00H, 7FH, 49H, 49H, 49H, 79H, 00H;6,3 DB 00H, 00H, 4FH, 49H, 49H, 49H, 79H, 00H;5,4 DB 00H, 00H, 1FH, 10H, 10H, 10H, 7FH, 00H;4,5 DB 00H, 00H, 49H, 49H, 49H, 49H, 7FH, 00H;3,6 DB 00H, 00H, 79H, 49H, 49H, 49H, 4FH, 00H;2,7 DB 00H, 00H, 00H, 00H, 42H, 7FH, 40H, 00H;1,8 DB 00H, 00H, 7FH, 41H, 41H

15、, 41H, 7FH, 00H;0,9DATA1ENDSCODESEGMENT ASSUMECS:CODE,DS:DATA1,SS:STACK1START:MOV AX,DATA1 MOV DS,AX PUSH DS MOV DX,MY8255_MODE ;初始化8255,设置A,B和C低四位为输出,C口高四位为输入 MOV AL,88H OUT DX,AL CALL SCAN ;扫描有无按键按下,有则跳出,无则继续 ;/风车/YANHUO1 PROC NEAR MOV BX,3H ;风车表演循环次数S1: MOV CNT,0 LEA DI,FIRE1 MOV CX,4Y1:MOV SI,DI

16、 CALL DISP CALL SCAN ;扫描有无按键按下,有则跳出,无则继续INC CNTCMP CNT,8HJE Y2 JMP Y1 Y2: ADD DI,8 LOOP Y1DEC BXMOV CX,BXLOOP S1MOVDX,MY8255_B;清8255B口MOVAL,0HOUTDX,ALMOV INR,0HRETYANHUO1 ENDP;/烟火/ YANHUO2 PROC NEAR MOV BX,3H ;循环次数S2: MOV CNT,0 LEA DI,MOVEYANHUA MOV CX,8M1:MOV SI,DI CALL DISP CALL SCAN ;扫描有无按键按下,有则跳

17、出,无则继续INC CNTCMP CNT,8HJE M2 JMP M1M2:ADD DI,8 LOOP M1DEC BXMOV CX,BXLOOP S2MOVDX,MY8255_B;清8255B口MOVAL,0HOUTDX,ALMOV INR,0HRETYANHUO2 ENDP;/开幕式/OPENING PROC NEAR MOV CX,6H T1: LEA SI,OPEN1CALL DISPLOOP T1MOV CX,6H T2: LEA SI,OPEN2CALL DISPLOOP T2MOV CX,6H T3: LEA SI,OPEN3CALL DISPLOOP T3MOV CX,6H T

18、4: LEA SI,OPEN4CALL DISPLOOP T4MOV CX,6H T5: LEA SI,OPEN5CALL DISP CALL SCAN ;扫描有无按键按下,有则跳出,无则继续LOOP T5MOVDX,MY8255_B;清8255B口MOVAL,0HOUTDX,ALMOV INR,0RETOPENING ENDP;/闭幕式/CLOSING PROC NEARMOV CX,6H TT1: LEA SI,CLOSE1CALL DISPLOOP TT1MOV CX,6H TT2: LEA SI,CLOSE2CALL DISPLOOP TT2MOV CX,6H TT3: LEA SI,

19、CLOSE3CALL DISPLOOP TT3MOV CX,6H TT4: LEA SI,CLOSE4CALL DISPLOOP TT4MOV CX,6H TT5: LEA SI,CLOSE5CALL DISP CALL SCAN ;扫描有无按键按下,有则跳出,无则继续LOOP TT5MOVDX,MY8255_B;清8255B口MOVAL,0HOUTDX,ALMOV INR,0RETCLOSING ENDP;/数字倒计时程序/TIME PROC NEARMOV CNT,0 LEA DI,NUMTABLEMOV CX,11W1:MOV SI,DI CALL DISP CALL SCAN ;扫描有

20、无按键按下,有则跳出,无则继续INC CNTCMP CNT,8HJE W2 JMP W1W2:ADD DI,8LOOP W1MOVDX,MY8255_B;清8255B口MOVAL,0HOUTDX,ALMOV INR,0RETTIME ENDP;/键盘扫描子程序/ SCAN PROC NEAR XOR BX,BX ;列键值BL=0,行键值BH=0 MOV AL,0H ;C口低四位输出全为0 MOV DX,MY8255_C OUT DX,AL MOV DX,MY8255_C ;读入C口高四位 IN AL,DX AND AL,0F0H CMP AL,0F0H JE L ;C口高四位输入全为1,该列无

21、键按下转L CALL DELAY ;C口高四位输入非全1,该列有键按下调延时 MOV DX,MY8255_C IN AL,DX AND AL,0F0H CMP AL,0F0H JE L MOV CL,0EH ;该列有键按下,从第一行开始查找R1: MOV AL,CL ;使某列为0 MOV DX,MY8255_C OUT DX,AL MOV DX,MY8255_C IN AL,DX AND AL,0F0H CMP AL,0F0H JNE R2 ;该列有键按下 MOV AL,BL ;该列无键按下,列键值加4 ADD AL,4 DAA MOV BL,AL ;BL列键值 SHL CL,1 ;准备查找下

22、一列 CMP CL,0 ;所有列未查找完转K1 JNE R1R2: INC BH ;该列有键按下,行值加1 SHL AL,1 ;行键移入CF JC R2 ;CF=1,该行无键按下转K2 MOV AL,BL ;CF=0,该行有键按下 ADD AL,BH ;键值=行键值+列键值 DAA LEA DI,INR ;存键值 MOV DI,AL JMP COMP ;转键处理程序L: RET ;无键按下,跳出查询COMP:MOV AL,INR CMP AL,1JZ DES1CMP AL,2JZ DES2CMP AL,3JZ DES3CMP AL,4JZ DES4CMP AL,5JZ DES5 CMP AL,

23、6 JZ DES6 JMP L DES1:CALL OPENING ;开幕式 JMP SCANDES2:CALL CLOSING ;闭幕式 JMP SCANDES3: CALL YANHUO1 ;风车 JMP SCAN DES4: CALL YANHUO2 ;烟花 JMP SCAN DES5: CALL TIME ;数字倒计时JMP SCANDES6: MOVDX,MY8255_B ;清8255B口,停止MOVAL,0HOUTDX,ALMOV AX,4C00H INT 21HSCAN ENDP;/显示子程序/DISP PROC NEAR PUSH AX PUSH BX PUSH CX PUSH

24、 DXMOV DX,MY8255_BMOV AL,0HOUT DX,AL MOV BL,01HMOV CX,8HLOOP1:MOV DX,MY8255_BMOV AL,SI OUT DX,ALMOV AL,BLNOT ALMOV DX,MY8255_AOUT DX,ALADD BL,BLCALL DALLYINC SILOOP LOOP1POP AX POP BX POP CX POP DX RETDISP ENDP;/延时子程序1供显示子程序使用/DALLY PROC NEARPUSH AXPUSH CXMOV CX,03FHD1:MOV AX,2FFFHD2:DEC AX JNZ D2 L

25、OOP D1 POP CX POP AX RETDALLY ENDP;/延时子程序2供去抖用/DELAY PROC NEAR PUSH CX PUSH AX MOV CH,20DL1:MOV CL,200DL2:DEC CL JNZ DL2 DEC CH JNZ DL1 POP AX POP CX RETDELAY ENDP;/结束/CODE ENDS END START3.5 程序结果部分显示 程序显示结果如下图所示 图6 开幕式(闭幕式) 图7 烟花闪烁4 结束语本报告主要介绍如何实现8x8点阵LED显示,硬件部分使用西安唐都科教仪器公司的TD-PID+实验系统,实验箱中的可编程并行接口芯

26、片8255,8x8点阵LED,4x4键盘等连接组成点阵LED显示控制系统的基本电路。软件部分采用了汇编语言编写程序代码,通过判断、跳转、循环等基本技术实现LED显示“开幕式”“闭幕式”的动态显示,倒计时0-9、风车和烟花等简单图形,并用4x4键盘控制“开幕式”“闭幕式”“风车”“烟花绽放”的控制时序。在做实验过程中,LED点阵实现的硬件连接并不难,连线也很简单,只要熟悉芯片8255的引脚功能,并且注意一下4x4键盘的输出输入端口的连接就行。在软件部分,程序是比较长比较烦,但是通过运用模板化思想,各个子程序逐个设计,然后通过嵌套连接,其实还是比较简单的,只要花些时间耐心看就很快能看懂。为了减少程

27、序代码,我们共用了一个延时程序,为了兼顾各个延时时间,开幕式的演示相对较短,倒计时也没有严格按照10秒倒计时的标准显示。此外,对于4*4键扫描、编码及功能及地址转移程序的编写是,我们主要参考了所学课本中16*16键盘相关程序。虽然仅仅只有一天时间的课程设计,但是在设计过程中,通过将在课堂上所学的专业理论知识与实际开发、动手实践有机统一结合起来,大大加深了对LED点阵显示的原理和方法的理解和认识,提高了专业技能。在设计过程中,查阅了大量的资料,通过对理论的实践与应用,对计算机控制方面的知识有了更深入的理解和认识,扩展了知识面,开拓了视野,从一开始看到题目,选择课题,到课题分析、理论设计、线路图连接,全面了解和掌握了课题开发的基本方法和步骤。同时,在实验室外,在自己电脑上也使用了Masm for Windows 集成实验环境 2011专业化软件模拟实验环境进行模拟调试等操作,通过对这些软件的应用,方便了在无开发板的基础上,能够正常的进行工作,扩展了对办公软件的应用。这次课设对LED点阵显示和4*4键盘的原理与应用有了更加深入的认识;编写较为复杂代码时,慢慢树立了层次化和模块化思想,总之,一句话:收获良多,获益匪浅。 参考文献:1杨鹏计算机控制系统机械工业出版社 2TD-PID+实验系统用户手册

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号