8255实验:扫描键盘与八段数码管显示
4星 · 超过85%的资源 需积分: 34 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芯片的工作原理和使用方法,还能了解到键盘扫描、显示控制的基本策略,以及汇编语言编程的实际应用。同时,实验也锻炼了学生分析问题、解决问题的能力,对理解微处理器控制系统有极大的帮助。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2022-07-11 上传
2012-04-23 上传
2009-06-23 上传
2010-01-11 上传
2022-07-11 上传
2012-12-29 上传
a13087447
- 粉丝: 0
- 资源: 2
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍