模拟 8 比 1 多路复用器


我们要用汇编语言编写一个程序,专门模拟逻辑控制器接口使用的 8 比 1 多路复用器。

模拟 8 比 1 多路复用器的引脚按图中所示。

对于此多路复用器模拟,以下所示的 8255 端口提供输入和输出。

  • 端口 B 用作 I7-0 输入;
  • 端口 C 的 7 号引脚用作片选;
  • 端口 C 的 6-4 号引脚用作选择输入;
  • 端口 A 的 0 号引脚用作多路复用器的输出。

示例代码

FILE NAME Prog_MUX.ASM
ORG C100H
TABLE DB 01H, 02H, 04H, 08H, 10H, 20H, 40H, 80H

ORG C000H
PA EQU D8H
PB EQU D9H
PC EQU DAH
CTRL EQU DBH

MVI A, 10001010B
OUT CTRL ; Configure 8255 ports

LOOP: IN PC
RLC
JNC LOOP ; Wait in the loop till chip is enabled

RLC
RLC
RLC

ANI 07H ; Now LS 3 bits of A will have select inputs

LXI H, TABLE
ADD L
MOV L, A ; Point HL to proper row of look up table

IN PB
ANA M ; AND Port B with a value from look up table
JZ SKIP

MVI A, 01H
SKIP: OUT PA ; Send out the value of selected input
JMP LOOP

更新于: 2019-07-30

688 次浏览

开启您的 职业生涯

完成课程即可获得证书

开始学习
Advertisement