8255实验:扫描键盘与八段数码管显示

4星 · 超过85%的资源 需积分: 34 70 下载量 52 浏览量 更新于2024-07-31 2 收藏 368KB DOC 举报
"该实验是关于使用8255芯片进行扫描键盘和显示操作的实践教学,通过汇编语言编程实现。实验中,8255的PA口作为键盘输入,PB口用作扫描线,8279用于控制七段数码管显示。实验旨在使学生掌握8255的编程技巧以及扫描键盘和显示的编程方法。实验电路图中,8255的片选地址为8500H,8279的片选地址为8700H。键盘布局为8×2阵列,共能识别16个按键,而显示部分由8279驱动8位数码管。实验程序框图包括主程序和读键显示部分,具体程序代码中定义了8255和8279的相关地址,并设有延时函数、读键盘函数和显示函数。" 在8255扫描键盘显示实验中,重点涉及以下知识点: 1. 8255可编程并行接口:8255是Intel公司生产的并行I/O接口芯片,具有三个8位端口(PA、PB和PC),可以配置为输入或输出。在这个实验中,PA用作键盘输入,PB用作扫描线,进行键盘扫描。 2. 键盘扫描原理:通过轮询PB口的电平状态来检测键盘上的按键是否被按下。当按键按下时,相应的扫描线会被拉低,通过读取PB口的状态就可以识别出按下的是哪个键。 3. 8279显示控制器:8279是一种专为显示和键盘控制设计的芯片,它能够管理七段数码管的显示,提供消抖功能,并且能够处理键盘输入。在这个实验中,8279被用来控制数码管的显示内容。 4. 汇编语言编程:实验中的程序是用汇编语言编写的,汇编语言是低级编程语言,可以直接对硬件进行操作,适合进行这种底层的硬件控制。 5. 地址映射:实验中定义了8255和8279的命令字和数据口地址,这是通过片选信号CS来实现的。例如,8255的命令字地址为8506H,数据地址为8500H,8279的状态口地址为8701H,数据口地址为8700H。 6. 实验程序结构:程序主要包括主程序和子程序,如延时函数、读键盘函数(RD_KB)和显示函数(DISP)。读键函数负责读取键盘输入并判断是否有按键按下,显示函数则负责更新数码管的显示内容。 7. 显示缓冲区:程序中提到了显示缓冲区(DISPTR)和读到的键码存储区域(KEYVAL),这表明键盘输入的键码会先存储在内存的特定位置,然后在适当的时候转移到显示缓冲区,进而更新显示器的内容。 8. 消抖技术:为了消除机械按键的抖动,实验中使用了延时函数(DELAY),在读取键盘和显示操作之间进行适当的延时,确保读取到的是稳定无误的键值。 通过这个实验,学生不仅可以学习到8255和8279芯片的工作原理和使用方法,还能了解到键盘扫描、显示控制的基本策略,以及汇编语言编程的实际应用。同时,实验也锻炼了学生分析问题、解决问题的能力,对理解微处理器控制系统有极大的帮助。