实验内容

数码管循环显示0123456789abcdef-

电路图

电路分析

端口地址和控制字地址主要看电路图,片选信号由译码器的\(\overline{IO1}\)引脚给出,即\(A_{12}-A_9\)为0001B时,片选信号有效。

地址线\(A_2A_1\)送给8255,选择芯片上的寄存器。8255A上有4个寄存器,其中,\(A_2A_1\)为00时选择端口A,\(A_2A_1\)为01时选择端口B,\(A_2A_1\)为10时选择端口C,\(A_2A_1\)为11时选择控制寄存器。

针对这题,为讨论方便,设其他地址线都为0。



端口A地址:\(A_{19}-A_0:0000 0000 0001 0000 0000B = 200H\)

端口B地址:\(A_{19}-A_0:0000 0000 0001 0000 0010B = 202H\)

端口C地址:\(A_{19}-A_0:0000 0000 0001 0000 0100B = 204H\)

控制字地址:\(A_{19}-A_0:0000 0000 0001 0000 0110B = 206H\)

代码

DATA SEGMENT
PORTD EQU 0206H
PORTA EQU 0200H
REGIS EQU 10000000B ;A OUT A工作方式0
LED DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH,0BFH
DATA ENDS STACK SEGMENT
DW 128 DUP(0)
STACK ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX ;设置8255工作方式
MOV DX,PORTD
MOV AL,REGIS
OUT DX,AL ;设置输出端口为端口A
MOV DX,PORTA G1:
;取LED数组的首地址
MOV SI,OFFSET LED
G2:
MOV AL,[SI]
OUT DX,AL;输出显示 ;延时操作
CALL DELAY ;如果当前值等于数组最后一个数的值则从头开始
CMP AL,0BFH
JE G1 ;地址加一
INC SI ;跳转到G2
JMP G2 MOV AH,4CH
INT 21H ;延时函数
DELAY PROC NEAR
PUSH BX
PUSH CX
MOV BX,200H
FOR1:MOV CX,200H
FOR2:LOOP FOR2
DEC BX
JNZ FOR1
POP CX
POP BX
RET
DELAY ENDP CODE ENDS
END START

8086 8255A proteus仿真实验的更多相关文章

  1. 8086 8253 proteus仿真实验

    目录 实验内容 电路图 计数初值 关于8523的地址 关于灯的地址 代码内容 实验内容 电路图 计数初值 已知\(f_{clk0}=100khz\),所以\(T_{clk0}=\frac{1}{f_{ ...

  2. Proteus 仿真运算放大器出现 GMIN 问题

    Proteus 仿真运算放大器出现 GMIN 问题 为了仿真一个反相运算放大器,在仿真时出现 GMIN 问题,将 后面的 4.7UF 去掉就可以正常仿真. 初步检查是因为输入频率太低,输入时我用的是 ...

  3. proteus仿真 引脚显示电平变化但不能显示波形

    proteus仿真 引脚显示电平变化但不能显示波形 原来是没有选择通道问题,proteus默认优先使用A通道才会显示波形,如果优先使用B,C,D通道,需要选择...

  4. MATLAB基本使用及SIMULINK建模仿真实验

    MATLAB基本使用及SIMULINK建模仿真实验 这是我总结的操作方法: 1 )  M脚本文件的编写 1.新建M-file: 2.输入指令: 3.保存(注意:保存路径需要与工作路径一致) 2 )在S ...

  5. Proteus仿真_01、 8086 IO译码仿真

    最近在学习一些微机原理与接口技术方面的知识. 参考书籍<微机原理与接口技术---基于8086Proteus仿真> 顾晖 梁惺彦 编著 实验一.利用8086 芯片来实现对I/O设备的读取和控 ...

  6. 共享式以太网与交换式以太网的性能比较(OPNET网络仿真实验)

      一.实验目的 比较共享式以太网和交换式以太网在不同网络规模下的性能. 二.实验方法 使用opnet来创建和模拟网络拓扑,并运行分析其性能. 三.实验内容 3.1   实验设置(网络拓扑.参数设置. ...

  7. 【iCore1S 双核心板_FPGA】例程十一:Modelsim仿真实验

    实验现象: 通过仿真波形,分析输入与输出的关系,可以清晰的看到所添加信号波形的变化与程序所写的一致. 核心代码: module modelsim( input CLK_12M, output FPGA ...

  8. Multisim-74LS08\74LS02\74LS86逻辑功能仿真实验

    一. 实验目的 了解TTL门电路的外观封装.引脚分布和使用方法. 掌握数字电路试验台.万用表和示波器的使用方法. 掌握TTL与门.或非门和异或门的逻辑功能. 认识门电路对信号的控制作用. 二.实验内容 ...

  9. 【iCore3 双核心板_FPGA】例程十二:Modelsim仿真实验

    实验指导书及代码包下载: http://pan.baidu.com/s/1bnQEldl iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...

随机推荐

  1. JavaScript学习笔记(1)字符串方法

    字符串方法 length 属性返回字符串的长度 var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; var sln = txt.length; inde ...

  2. Spring Security Oauth2 使用 token 访问资源服务器出现异常:Invalid token does not contain resource id (oauth2)

    异常如图 查看资源服务器的日志 p.a.OAuth2AuthenticationProcessingFilter : Authentication request failed: error=&quo ...

  3. NFS共享设置

    一.安装所需要的软件环境[root@fengling ~]# yum -y install rpcbind nfs-utils二.创建共享目录mkdir /web三.启动服务[root@fenglin ...

  4. 【已解决】React项目中按需引入ant-design报错TypeError: injectBabelPlugin is not a function

    react项目中ant-design按需加载,使用react-app-rewired的时候报错 运行npm start或者yarn start报如下错误: TypeError: injectBabel ...

  5. Airtest常见的素定位不到

    一.为什么发这博客 前几天业务需要需要操作云手机进行爬取没办法只有混进airtest官方群边学习边进行开发,蛮简单的东西(可能是我之前会selenium,appuim关系吧),但是群里会有很多问题,关 ...

  6. 解决vue中BMap未定义问题

    原文链接: 点我 最近在项目中使用了百度地图来显示物流信息,实现方式有两种: 引用Vue Baidu Map引用BMap存在的问题:\color{red}{存在的问题:}存在的问题::使用BMap可以 ...

  7. POJ 1330 Nearest Common Ancestors(裸LCA)

    Nearest Common Ancestors Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 39596   Accept ...

  8. 题解 bzoj 4398福慧双修(二进制分组)

    二进制分组,算个小技巧 bzoj 4398福慧双修 给一张图,同一条边不同方向权值不同,一条边只能走一次,求从1号点出发再回到1号点的最短路 一开始没注意一条边只能走一次这个限制,打了个从一号点相邻节 ...

  9. 题目分享D 二代目

    题意:给定一个T条边的无向图,求S到E恰好经过N条边的最短路径 T≤100 N≤1000000 分析:(据说好像假期学长讲过) 首先很容易想到的是dp[i][j][k]表示从i到j经过k条边的最短路径 ...

  10. MySQL JDBC Driver 8.0+设置服务器时区

    遇到一个问题,线下环境测试数据的查询完全没有问题,但是线上环境却没法查询出数据,并且从mybatis输出的日志来看,查询参数也没有问题,数据库中数据也是存在的,查询参数类型是java.util.Dat ...