8086+8255控制引脚输入输出仿真,Proteus

环境

proteus8.7

功能

开关控制引脚电平,从而控制LED亮灭。

使用了PA1进行输入,PB1进行输出

原理图

代码

; You may customize this and other start-up templates;

; The location of this template is c:\emu8086\inc\0_com_template.txt

org 100h

; rtl.asm

.MODEL SMALL

.STACK 100H

.DATA

PORT_A EQU 200H ; 8255端口A地址

PORT_CTL EQU 206H ; 8255控制端口地址

PORT_B EQU 202H

DELAY_COUNT DW ? ; 用于延时计数

.CODE

MAIN PROC

MOV AX, @DATA

MOV DS, AX

MOV DX, PORT_CTL ; 将控制端口地址存入DX

MOV AL, 90H ; 方式0,端口A输入,端口B输出,端口C输出

OUT DX, AL ; 通过DX间接指定端口地址输出控制字

nop

LOOP_LED:

nop

nop

mov al,0

MOV DX, PORT_A ; 将数据端口地址存入DX

IN AL,DX

NOP

NOP

MOV DX,PORT_B

OUT DX, AL

call DELAY_5KHZ

JMP LOOP_LED

MAIN ENDP

DELAY_5KHZ PROC

nop

nop

nop

RET

DELAY_5KHZ ENDP

END MAIN

ret

详细讲解

硬件部分

使用元件有8086、8255、74hc373、led、开关

其中373锁存8255的模式,也就是使用的port,00是portA...,8086的ALT连接373的LE,ALT引脚功能是使能锁存,8086ALT引脚详见总线工作模式,使用地址的AD1和AD2位进行端口选择

然后8086的数据/地址线低8位和373以及8255的数据连接

8086的读写信号分别和8255的读写信号连接

8255的引脚在输入下有内部上拉,所以直接通过开关和电源地连接即可

8086的NMI可以不接

软件部分

使用emu8086进行汇编的编译,产生.com文件,类似于51的hex文件,用来导入8086进行仿真运行,

这里PORT-CTL是8255的控制寄存器地址

地址的1、2位为模式选择,高位用来做片选,比如使用译码器片选指定器件,这里只用一个8255,所以随便设置即可,这里取02

软件下载以及具体操作可以参考这个视频

最后

作者因为课设第一次使用proteus进行8086的仿真,所以这里记录一下需要注意的东西

1.proteus里面,标号是一种逻辑连接的工具,两个引脚连接的导线有一样的标号时,仿真就认为两个引脚连接在同一个导线上,这可以简化接线,方便设计和仿真

具体操作是鼠标放在导线上,右键选择添加网络标号

2.8086的BUS,给BUS引出并标号,就可以在其他器件的引脚导线上通过标号连接对应的数据位,比如,这里设置BUS位AD[0..15],意思是BUS上有16位,每一位的标号是ADi(i=0,1,..15)

然后在其他器件的引脚导线上设置标号ADi,即可连接指定的总线位

这里分享一个快捷标号的方法,鼠标放在导线上,按键盘A,输入NET=AD#,然后确定,就可以在点击导线时自动标号,初始的i和增长步长可以在"计数初值"和"计数增量"修改

这里NET=指定标号AD,#表示添加的数字,也就是ADi里面的i

3.电源的字符串最好标注极性和大小,比如+5V

4.电阻,在添加硬件选择类别Resistors,然后选择或者搜索需要的电阻即可,双击电阻可以更改阻值,所以选择的电阻阻值不符合要求也没事

相关推荐
一川月白7096 小时前
51单片机---硬件学习(跑马灯、数码管、外部中断、按键、蜂鸣器)
单片机·学习·51单片机·外部中断·蜂鸣器·数码管·跑马灯
月阳羊6 小时前
【硬件-笔试面试题-69】硬件/电子工程师,笔试面试题(知识点:电机驱动电路的反馈电路)
java·经验分享·嵌入式硬件·面试
weixin_468466859 小时前
树莓派32位与64位系统安装teamviewer远程软件
linux·单片机·自动化·树莓派·远程控制·vnc·teamviewer
沐欣工作室_lvyiyi9 小时前
2025-2026单片机物联网毕业设计题目推荐(定稿付款)
单片机·物联网·课程设计
曙曙学编程10 小时前
stm32——独立看门狗,RTC
c语言·c++·stm32·单片机·嵌入式硬件
sheepwjl10 小时前
《嵌入式硬件(四):温度传感器DS1820》
单片机·嵌入式硬件
三之又三11 小时前
PowerPMAC配置EtherCAT设备
嵌入式硬件·cnc·powerpmac
朝颜_祝余11 小时前
在电路浪涌测试中,TVS(瞬态电压抑制二极管)的防护效果确实会受到陪测设备中去耦网络(Decoupling Network,DN)的显著影响
单片机·嵌入式硬件
mei_you_n11 小时前
JLINK 调试器单步调试单片机
单片机·嵌入式硬件
HIZYUAN12 小时前
AG32 ( MCU+FPGA二合一 )是如何卷入了三相电能计量市场的
单片机·嵌入式硬件