照例先借一下关键字们:PKU 微机实验 实验报告 8255A 方式控制字 LED灯
这个实验用到了8255和8253(管时钟的分频的那个),并构成了我大作业的主要组成部分,所以真是映像深刻啊。8255A一共有三个口,A口B口C口,每个口有8位。在我的理解里,就像是老式计算机里面沟通的纸带一样。比如说你在设完控制字之后,如果通过导线把A0位接到了一盏LED灯上,并通过程序设置了这一位输出1,那么灯就会亮啦!是不是超神奇!控制字大概就是控制三个口是在输入还是输出的,需要写到控制地址里面去。在连了CS片选信号(类似确定基地址的信号)之后,A口B口C口的地址就都是确定的啦。在程序里面写这些地址的IN和OUT就相当于是在控制这些端口输出/输入的东西啦。一般会把这些端口通过导线和其他的地方连起来,起到输入/输出这种传输数据的效果~
4.3.1 书上有样例了。大概就是注意接线接CS的片选,以及LED灯的数组不要抄错了2333
4.3.2 A 口输入C 口输出 8255A 工作于方式0,A 口输入,接开关K0K7;C 口输出接LED L0L7。用LED 以二进制数显示出K0K7 中置高电平的个数,程序运行中如有键按下就返回DOS。那个有按键就返回的设计还是蛮好玩的,LED灯一闪一闪亮晶晶也是棒棒哒~
DATA SEGMENT
LED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H
DB 7FH,67H,77H,7CH,39H,5EH,79H,71H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV D