当前位置:首页 > 芯闻号 > 基础实用电路
[导读]8255流水灯显示代码; You may customize this and other start-up templates;; The location of this template is c:\\emu8086\\inc\\0_com_template.txtorg 100h;T8255-2.asm;8255流水灯显示实验;****************根据

8255流水灯显示代码

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

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

org 100h

;T8255-2.asm

;8255流水灯显示实验

;****************根据查看端口资源修改下列符号值*******************

IOY0 EQU 00H ;片选IOY0对应的端口始地址

;*****************************************************************

MY8255_A EQU IOY0+00H*2 ;8255的A口地址

MY8255_B EQU IOY0+01H*2 ;8255的B口地址

MY8255_C EQU IOY0+02H*2 ;8255的C口地址

MY8255_MODE EQU IOY0+03H*2 ;8255的控制寄存器地址

DATA SEGMENT

LA DB 1 DUP

LB DB 1 DUP

AXX DW 1 BUP

CXX DW 1 BUP

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV DX,MY8255_MODE ;定义8255工作方式

MOV AL,80H ;工作方式0,A口和B口为输出

OUT DX,AL

BEGIN: MOV DX,MY8255_A ;写A口发出的起始数据

MOV AL,01H

OUT DX,AL

MOV LA,AL

MOV DX,MY8255_B ;写B口发出的起始数据

MOV AL,80H

OUT DX,AL

MOV LB,AL

MOV CX,7

LOOP1: CALL DALLY

MOV AL,LA ;将A口起始数据左移再写入A口

ROL AL,1

MOV LA,AL

MOV DX,MY8255_A

OUT DX,AL

MOV AL,LB ;将B口起始数据右移再写入B口

ROR AL,1

MOV LB,AL

MOV DX,MY8255_B

OUT DX,AL

LOOP LOOP1

MOV CX,7

LOOP2: CALL DALLY

MOV AL,LA ;将A口起始数据右移再写入A口

ROR AL,1

MOV LA,AL

MOV DX,MY8255_A

OUT DX,AL

MOV AL,LB ;将B口起始数据左移再写入B口

ROL AL,1

MOV LB,AL

MOV DX,MY8255_B

OUT DX,AL

LOOP LOOP2

JMP BEGIN ;流水灯重新开始

DALLY PROC ;软件延时子程序

MOV CXX,CX

MOV AXX,AX ;这里本应该用堆栈,我用CXX,AXX变量代替了。

MOV CX,0FH

D1: MOV AX,0FFFH

D2: DEC AX

JNZ D2

LOOP D1

MOV AX,AXX

MOV CX,CXX

RET

DALLY ENDP

CODE ENDS

END START

ret

原理图

 

Proteus7.5仿真8255流水灯原理图

效果图

 

Proteus7.5仿真8255流水灯原理图
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

移位寄存器,作为数字电路中的基本元件,是一种存储数据并按特定方式改变数据顺序的装置。它在计算机硬件设计、通信协议处理、数据编码解码以及其他众多数字信号处理场景中扮演着至关重要的角色。本文将深入探讨移位寄存器的作用,其工作...

关键字: 移位寄存器 数字电路

在数字电路和计算机体系结构中,定序器(Sequencer)是一个至关重要的组件。它负责协调和控制各个功能单元的操作顺序,确保数据在正确的时间被传输和处理。尽管定序器在许多现代电子系统中都扮演着关键角色,但对于非专业人士来...

关键字: 数字电路 计算机 定序器

随着信息技术的飞速发展,数字电路已成为现代电子设备不可或缺的核心组成部分。在数字电路中,数字晶体管作为一种重要的开关元件,发挥着至关重要的作用。本文将详细探讨数字晶体管的基本概念、工作原理、主要类型、应用领域以及未来发展...

关键字: 数字电路 晶体管 开关元件

EDA(电子线路设计座自动化)是以计算机为工作平台、以硬件描述语言(VHDL)为设计语言、以可编程器件(CPLD/FPGA)为实验载体、以ASIC/SOC芯片为目标器件、进行必要元件建模和系统仿真电子产品自动化设计过程。...

关键字: EDA技术 数字电路

EDA 作为现代电子设计的核心, 以大规模可编程逻辑器件(FPGA/COLD)为载体,以计算机为工作平台,在 EDA 软件开发环境下,采用硬件描述语言 HDL(Hardware Description Language)...

关键字: EDA技术 数字电路

移位寄存器是计算机中一种重要的数字电路,它具有广泛的应用。下面我将为您详细介绍移位寄存器的定义、功能和应用。

关键字: 移位寄存器 计算机 数字电路

移位寄存器是一种常用的数字电路元件,广泛应用于计算机、通信、数据处理等领域。它可以实现数据的移位操作,具有较高的灵活性和可扩展性。本文将对移位寄存器的产品性能以及引脚图进行详细分析。

关键字: 移位寄存器 计算机 数字电路

移位寄存器是一种在数字电路中广泛使用的寄存器,它具有许多特点和作用。本文将详细介绍移位寄存器的特点和作用,以及它在各个领域中的应用。

关键字: 移位寄存器 数字电路 计算机

随着工程师们对数字电源这项技术及其优势的熟知,各式各样的数字电源的发展势头日益强劲。电源系统和电源设计人员已经意识到,部署数字电源并不是对现有技术进行革命性转变的全新设计。由于目前市场上数字电源器件种类繁多,设计人员可以...

关键字: 数字电源 数字电路 电源器件

数字电路和接口在越来越高的时钟频率下的表现非常类似于模拟电路。所以,为了确保新设计方案和重新设计的方案中接口的质量,必须引入新的测量方法和测量设备。

关键字: 测试测量 数字电路
关闭
关闭