接口课程设计点阵显示器显示系统设计.docx
《接口课程设计点阵显示器显示系统设计.docx》由会员分享,可在线阅读,更多相关《接口课程设计点阵显示器显示系统设计.docx(13页珍藏版)》请在冰豆网上搜索。
接口课程设计点阵显示器显示系统设计
武汉理工大学华夏学院
课程设计
课程名称微机原理及接口技术
题目点阵显示器显示系统设计
专业计算机科学与技术
班级1053班
学号********305
姓名张劲松
成绩__________________
指导教师李小艳
2008年6月23日
课程设计任务书
设计题目:
点阵显示器显示系统设计
设计目的:
1.巩固和加深课堂所学知识;
2.学习掌握一般的软硬件的设计方法和查阅、运用资料的能力;
3.掌握点阵显示器芯片的工作原理,进一步加深对8255工作方式的理解和应用。
设计任务:
(在规定的时间内完成下列任务)
1、任务:
设计一个点阵显示器
功能要求:
1)使用点阵显示器芯片显示汉字。
2)可以稳定显示汉字。
2、设计任务要完成实验方案论证,进行电子显示系统电路硬件设计,画出电路原理图、
元器件布线图及实验电路图;搭建实验电路,进行软件编程、调试、运行以及使用说
明文档的建立等一整套工作任务。
进行电子显示系统控制程序设计(采用汇编语言);
系统联调,提交一个满足要求的电子显示系统设计。
时间安排:
(部分时间,某些工作可以重叠进行)
6月23日
布置题目,确定任务、查找相关资料
6月24日~6月26日
功能分析,硬件设计,拟定实验电路,编写程序,调试程序、运行系统;
6月27日
答辩后撰写设计报告。
具体要求:
设计报告撰写格式要求(按提供的设计报告统一格式撰写)
具体内容如下:
①设计任务与要求
②总体方案与说明
③硬件原理图与说明
④实验电路图与说明
⑤软件主要模块流程图
⑥源程序清单与注释
⑦问题分析与解决方案(包括调式记录、调式报告,即在调式过程中遇到的主要问题、解决方法及改进设想);
⑧小结与体会
附录:
①源程序(必须有简单注释)
②使用说明
③参考资料
指导教师签名:
08年6月23日
教研室主任(或责任教师)签名:
年月日
1需求分析
1.1课程设计题目
点阵显示器显示系统设计
本课程设计采用了8255A在点阵显示器上显示一个汉字或数字。
1.2课程设计任务及要求
1.2.1设计目的
1.巩固和加深课堂所学知识;
2.学习掌握一般的软硬件的设计方法和查阅、运用资料的能力;
3.掌握点阵显示器芯片的工作原理,进一步加深对8255工作方式的理解
和应用。
1.2.2设计任务
任务:
设计一个点阵显示器
1)使用点阵显示器芯片显示汉字。
2)可以稳定显示编程所输入的字符。
3)如何间断显示不同的2个字符?
1.2.3功能要求
设计任务要完成实验方案论证,进行电子显示系统电路硬件设计,画出电路原理图、元器件布线图及实验电路图;搭建实验电路,进行软件编程、调试、运行以及使用说明文档的建立等一整套工作任务。
进行电子显示系统控制程序设计(采用汇编语言);系统联调,提交一个满足要求的电子显示系统设计。
1.3软硬件运行环境
1.实验设备TDN86/88教学实验系统,PC机一台,导线若干.
2.应用软件:
WMD86。
2概要设计
2.1点阵显示器显示系统设计思路
1.在8255上设置方式控制字,使用的是0工作方式,A口输出B口输出.
2.将8255芯片的A口和B口与LED显示块连接,显示1个字符,需8个字节显示字模对应于要显示的每一列发光二极管“亮灭”信息.
3.使用的是先扫描列后扫面行的扫面方法.
2.2设计基于的芯片原理
2.2.18255A芯片
1.8255A的端口地址:
在片选信号CS=0的条件下:
本实验我设计的端口地址为60H~63H,端口地址如表2.1所示:
表2.18255A端口地址
信号线
寄存器
地址
IOY3
A口
60H
B口
61H
C口
62H
控制寄存器
63H
2.8255A的工作方式
有3种工作方式,本实验我主要采用方式0:
基本型输入/输出方式。
A端口工作在方式0并作为输出口,B端口工作方式0并作为输出口.
3.8255A的控制字:
设置控制字为10000000B=80H.
4.8255A输入/输出接口电路
255A片内有A,B,C3个8位并行端口,A口和B口分别有1个8位的数据输出锁存/缓冲器和1个8位数据输入锁存器,C口有1个8位数据输出锁存/缓冲器和1个8位数据输入缓冲器,用于存放CPU与外部设备交换的数据。
5.8255A的引脚
8255A的引脚如图2.1所示,分为数据线、地址线、读/写控制线、输入/输出端口线和电源线。
图2.18255A的引脚图
D7~D0:
三态、双向数据线,与CPU数据总线连接,用来传送数据。
:
片选信号线,低电平有效时,芯片被选中。
A1,A0:
地址线,用来选择内部端口。
:
读出信号线,低电平有效时,允许数据读出。
:
写入信号线,低电平有效时,允许数据写入。
RESET:
复位信号线,高电平有效时,将所有内部寄存器(包括控制寄存器)清0。
PA7~PA0:
A口输入/输出信号线。
PB7~PB0:
B口输入/输出信号线。
PC7~PC0:
C口输入/输出信号线。
VCC:
+5V电源。
GND:
电源地线。
2.3点阵LED显示块原理
2.3.1LED显示块原理
点阵LED显示块由64个发光二极管排列成8行x8列的点阵(如图2.2所示,图中每个小圆圈就是一个发光二极管)。
在同一行中的8个发光二极管的所有正极连接在一起,由一个引脚引出,在同一列中的8个发光二极管的所有负极连接在一起,由一个引脚引出,这样共有8个行引出脚和8个列引出脚。
根据矩阵焊接面引脚与8255A芯片相连接,如要显示一个复杂图形或字符时,可以按逐列显示或按逐行显示,即一列一列(或一行一行)将要显示的点阵信息显示出来。
本设计采用逐列扫描的方式实现。
图2.28*8点阵LED等效电路
2.3.2点阵LED功能的说明
行扫描采用高电频有效,列扫描采用低电频有效,也就是说只有当某一行为高电频且某一列为低电频时,这一行和这一列对应的发光二极管才发光,点阵LED有16个引角,因为各引角的功能没有确定,所以要测试每个引角的功能.
图2.38*8点阵LED外观图
图2.48*8点阵LED引脚图
2.3.3点阵LED各引脚的测试方法
选取其中的任意8个引脚接到PA口,另外8个引脚接到PB口。
然后初始化8255A。
这时PA,PB都是输出方式,在PA,PB口随便输出一个控制字,这时点阵灯就会亮。
当断开某个引脚时,若某行或某列的灯熄灭,则说明这个引脚是控制该行或该列的。
设行控制引脚为A,B,C,D,E,F,G,H;列控制引脚为0,1,2,3,4,5,6,7.测试结果:
上面的8个引脚依次为7,6,G,0,E,5,3,H;下面8个引脚依次为D,B,1,2,A,4,C,F
图2.5引脚测试
将8255A的PA口接到点阵LED的行控制引脚上,分别为:
PA7-A,PA6-B,PA5-C,PA4-D,PA3-E,PA2-F,PA1-G,PA0-H.
将8255A的PB口接都点阵LED的列控制引脚上,分别为:
PB7-0,PB6-1,PB5-2,PB4-3,PB3-4,PB2-5,PB1-6,PB0-7
2.3.4点阵显示器显示系统原理图
8255芯片A口控制LED行,B口控制LED列,按列扫描,先写出B0列的8行对应的二进制编码,高电平为亮,用二进制“1”表示,低电平为灭,用“0”表示,举个例子,要显示“05”字,B0列的编码为:
11111110,换成十六进制即FEH,依次得出B1,B2,B3,B4,B5,B6,B7列的编码分别为:
FEH,82H,FEH,0H,9EH,91H,F2H,00H。
在进行行扫描时,通过堆栈指针加一依次显示8列亮点,最后显示想要显示的字模。
图3.1点阵显示器显示系统电路的原理图
2.3.5点阵LED功能的说明
行扫描采用高电频有效,列扫描采用低电频有效,也就是说只有当某一行为高电频且某一列为低电频时这一行和这一列对应的发光二极管才发光,点阵LED有16个引角,因为各引角的功能没有确定,所以要测试每个引角的功能。
2.3.6点阵LED各引角的测试方法
随便选8个引脚接到8255A的PA口,剩下的8个引脚接PB口,初始化8255A,使PA,PB口都为输出方式,在PA,PB口随便输出一个控制字.这时点阵LED上有灯亮,然后断开某个引脚,如果这时有某行或某列的灯熄灭,则说明这个引脚是控制某行或某列的,设行控制引脚为A,B,C,D,E,F,G,H;列控制引脚为0,1,2,3,4,5,6,7.测试结果:
上面的8个引脚依次为7,6,G,0,E,5,3,H;下面8个引脚依次为D,B,1,2,A,4,C,F。
3详细设计
3.1点阵显示器显示系统设计
3.1.1点阵显示器显示系统电路接线图
图3.1实验接线图
3.1.2点阵显示器显示系统程序流程图
图3.2点阵显示系统流程图
3.2算法实现的源程序
DATASEGMENT
BUFDBFEH,82H,FEH,0H,9EH,91H,F2H,00H
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
MAINPROCFAR
START:
PUSHDS;保护程序返回地址
MOVAX,0
PUSHAX
MOVAX,DATA;设置数据段寄存器
MOVDS,AX
MOVAL,80H;8255A初始化
MOVDX,63H;63H为8255A的控制端口
OUTDX,AL
A:
MOVAH,7FH
MOVCX,8
MOVSI,0
B:
MOVAL,BUF[SI]
MOVDX,60H;60H为端口B的端口地址
OUTDX,AL
MOVAL,AH;显示存放在AH中
MOVDX,61H
OUTDX,AL
INCSI;修改字模指针
CALLDELAY;延时
RORAH,1
LOOPB
JMPA
MAINENDP
DELAYPROC;延时子程序
PUSHBX
PUSHCX
MOVBX,1;延时时间常数
MOVCX,500
DELAY1:
LOOPDELAY1
DECBX
JNZDELAY1
POPCX;恢复现场
POPBX
RET
DELAYENDP
CODEENDS
ENDSTART
4系统调试与操作说明
4.1系统调试
分析实验原理图后,按实验线路图进行连接。
因为点阵LED显示器因体积太大以致于占据了整个接线插槽,故在连线时需从LED各个引脚对应的插槽处引出线后,与对应的8255芯片上的A,B口连接。
输入程序并检查无误,经汇编连接后装入系统。
运行程序,点阵LED显示器显示预先设置的字符编码。
调试中遇到的问题及解决方案:
在将所有的导线连接完毕,输入并运行程序后,LED上显示并非程序中所预设的字符。
先检查并调试程序,发现程序并无任何错误。
然后对照接线图对线路进行逐个检查,发现PA4-PA7的连线交叉接错。
经更正后,发现LED显示的字符和预设的字符不完全等同,其中的一列应显示的灯没有亮,再一次核对线路连接后发现线路仍无任何错误,转而检查程序,发现程序中所定义的数据段多了一个逗号。
去掉后,程序运行完全符合预设。
4.2操作说明
(1)按实验线路图连接,将LED显示块的行线列线用线引出来连接到8255A
的端口上.
(2)输入程序并检查无误,经汇编连接后装入系统。
(3)打开实验设备,点击"RUN"运行实验程序,点阵LED显示器上就会显示
相应的字。
5课程设计总结与体会
虽然本次课程设计中所需做的实验耗时两天,但是我也查了很多的相关书籍,对LED显示器有了一定的了解,点阵LED显示器结构原理与七段LED显示器类似,均由发光二极管组成,要想显示字符,将LED显示块的行线连接到8255A的端口上,要显示1个字符,需要向端口A输出的8个字节显示,共需8个字节显示字模对应于要显示的每一列发光二极管“亮灭”信息。
实验过程中的连线与平时实验线路的连接思路基本相同,需将LED显示器的16个引脚与8255芯片的PA,PB口对应连接,然后调试程序。
整个课程设计过程中值得注意的仍然是“细心”,若稍有马虎,需要对整个复杂的实验线路进行重新检查甚至拆线重新连接。
参考文献:
[1]宋杰等编著《微机原理与接口技术课程设计》北京,机械工业出版社,2005.4
[2]邹丽新等编著《微型计算机原理及应用实验指导》苏州,苏州大学出版社,2006.11
设计者:
日期:
2008年6月23日
设计过程中质疑(或答辩)记载:
指导教师评语:
签名:
年月日