微机原理8255并行接口实验怎么让K0控制L7

微机原理8255并行接口实验怎么让K0控制L7,第1张

微机原理接口实验:8255并行接口实验,让K0~K7控制发光二极管L0~L7的状态。8255接口芯片非常重要的,使用非常简单,在以后的实验会经常使用到。

实验内容:8255接口芯片非常重编写一个基本输入输出程序,使8255的A口为输入,B口为输出,完成拨动开关到数据灯的数据传输。要求:数据灯的显示随开关动态变化。要的,使用非常简单,在以后的实验会经常使用到。

实验的目的:了解可编程并行接口芯片8255的内部结构、工作方式、初始化编程及应用。并学会如何使用8255并行开关让K0~K7控制发光二极管L0~L7的状态。

设定:8255PA、PC口为输入、PB作输出(均为方式0)

MOV DPTR, #0FF2BH ;假设命令口地址FF2BH

MOV A, #10011001B ;命令字

MOVX @DPTR, A

……

忘了问了,你的8255的地址,是不是FF2BH?

线路不一样,地址有可能不一样。

#include<reg51h>

#include<absacch>

#define COM8255 XBYTE[0x7fff] //命令字地址

#define PA8255 XBYTE[0x7ffc]  //PA口地址

#define PB8255 XBYTE[0x7ffd]  //PB口地址

void delay(unsigned int ms)

{

unsigned char i;

while(ms--)

for(i=0;i<123;i++);

}

void main()

{

COM8255=0x82; //方式0,A口输出,PB口输入

while(1)

{

if(PB8255==0xff)

{

PA8255=0xff;

delay(500);

PA8255=0x00;

delay(500);

}

else

PA8255=PB8255; //PB口开关断和通控制PA口LED亮和灭

}

}

若设定8255A的C口上半部方式0输入,C口下半部方式0输出,

可以将C口视作二个独立的4位I/O端口

从C口上半部读入的数据由PC7~PC4引脚的电平高低所决定,与PC3~PC0无关;

若向下半部PC3~PC0输出数据,对PC7~PC4状态无影响。

编写初始化程序,要先写控制字,所以先假设8255A的端口A、端口B和控制字寄存器的端口地址分别为20H、21H和22H,那么初始化程序为:MOV DX,023H;MOV AL,10010000B;OUT DX,AL······(其中控制字为:10010000B,PC端多为输出端)。

8255A的A,B,C三个端口的工作方式是在初始化编程时,通过向8255A的控制端口写入控制字来设定的。8255A由编程写入的控制字有两个:方式控制字和置位/复位控制字。

其中,方式控制字用于设置端口A,B,C的工作方式和数据传送方向,置位/复位控制字用于设置C口的PC7~PC0中某一条口线PCi(i=0~7)的电平,两个控制字公用一个端口地址。

扩展资料:

8255A具有3种基本的工作方式,在对8255A进行初始化编程时,应向控制字寄存器 写入方式选择控制字,用来规定8255A各端口的工作方式。

这3种基本工作方式是:

1、方式0——基本输入输出方式:适用于不需要用应答信号的简单输入输出场合,这种方式端口A和B可作为8位的端口,端口C的高4位和低4位可作为两个4位的端口;

2、方式1——选通输入输出方式:端口A和B作为数据口,均可工作于输入或输出方式,端口C的6根线用来产生或接受联络信号。

3、方式2——双向总线I/O方式:只有端口A可以工作于这种方式,端口A工作于方式2 时,端口C的5位(PC3~PC7)作A口的联络控制信号。

参考资料来源:百度百科-8255A芯片

8255工作方式命令字为:10010000B,

即:A口方式0输入,B口方式0输出,C口方式0输出,

设微机系统中,8255端口地址是:80H~83H

80x86汇编程序如下:

MOV AL,101000B ; AL←方式命令字

OUT 83H, AL ; 方式命令字→控制口,8255初始化

IN AL, 80H ; AL←读入A口数据

NOT AL ; 将AL内容各位取反

OUT 81H, AL ; AL的数据输出→B口

以上就是关于微机原理8255并行接口实验怎么让K0控制L7全部的内容,包括:微机原理8255并行接口实验怎么让K0控制L7、单片机控制8255按键控制8个发光二极管程序编程、以8255的B口为输入,A口为输出,输入与输出分别用开关及发光二极管代表,要求:当输入不全为0时,等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10123478.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存