点阵字符显示-课设报告剖析_第1页
点阵字符显示-课设报告剖析_第2页
点阵字符显示-课设报告剖析_第3页
点阵字符显示-课设报告剖析_第4页
点阵字符显示-课设报告剖析_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、微机原理与接口技术课程设计一一点阵字符显示微机原理与接口技术课程设计报告课题名称:点阵字符显示学 院:专 业:班 级:组 员:指导教师:日 期:2015年12月19日目录一、概述 1二、设计目的 1三、设计原理 1四、电路设计 21. 硬件设计 22. 软件设计 3五、运行结果 4六、总结和体会 5七、程序代码 6微机原理与接口技术课程设计一一点阵字符显示一、概述点阵LED显示器是将许多LED类似矩阵一样排列在一起组成的显示器件,双色点阵 LED是在每一个点阵的位置上有红绿或红黄或红白两种不同颜色的发光二极管。 当微机 输出的控制信号使得点阵中有些 LED发光,有些不发光,即可显示出特定的信息

2、,包括 汉字、图形等。车站广场由微机控制的点阵 LED大屏幕广告宣传牌随处可见。二、设计目的1、了解点阵LED显示器的基本原理。2、掌握PC机控制点阵LED显示程序的设计方法。3、用开关控制点阵字符的显示。三、设计原理本次实验所使用的实验箱是红色和绿色双色点阵,上面有一个共阳极8X 8点阵的红绿两色LED显示器,其点阵结构如图所示。该点阵对外引出24条线,其中8条行线, 8条红色列线,8条绿色列线。若使某一种颜色、某一个 LED发光,只要将与其相连的 行线加高电平,列线加低电平即可。例如欲显示汉字“年”,采用逐列循环发光。首先由“年”的点阵轮廓,确定点阵 代码(如图所示)根据“年”的点阵代码,

3、确定逐列循环发光的顺序如下: 行代码输出44H;红色列代码输01H;第一列2个红色LED发光。 行代码输出54H;红色列代码输02H;第二列3个红色LED发光。 行代码输出54H;红色列代码输04H;第三列3个红色LED发光。 行代码输出7FH;红色列代码输08H;第四列7个红色LED发光。 行代码输出54H;红色列代码输10H;第五列3个红色LED发光。 行代码输出DCH 红色列代码输20H;第六列5个红色LED发光。 行代码输出44H;红色列代码输40H;第七列2个红色LED发光。 行代码输出24H;红色列代码输80H;第八列2个红色LED发光。在步骤之间可插入几 ms的延时,重复进行即可

4、在 LED上稳定的显示出红 色“年”字。若想显示绿色“年”,只需把红色列码改为绿色列码即可。本次实验使用8255芯片的三个接口连接点阵与开关,以实现开关控制点阵的显示 与切换。8255芯片的A 口用作输入,B 口和C 口用作输出。HO於ph-tMO行1kMCI)Z.S4 J )J fL 1-B trB 3k.I ITS-zz4 f )TL 14 ?i诚L.C b 1 TC113A严A行2,EaX:uE:+*T行 3丄k+r4+zi7+4r4+z;+4+4rL4a+A4+4r+4+4r4r-A+4r+rJ4+(.4列1列2列 4列,JlliO列T列&四、电路设计1. 硬件设计 实验箱上的点阵LE

5、D及驱动电路已封装好,行代码、红色列代码、黄色列代码各用一片74LS273锁存。行代码输出的数据通过行驱动器 7407加至点阵的8条行线上, 红和黄列代码的输出数据通过驱动器DS75452反相后分别加至红和黄的列线上。行锁存器片选信号为“行选”,红色列锁存器片选信号为“红选”,绿色列锁存器片选信号为“绿选”。 接线方法:8255片选信号 CS接丫1(288H) 8255 A 口接开关,通过开关控制LED 点阵字符的显示,切换开关则变换字符;8255 B 口接点阵的行片选信号,8255 C 口接点 阵的绿列片选信号。电路原理图如下图。2. 软件设计 将要显示的字体转成8*8点阵代码如图,若想显示

6、字符则其右起第一列由上到下的十六进制代码为 00H(00000000, 黑色为1,白色为0),第二列为3CH(00111100)由此类推,可得字符0的十六进制代 码集为00h,3ch,42h,81h,81h,42h,3ch,00h。同理,可得字符 9的十六进制代码集00h,0ffh,89h,89h,89h,89h,0f9h,00h。I 1 I I I 主要程序代码a.显示每行中的第几位LED灯亮:;显示一个位,用bh选择列 用bl保存显示字符的段码disbit:;位选mov al,bhmov dx,C8255out dx,al;从C 口输出bh,即亮的位置擞值mov al,blmov dx,B

7、8255out dx,alretb.判断开关的电平高低,控制字符的显示:;从8255的A 口获得开关编码器的数值,保存到 data段的NUM中getChar:mov dx,A8255 in al,dx and al,0fhmov ds:128,alret五、运行结果控制开关的K8控制自动显示与手动显示,处于自动显示时,点阵屏自动循环显示从第一个字符到第十六个字符;当处于手动显示时,拨动控制开关K3-K0,点阵屏以绿色循环显示对应的字符(程序中预设了16个字符的代码,切换开关则变换字符)实验中,由于仪器问题,点阵的扫描速度很慢,可以明显看出点阵自右向左按列扫 描,显示的字符难以辨认六、总结和体会

8、本次课程设计,我们小组是三个人,所以本次设计也是我们小组通力合作的一次 体现。本次课程设计的电路连线并不复杂,点阵的扫描和字符的十六进制代码如何表示 也并不难理解,难点在于使用哪一个芯片及其使用方法,以及程序的编写与理解。在 理解方面,就展现出了小组合作的优势。同时,本次课程设计也考验了自信与排错能 力:在实验代码与电路连线皆未出错的情况下,点阵的扫描总是很慢,可以明显的看 出是从右向左一列一列地扫描,偶尔会出现正常的扫描速度(能够看到完整的字符), 开始我们以为是延时程序的缘故,后来才发现是实验仪器本身的问题。在此过程中, 我们又加深了对于程序的理解。通过本次课程设计,我们充分体会到了理论与

9、实践相结合的重要性,平常的动手 实验就是为课程设计打的基础。通过本次设计,我们学会了坚持、耐心和努力,学会了 小组之间的合作探究,同时,也体会到了基础(无论是理论还是动手实践)的重要意义。只有 夯实基础,才能进行进一步的动手实践,才能进行深入的学习,将自己平时所学应用于实际。七、程序代码A8255equ 288h;8255A口B8255equ 289h;8255B口C8255equ 28ah;8255 C口K8255equ 28bh;8255 控制口data segme ntBUFF DB 10H,10H,10H,10H,10H,10H,10H,00H 一DB 02H,42H,42H,42H,

10、42H,42H,02H,00H;二DB 82H,92H,92H,92H,92H,92H,82H,00H;三DB 22H,24H,38H,0F0H,2CH,26H,22H,00H;大DB 02H,04H,18H,0F0H,0CH,06H,02H,00H;人DB 82H,92H,92H,0FEH,92H,92H,82H,00H;王DB 00H,3CH,24H,7FH,24H,3CH,00H,00H冲DB 0FCH,84H,84H,84H,84H,0FCH,00H,00H;口DB 22H,22H,22H,0FEH,22H,22H,22H,00H; 土DB 20H,60H,0C0H,0BEH,40H,

11、20H,30H,00H;个DB 44H,58H,60H,0FEH,58H,4CH,44H,00H;木DB 00H,0FCH,0A4H,0A4H,0A4H,0FCH,00H,00H;日DB 00H,02H,22H,22H,22H,0FEH,02H,02H;上DB 20H,20H,20H,0FEH,20H,20H,20H,00H;十DB 00H,03H,01H,7DH,55H,0FFH,54H,7CH;电DB 0FEH,92H,92H,0FEH,92H,92H,0FEH,00H田NUM DB 00Hdata ends code segme ntassume cs:code,ds:data sta比

12、mov ax,datamov ds,ax;初始化8255 A输入,B 口输出,C 口输出mov dx,K8255mov al,90hout dx,alA:call getCharcall displayjmp Amov ax,4c00hint 21h;点阵进行一次扫描显示(从右到左) display:;选用BX保存要显示的字符信息,BH保存数码管位选信息,BL保存输出字符的LED码mov bx,offset BUFFmov di,bxmov al,ds:128mov ah,00hmov dl,08hmul dladd di,ax9微机原理与接口技术课程设计一一点阵字符显示mov cx,08hd

13、isp:mov bh,O1hmov bl,ds:di call disbitmov bl,00hcall disbitmov bh,02hmov bl,ds:di+1 call disbitmov bl,00hcall disbitmov bh,04hmov bl,ds:di+2 call disbitmov bl,00hcall disbitmov bh,08hmov bl,ds:di+3 call disbitmov bl,00hcall disbitmov bh,10hmov bl,ds:di+4 call disbitcall disbitmov bh,20hmov bl,ds:di+5 call disbitmov bl,00hcall disbitmov bh,40hmov bl,ds:di+6call disbitmov bl,00hcall disbitmov bh,80hmov bl,ds:di+7 call disbitmov bl,00hcall disbitloop dispret;显示一个位,用bh选择列 用bl保存显示字符的段码disbit:;位选mov al,bhmov dx,C8255out dx,al;从C 口输出bh,即亮的位

温馨提示

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

评论

0/150

提交评论