《点阵电子屏的设计.doc》由会员分享,可在线阅读,更多相关《点阵电子屏的设计.doc(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目 录第一章 设计任务11.1设计目的与任务11.2设计课题11.3课题要求1第二章 系统总体设计22.1 硬件介绍22.1.1 8255介绍22.1.2 发光二极管介绍52.2 点阵LED显示原理52.2.1 LED显示块原理52.2.2 点阵显示器显示系统原理图82.3 电子屏的设计92.3.1 设计原理图92.3.2 设计流程图10总结和体会11参考文献12附录13第一章 设计任务1.1设计目的与任务通过本课程设计,加深理解所学理论知识,提高运用知识的能力,掌握一般电路的分析方法,强化独立分析与解决问题的能力。学习掌握一般的软硬件的设计方法和查阅、运用资料的能力;熟悉点阵显示系统的设计,
2、加深对8255工用方式的理解。1.2设计课题 课题名称:设计一个点阵电子显示屏1.3课题要求8X8点阵LED字符显示器能显示“电子设计”几个汉字第二章 系统总体设计2.1 硬件介绍2.1.1 8255介绍8255是Intel公司生产的可编程并行I/O接口芯片,可以与MCS-51系统单片机以及外设直接相连,广泛用作外部并行I/O扩展接口。(1)8255A的内部结构8255A是一个并行输入、输出器件,具有24个可编程设置的I/O口,包括3组8位的I/O为PA口、PB口、PC口,又可分为2组12位的I/O口:A组包括A口及C口高4位,B组包括B口及C组的低4位。8255A内部由A组控制器和B组控制器
3、,数据缓冲器及读写控制逻辑四部分电路组成。8255A结构框图和引脚图如图1所示:图1 8255A逻辑结构图和引脚图(2)8255引脚功能数据总线(8条):D0D7,用于传送CPU和8255A间的数据、命令和状态字。 控制总线(6条):RESET:复位线,高电平有效。 /CS:片选线,低电平有效。 /RD、/WR:/RD为读命令线,/WR为写命令线,皆为低电平有效。A0、A1:地址输入线:用于选中PA、PB、PC口和控制寄存器中哪一个工作。 并行I/O总线(24条):用于和外设相连,共分三组 (3)控制字:8255A有两个控制字:方式控制字和C口置位/复位控制字。用户通过程序可以把这两个控制字送
4、到8255A的控制寄存器,以设定8255A的工作方式和C口各位状态。方式控制字用于设定8255A三个端口工作于什么方式,是输入还是输出方式。如图:图2 8255方式控制字方式0:基本的输入输出方式,即无须联络就可以直接进行的 I/O方式。其中A、B、C口的高四位或低四位可分别设置成输入或输出。 方式1:选通I/O,此时接口和外围设备需联络信号进行协调,只有A口和B口可以工作在方式1,此时C口的某些线被规定为A口或B口与外围设备的联络信号,余下的线只有基本的I/O功能,即只工作在方式0. 方式2:双向I/O方式,只有A口可以工作在这种方式,该I/O线即可输入又可输出,此时C口有5条线被规定为A口
5、和外围设备的双向联络线,C口剩下的三条线可作为B口方式1的联络线,也可以和B口一起方式0的I/O线。C口置位/复位控制字可以使C口各位单独置位或复位,以实现某些控制功能,如图3所示。图3 C口置位/复位控制字2.1.2 发光二极管介绍发光二极管简称为LED。由镓(Ga)与砷(AS)、磷(P)的化合物制成的二极管,当电子与空穴复合时能辐射出可见光,因而可以用来制成发光二极管。在电路及仪器中作为指示灯,或者组成文字或数字显示。磷砷化镓二极管发红光,磷化镓二极管发绿光,碳化硅二极管发黄光。它是半导体二极管的一种,可以把电能转化成光能;常简写为LED。发光二极管与普通二极管一样是由一个PN结组成,也具
6、有单向导电性。当给发光二极管加上正向电压后,从P区注入到N区的空穴和由N区注入到P区的电子,在PN结附近数微米内分别与N区的电子和P区的空穴复合,产生自发辐射的荧光。不同的半导体材料中电子和空穴所处的能量状态不同。当电子和空穴复合时释放出的能量多少不同,释放出的能量越多,则发出的光的波长越短。常用的是发红光、绿光或黄光的二极管。发光二极管的核心部分是由P型半导体和N型半导体组成的晶片,在P型半导体和N型半导体之间有一个过渡层,称为PN结。在某些半导体材料的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。PN结加反向电压,少数载流子难以注入
7、,故不发光。这种利用注入式电致发光原理制作的二极管叫发光二极管,通称LED。 当它处于正向工作状态时(即两端加上正向电压),电流从LED阳极流向阴极时,半导体晶体就发出从紫外到红外不同颜色的光线,光的强弱与电流有关。2.2 点阵LED显示原理2.2.1 LED显示块原理点阵LED显示块由64个发光二极管排列成8行x 8列的点阵,如图4所示是常见的单色8X8LED点阵显示器的内部电路结构和外型规格。在同一行中的8个发光二极管的所有正极连接在一起,由一个引脚引出,在同一列中的8个发光二极管的所有负极连接在一起,由一个引脚引出,这样共有8个行引出脚和8个列引出脚。图4 8*8点阵LED外观图LED点
8、阵显示系统有静态和动态显示两种方式。静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲电压驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的列数据信号,反复循环以上操作,就可显示各种图形或文字信息。以88点阵模块为例,说明一下其使用方法及控制过程。图4中,红色水平线Y0、Y1Y7叫做行线,接内部发光二极管的阳极,每一行8个LED的阳极都接在本行的行线上。相邻两行线间绝缘。同样,蓝色竖直线X0、X1X7叫做列线,接内部每列8个LED的阴极,相邻两列线间绝缘。在这种形式的LED点阵模块中,若
9、在某行线上施加高电平(用“1”表示),在某列线上施加低电平(用“0”表示)。则行线和列线的交叉点处的LED就会有电流流过而发光。比如,Y7为1,X0为0,则右下角的LED点亮。再如Y0为1,X0到X7均为0,则最上面一行8个LED全点亮。现描述一下用动态扫描显示的方式,显示字符“B”的过程。其过程如图5图5 用动态扫描显示字符“B”的过程假设X,Y为两个8位宽的字节型数据,X的每位对应LED模块的8根列线X7-X0,同样Y的每位对应LED模块的8根行线Y7-Y0。在这个示例中,Y叫行扫描线,行扫描线在每个时刻只有一根线为“1”即有效行选通电平,X叫列数据线,其内容就是点阵化的字模数据的体现。下
10、面用伪代码描述动态显示的过程。(1)Y=0x01,X=0xFF,如图 2.2第一帧;(2)Y=0x02,X=0x87,如图 2.2第二帧;(3)Y=0x04,X=0xBB,如图 2.2第三帧;(4)Y=0x08,X=0xBB,如图 2.2第四帧;(5)Y=0x10,X=0x87,如图 2.2第五帧;(6)Y=0x20,X=0xBB,如图 2.2第六帧;(7)Y=0x40,X=0xBB,如图 2.2第七帧;(8)Y=0x80,X=0x87,如图 2.2第八帧;(9)跳到第(1)步循环。如果高速地进行(1)到(9)的循环,且两个步骤间的间隔时间小于1/24秒,由于视觉暂留,LED显示屏上将呈现出一
11、个完整的“B”字这就是动态扫描的原理。2.2.2 点阵显示器显示系统原理图8255A口控制LED行,B口控制LED列,按列扫描,先写出B0列的8行对应的二进制编码,高电平为亮,用二进制“1”表示,低电平为灭,用“0”表示,举个例子,要显示“05”字,B0列的编码为:,换成十六进制即FEH,依次得出B1,B2,B3,B4,B5,B6,B7列的编码分别为:FEH,82H,FEH,0H,9EH,91H,F2H,00H。在进行行扫描时,通过堆栈指针加一依次显示8列亮点,最后显示想要显示的字模。图6点阵显示器显示系统电路的原理图2.3 电子屏的设计2.3.1 设计原理图图6实验接线图2.3.2 设计流程
12、图8255初始化,以端口方式0输出通过8次移位,将8255输出端输出高电平,清除所有显示。显示自摸指针SL,字模字节数CX=8取一个字模BUF【SI】到8255端口A指针加1,取下一个字模到8255端口A按列扫描,显示所有字模对应的亮点,组成汉字调用延时子程序DELAY,稳定显示汉字循环执行取字模输出字模子程序8B输出是否完成?NY开始图7 设计流程图总结和体会为期一个星期的课程设计很快结束,在这一星期的学习、查资料、设计、搭接实物电路过程中我感触颇深。使我对抽象的理论有了具体的认识,更加牢靠的掌握了所学的理论知识。通过这次课程设计我加深了对8255的认识,加深了对电子显示屏的工作原理的认识。
13、对LED显示器有了一定的了解,点阵LED显示器结构原理与七段LED显示器类似,均由发光二极管组成,要想显示字符,将LED显示块的行线连接到8255A的端口上,要显示1个字符,需要向端口A输出的8个字节显示,共需8个字节显示字模对应于要显示的每一列发光二极管“亮灭”信息。在本次电子显示屏设计的课程设计中,由于之前知识掌握的不够牢固,而且接触了很多新的知识,所以在课程设计的过程中遇到了不少的问题。导致系统的功能和健壮性不是很完善,还好所要求的基本功能都已实现。两周的课程设计结束了,在这过程中,有失也有得,有成功的喜悦,也有因知识掌握不全面而导致苦难重重所付出的代价。由于自身没有掌握好所学的知识,在
14、设计过程中得到了来XXXX等人的讲解和帮助,同时也感谢XX老师对我的悉心帮助。参考文献1 康华光.电子技术基础 2 王冠华.Multisim8电路设计及应用.国防工业出版社,20063 4 附录;*根据查看端口资源修改下列符号值IOY0 EQU 0a800H ;片选IOY0对应的端口始地址;*MY8259_ICW1 EQU IOY0+00H ;实验系统中8255的ICW1端口地址MY8259_ICW2 EQU IOY0+04H ;实验系统中8255的ICW2端口地址MY8259_ICW3 EQU IOY0+04H ;实验系统中8255的ICW3端口地址MY8259_ICW4 EQU IOY0+
15、04H ;实验系统中8255的ICW4端口地址MY8259_OCW1 EQU IOY0+04H ;实验系统中8255的OCW1端口地址MY8259_OCW2 EQU IOY0+00H ;实验系统中8255的OCW2端口地址MY8259_OCW3 EQU IOY0+00H ;实验系统中8255的OCW3端口地址STACK1 SEGMENT STACK DW 256 DUP(?)STACK1 ENDSDATA SEGMENT USE16 ADDR DW ?DATA ENDSCODE SEGMENT USE16 ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV
16、 DS,AX MOV DX,MY8259_ICW1 ;初始化实验系统中8259的ICW1 MOV AL,13H ;边沿触发、单片8259、需要ICW4 OUT DX,AL MOV DX,MY8259_ICW2 ;初始化实验系统中8259的ICW2 MOV AL,08H OUT DX,AL MOV DX,MY8259_ICW4 ;初始化实验系统中8259的ICW4 MOV AL,01H ;非自动结束EOI OUT DX,AL MOV DX,MY8259_OCW1 ;初始化实验系统中8259的OCW1 MOV AL,0FCH ;打开IR0和IR1的屏蔽位 OUT DX,AL QUERY: MOV
17、AH,1 ;判断是否有按键按下 INT 16H JNZ QUIT ;有按键则退出 MOV DX,MY8259_OCW3 ;向8259的OCW3发送查询命令 MOV AL,0CH OUT DX,AL IN AL,DX ;读出查询字 TEST AL,80H ;判断中断是否已响应 JZ QUERY ;没有响应则继续查询 AND AL,03H CMP AL,00H JE IR0ISR ;若为IR0请求,跳到IR0处理程序 JNE IR1ISR ;若为IR1请求,跳到IR1处理程序 JMP QUERY IR0ISR:MOV ADDR,OFFSET HZDOT ;取汉字数组始地址 MOV SI,ADDR
18、A1:MOV CX,20H ;控制1屏显示时间 LOOP2:CALL DISPHZ SUB SI,32 LOOP LOOP2 KEY: MOV AH,1 ;判断是否有按键按下? INT 16H JNZ QUIT ADD SI,2 MOV AX,SI SUB AX,ADDR CMP AX,352 ;比较文字是否显示完毕 JNB IR0ISR JMP A1 QUIT: MOV EAX,0 ;灭灯 MOV DX,IOY0 OUT DX,EAX MOV AX,4C00H ;结束程序退出 INT 21HDISPHZ PROC NEAR ;显示1屏汉字子程序 PUSH CX MOV CX,16 MOV B
19、X,0FFFEHLOOP1: MOV AL,BYTE PTRSI MOV AH,BYTE PTRSI+1 ROL EAX,16 MOV AX,BX ADD SI,2 ROL BX,1 NOT EAX MOV DX,IOY0 OUT DX,EAX CALL DALLY LOOP LOOP1 POP CX RETDISPHZ ENDPIR1ISR:MOV AL,31H ;IR1处理,显示字符1 MOV AH,0EH INT 10H MOV AL,20H INT 10HEOI: MOV DX,MY8259_OCW2 ;向实验系统中8259发送中断结束命令 MOV AL,20H OUT DX,AL JMP QUERY DALLY PROC NEAR ;软件延时子程序 MOV AX,0FFFFHD1: DEC AX JNZ D1 RETDALLY ENDPCODE ENDS END START
限制150内