实验八 点阵LED显示设计实验

实验要求:
编写程序,控制点阵向上(或左右)游动显示“西安电子科技大学欢迎您!-姓名”。实验系统中的16×16 LED点阵由四块8×8 LED点阵组成,如图所示,8×8点阵内部结构图如下。

实验目的:

  1. 了解LED点阵的基本结构。
  2. 学习LED点阵扫描显示程序的设计方法。

8*8LED点阵实验:
  为了完成实验要求,先实现8 * 8 LED点阵实验,要求在8 * 8 的LED上循环显示1,2,3这三个数字。

  Y7代表从左往右的第一列,以此类推,Y0代表从左往右的最后一列。
  对于数字1,从第一行到第八行,对应的需要点亮的LED灯Y7-Y0状态为(假设高电平有效):00001000,00011000,00101000,00001000,00001000,00001000,00001000,00111110。
  对于数字2,从第一行到第八行,对应的需要点亮的LED灯Y7-Y0状态为(假设高电平有效):00111000,01000100,00000100,00000100,00001000,00010000,00100000,01111110。
  对于数字3,从第一行到第八行,对应的需要点亮的LED灯Y7-Y0状态为(假设高电平有效):00011000,00100100,00000100,00011000,00011000,00000100,00100100,00011000。
  如下图所示,当X0-X7为高电平时,代表该行选通,当Y0-Y7为低电平时,代表列选通,为了方便,在Y输出时加入非门,这样CPU输出的高电平代表选中对应的列。假设X0-X7的输出端口地址为00H,Y0-Y7的输出端口为02H。

  设置一个计算行数的变量,存放于BX寄存器中,BX=0时屏幕见a图,BX=1时见b图,BX=2时见c图,以此类推。当BX=24时,代表1、2、3已经显示结束,BX清零,重新开始显示,这样就做到了循环显示的目的。设置行从X0到X7依次选通,每一次选通后输出对应行需要点亮的LED。当X0-X7均选通一遍之后,将BX加一,重复上述过程。

  注:在每次输出具体数据之前,要先选中X端口,输出全0实现清屏,否则会导致输出错误。利用CX的循环次数控制移动的速度。

汇编代码:

DATA SEGMENT  NUMS:DB 08H,18H,28H,08H,08H,08H,08H,3EH ;数字1DB 38H,44H,04H,04H,08H,10H,20H,7EH ;数字2    DB 18H,24H,04H,18H,18H,04H,24H,18H ;数字3
DATA ENDS
CODE SEGMENTASSUME CS:CODE,DS:DATA
START:MOV AX,DATAMOV DS,AXMOV AH,01HMOV BX,00H
RUN:MOV DX,OFFSET NUMSMOV SI,DXADD SI,BXMOV CX,08H
WAITE:MOV AL,0HOUT 00H,ALMOV AL,[SI]OUT 02H,ALMOV AL,AHOUT 00H,ALROL AH,1PUSH CXMOV CX,700HLOOP $POP CX    INC SILOOP WAITE   INC BXCMP BX,24JA RESET
CONTINUE:    JMP RUN
RESET:MOV BX,00HJMP CONTINUE
CODE ENDS
END START

实验截图:

16*16LED点阵实验:
  同8*8的LED点阵实验,如下图所示,对于X0-X15,对应的Y7-Y0分别是(假设高电平有效):80H, 88H, 88H, 0F8H, 88H, 84H, 80H, 0FFH, 0C0H, 0A0H, 90H, 88H, 84H, 83H, 80H, 80H;对应的Y15-Y8分别是00H, 00H, 00H, 1FH, 00H, 00H, 00H, 7FH, 00H, 01H, 02H, 04H, 08H, 30H, 00H, 00H。其他字同理。

  设置计算行数的变量,存放在寄存器BX中,当BX=14*16=224时,代表文字已经显示结束,需要将BX清零,从“西”开始重新显示。当依次选通X0-X15时,点亮对应行的LED,当X0-X15均选通一遍之后,将BX加一,并重复上述操作。假设X0-X7的端口地址为00H,X8-X15的端口地址为02H,Y0-Y7的端口地址为04H,Y8-Y15的端口地址为06H。

汇编代码:

DATA SEGMENTLEFT:;左侧1*2块屏幕,从低位到高位,每个字节是半行DB 0H, 0FFH,  20H, 20H, 20H, 0FCH,24H, 24H, 24H, 24H, 14H, 0CH, 04H, 4H,0FCH, 4H    ;西DB 40H, 80H, 0FCH, 04H, 42H, 40H, 40H,0FFH, 20H, 10H, 18H, 60H, 80H,40H, 30H,0EH    ;安DB 80H, 80H,  80H,0FCH, 84H, 84H, 84H,0FCH, 84H, 84H, 84H,0FCH, 84H,80H, 80H,00H    ;电DB 00H,0FEH,  00H, 00H, 00H, 80H, 80H,0FFH, 80H, 80H, 80H, 80H, 80H,80H,0A0H,40H    ;子DB 10H,0B8H,  0FH, 08H, 08H,0BFH,  8H,01CH, 2CH, 0AH,0CAH,  9H,  8H, 8H,  8H, 8H   ;科DB 8H,  8H,   8H,0C8H, 3FH,  8H,  8H,0A8H, 18H, 0CH, 0BH, 08H, 08H, 08H, 08H,064H   ;技DB 80H, 80H, 80H, 80H, 80H,0FFH, 80H, 80H, 40H, 40H, 20H, 20H, 10H,  8H,  4H,  3H   ;大DB 44H, 88H, 88H,  0H,0FEH,  2H,  1H,0F8H,  0H, 80H,0FFH, 80H, 80H, 80H,0A0H, 40H   ;学DB 0H,   0H, 3FH, 20H,0A0H, 92H, 54H, 28H,  8H, 14H, 24H,0A2H, 81H, 40H, 20H, 10H  ;欢DB 0H,   4H,0C8H, 48H, 40H, 40H, 4FH, 48H, 48H, 48H,0C8H, 48H,  8H, 14H,0E2H,  0H   ;迎DB 90H, 90H, 88H, 4CH, 2AH, 99H, 88H, 48H, 28H, 88H,  8H, 40H, 8AH, 8AH,  9H,0F0H   ;您 DB 80H, 88H, 88H, 0F8H, 88H, 84H, 80H, 0FFH, 0C0H, 0A0H, 90H, 88H, 84H, 83H, 80H, 80HDB 40H, 40H, 0FCH, 40H, 40H, 0FFH, 40H, 20H, 0FCH, 8H, 84H, 0FAH, 81H, 8H, 0AH, 40HDB 0H, 7EH, 40H, 40H, 44H, 48H, 48H, 40H, 0A0H, 48H, 46H, 44H, 40H, 40H, 28H, 10HDB 00H, 00H, 00H, 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H   RIGHT:;右侧1*2块屏幕 DB 00H, 07FH,02H,02H,02H,1FH,12H,12H,12H,12H,1CH,10H,10H,10H,1FH,10HDB 00H, 00H,3FH,20H,10H,00H,00H,7FH,04H,04H,02H,02H,01H,06H,08H,10HDB 00H, 00H,00H,01FH,10H,10H,10H,01FH,10H,10H,10H,01FH,50H,40H,40H,7FHDB 00H, 01FH,08H,04H,02H,01H,00H,07FH,00H,00H,00H,00H,00H,00H,00H,00HDB 08H, 08H,09H,09H,08H,008H,9H,09H,08H,78H,0FH, 08H,08H,08H,08H,08HDB 04H, 04H,4H,07FH,04H,04H,04H,3FH,21H,11H,12H,0AH,4H,0AH,11H,60HDB 00H, 00H,00H,00H,00H,07FH,00H,00H,01H,01H,02H,02H, 4H,8H,10H,60HDB 10H, 10H,08H,4H,07FH,40H,20H,7H,2H,01H,07FH,00H,00H,00H,00H, 0HDB 01H, 01H, 1H,3FH, 20H,10H,02H, 2H,2H, 5H, 5H, 08H, 8H,10H,20H,40HDB 00H, 01H, 3CH,24H,24H,24H,24H,24H,24H,2DH,14H, 04H,4H, 4H,07FH,0HDB 00H, 00H,3FH,20H,12H,0AH,12H,22H,22H,2H, 1H, 0H,20H,48H,48H,0FH    DB 00H, 00H, 00H, 1FH, 00H, 00H, 00H, 7FH, 00H, 01H, 02H, 04H, 08H, 30H, 00H, 00H  DB 00H, 10H, 7H, 2H, 21H, 7FH, 0H, 0H, 7H, 1H, 10H, 3FH, 0H, 0H, 0H, 0H    DB 20H, 7FH, 20H, 20H, 22H, 24H, 24H, 20H, 28H, 24H, 23H, 22H, 20H, 20H, 14H, 8H DB 00H, 00H, 00H, 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA
START: MOV AX,DATAMOV DS,AXMOV AH,01H   MOV BX,00H ;滚动行数(移向下一字节代表从下一行开始打印)
RUN:MOV DX,OFFSET LEFTMOV SI,DXADD SI,BX   ;计算当前行数(本轮从该行开始打印)MOV DX,OFFSET RIGHTMOV DI,DXADD DI,BX   ;计算当前行数(本轮从该行开始打印)MOV CX,08H;共8行
WRITE1:   ;在上面两块屏幕上输出MOV AL,0HOUT 0H,AL;清屏操作MOV AL,[SI];左边内容OUT 4H,ALMOV AL,[DI];右边内容OUT 6H,ALMOV AL,AH   ;设置目标行OUT 0H,ALROL AH,1;目标行下移INC SI;指向下一行INC DI    PUSH CXMOV CX,0500H ;延迟LOOP $     POP CX LOOP WRITE1MOV AL,0HOUT 0H,ALMOV CX,08H
WRITE2:;在下面两块屏幕上输出MOV AL,0HOUT 2H,AL ;清屏操作MOV AL,[SI] ;左边内容OUT 4H,ALMOV AL,[DI] ;右边内容OUT 6H,ALMOV AL,AH   ;设置目标行OUT 2H,ALROL AH,1  ;目标行下移INC SIINC DIPUSH CXMOV CX,0500HLOOP $     POP CXLOOP WRITE2 INC BXCMP BX,224 ;14个字,向上滚14*16行JA RESET
CONTINUE:JMP RUN
RESET: ;滚动值清零MOV BX,0JMP CONTINUE
CODE ENDS
END START

电路连接图:

实验过程截图:

参考文献

消除proteus仿真时的红蓝色点

西电网信院微机原理实验(八)相关推荐

  1. 西电网信院微机原理实验(七)

    实验七 基于8255的开关状态显示实验 1.编写程序,设定8255的PA口为开关量输入,PC口为开关量输出,要求能随时将PA口的开关状态通过PC口的发光二极管显示出来. 8255芯片: 图1 8255 ...

  2. 西电网信院微机原理实验(六)

    实验六 74LS273扩展I/O口实验 1.编写程序,以74LS273作为I/O口,控制8个单色LED灯.I/O端口号为168H. 原理分析:   ① 74LS273为锁存器,可以作为I/O数据寄存器 ...

  3. 西电网信院微机原理实验(五)

    实验五 存储器扩展实验 一.存储器芯片62256引脚介绍:   62256共有15根地址线A0-A14,存出大小为32KB:八条双向数据线D0-D7,共8bit:CE‾\overline{CE}CE片 ...

  4. 【数据库原理】实验报告(西电网信院)

    title: [数据库原理]实验报告 categories: 杂项 tags: 数据库 作业 PostgreSQL [数据库原理]实验报告 客户端安装 Navicat for PostgreSQL可以 ...

  5. 北邮微型计算机原理及应用阶段二,北邮信通院微机原理第二章.ppt

    北邮信通院微机原理第二章 异常模式:系统模式外的其他5种特权模式,常用于处理中断或其它异常. 处理器模式可以通过软件来改变,也可以通过外部中断或处理器异常改变. 特权模式:除用户模式外的其它6种模式 ...

  6. 微型计算机c240,PC微机原理实验.doc

    PC微机原理实验 微型计算机原理与应用 实验指导书 上 海 大 学 通 信 学 院 PC微机原理实验一 目的:掌握PC机DEBUG调试程序有关命令的操作及8086各类指令的 功能. 要求:在PC机上完 ...

  7. 微型计算机原理实验心得,微机原理实验心得体会

    好文网为大家准备了关于微机原理实验心得体会的文章,好文网里面收集了五十多篇关于好微机原理实验心得体会好文,希望可以帮助大家.更多关于微机原理实验心得体会内容请关注好文网.ctrl+D请收藏!篇一:微机 ...

  8. 微型计算机原理实验指导书,微机原理实验实验指导书2015.pdf

    微机原理实验实验指导书2015 微型计算机原理与应用 实验指导书 上 海 大 学 通 信 学 院 2015 年 3 月 实验一 8051 单片机简单编程与调试 一.实验目的 通过简单小程序的输入和调试 ...

  9. 微型计算机原理实验报告总结,微机原理实验报告-两个多位十进制数相加的实验等.doc...

    微机原理实验报告-两个多位十进制数相加的实验等.doc 微机原理实验报告班级学号姓名实验一两个多位十进制数相加的实验一.实验目的学习数据传送和算术运算指令的用法熟悉在PC机上建立.汇编.链接.调试和运 ...

最新文章

  1. linux还原备份的内核镜像,使用Mondo制作Linux镜像(ISO)、还原系统图文详解
  2. linux 源码编译upx 压缩软件
  3. 由几个问题引出EJB的概念
  4. 【转帖】详解CSS网页布局中默认字体样式
  5. Kali Linux渗透测试实战 2.2 操作系统指纹识别
  6. linux的i o模型,浅谈Linux 网络 I/O 模型简介(图文)
  7. unity创建项目报错:解决sentinel key not found (h0007) Unity
  8. Unity 碰撞器和触发器的理解
  9. FileNet unfile sql
  10. numpy的使用(一)(reshape()有待研究)
  11. 【Qt学习笔记】包含头文件确报错 does not name a type
  12. 计算机表格标题怎么做,做表必备!超实用的五个制作Excel表头的技巧,快速学起来...
  13. IDEA插件系列(77):Spec Math symbols插件——数学符号
  14. http url转义字符,特殊字符
  15. Acala与全球知名跨链资产流动平台Ren达成合作
  16. 医院信息化建设(1)---惠民服务
  17. 微信小程序 之 程序题
  18. 用C++写出求矩形和圆形面积的程序
  19. ActiveReports报表开发案例:ERP等管理系统的开发与维护模式
  20. qt将html加载到资源文件,web页面嵌入到Qt

热门文章

  1. 3DMax更改视口布局和最大化快捷键(二)
  2. PR模板使用教程 线性擦除图片照片展示特效PR模板使用细节教程
  3. HDU3535:分组背包
  4. PostMan相关设置
  5. 华为手机 锁屏密码找回
  6. 计算机配置显卡在哪里打开,显卡在哪里设置 显卡设置方法【详细介绍】
  7. c++:有武器的角色类
  8. MFC模拟AutoCAD 在单文本视图窗口任意位置输入文字
  9. html点击显示隐藏判断,jquery判断元素是否隐藏的多种方法
  10. ARM 罢免中国合资公司 CEO 吴雄昂内幕