用8255的C口做键盘扫描,怎么写程序

用8255的C口做键盘扫描,怎么写程序,第1张

下面是一个我机子上调试好的8255程序、希望对你有所帮助。、 祝你好运~~~ 8255扫描键盘、显示程序 利用8255可编程并行口做一个扫描键盘实验, 把按键输入的键码,显示在由8279控制的七段数码管上。 8255PA口做键盘输入线,PB口作扫描线

先写控制字,你没给控制端口地址,假设是是23H吧,这样的话A口地址为20H;B口为21H;C口为22H。PC5怎么?你你没打完吧?

8255A的端口A工作在方式0输入,B口工作在方式0输出。控制字为:10010000B。(PC口都设成输出了)

初始化程序:

MOV DX,023H

MOV AL,10010000B

OUT DX,AL

(送初值)

以上你给的信息就只能到写控制字了。

亲~记得给好评哦~

RESET:复位输入线,当该输入端外于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。

CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输

RD:读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。

WR:写入信号,当这个输入引脚为低电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。

D0~D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写 *** 作,控制字和状态信息也通过数据总线传送。

PA0~PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入锁存器。

PB0~PB7:端口B输入输出线,一个8位的I/O锁存器, 一个8位的输入输出缓冲器。

PC0~PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口, 每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。'

A0,A1:地址选择线,用来选择8255的PA口,PB口,PC口和控制寄存器

当A0=0,A1=0时,PA口被选择;

当A0=0,A1=1时,PB口被选择;

当A0=1,A1=0时,PC口被选择;

当A0=1A1=1时,控制寄存器被选择

先确定控制字A口0方式输出,B口输入,C口不用即

10000010B

下面开始编程:(我们假设地址为60H-63H)

MOV DX,63H ;控制口

MOV AL,10000010B ;控制字

OUT DX,AL

MOV DX,60H ;A口地址

IN AL,DX ;读A口

MOV DX,61H ;B口地址

OUT DX,AL ;写B口

从A口读入开关的“关”、“闭”状态,即获得相应的一个字节的数据,再将其写到B口,即可实现LED灯的闭合(因为没有见到你给的图,我只是按我自己的理解解答,不知道答案对不对,不过如果按常理,这个答案是正确的)

楼上的,他们是汇编或者微原的课程用的是8088或8086,直接用试验箱,对他们的要求应该不用自己搭建硬件环境的。而且8255只是个接口芯片。你的情况要根据你的实验环境,先在你的PC软件环境编辑编译链接后,连接硬件试验箱将8255的A口与LED相连,C口通过正确接口方式与8088相连,试验箱在程序装载模式时通过PC将二进制文件下载,运行,OVER

以上就是关于用8255的C口做键盘扫描,怎么写程序全部的内容,包括:用8255的C口做键盘扫描,怎么写程序、编写一程序,要求8255a的pc5端输出一方波信号、8255编程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存