重庆大学计算机硬件基础实践:8255与键盘LED交互

需积分: 10 6 下载量 69 浏览量 更新于2024-09-10 1 收藏 168KB PDF 举报
"该资源包含了重庆大学计算机硬件基础课程的两个上机实验样题,主要涉及8255可编程接口芯片的使用,以及微机上机操作。实验一要求通过8255控制LED显示,接收用户输入的数字并转化为对应的字形码显示;实验二则涉及4x4键盘的扫描,识别特定按键(如字母'E')并处理大小写转换。" 在计算机硬件基础中,8255可编程接口芯片是一种常见的I/O接口,用于扩展微处理器的输入/输出能力。在这个上机实验中,8255被配置为两种模式: 1. **实验一**: - A口(地址208H)作为段选口,用于控制LED显示器的段驱动,实现字符显示。 - B口(地址209H)作为位选口,选择LED显示器的特定位置点亮,形成字符形状。 - 字形码表定义了0-9的ASCII码对应的LED显示码。例如,字符"F"的字形码为8EH。 - 实现流程包括8255的初始化、LED显示提示信息、等待用户输入数字键,将ASCII码转化为数字,查找字形码表并显示。 程序代码中,使用了汇编语言编写。`DATASEGMENT`和`CODESEGMENT`定义了数据段和代码段。`START`是程序入口,通过`PUSHDS`和`MOVDS,AX`设置数据段寄存器。然后对8255的端口进行初始化,设置A、B口的输出,并在A口输出字符"F"的字形码,显示提示信息。接着进入一个循环,读取标准键盘输入,判断是否为数字键,如果是则转化为对应的字形码并显示,否则继续循环。 2. **实验二**: - A口(地址208H)作为键盘行信号,连接4x4矩阵键盘的行线。 - B口(地址209H)作为列信号,连接键盘的列线。 - C口(地址20AH)连接发光二极管,用于指示或反馈。 - 实验目标是识别并处理4x4键盘上的"E"键,同时处理小写到大写的转换。 这个实验中,8255的A口和B口被用来扫描键盘矩阵,通过读取行和列的状态来确定哪个键被按下。对于字母'E',需要在用户按下时进行识别,并可能进行大小写的转换。这部分代码没有给出,但通常会涉及对键盘扫描码的处理和逻辑判断。 这两个实验都是微机原理和接口技术中的典型实践,旨在让学生理解和掌握8255的工作原理,以及如何通过编程控制硬件设备。通过这样的练习,学生能够提升实际操作和问题解决的能力。