版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
引言在微型计算机应用系统中,人机交互是至关重要的一环。键盘作为最常用的输入设备,显示器作为最常用的输出设备,它们的高效管理直接影响系统的整体性能和用户体验。Intel8279芯片正是为简化这一任务而设计的专用可编程键盘/显示控制器。本实验旨在通过实际操作,深入理解8279的工作原理与编程方法,掌握其与微处理器的接口技术,以及如何利用它实现对矩阵键盘和数码管显示器的有效控制,从而为构建更复杂的嵌入式系统奠定基础。一、8279控制器核心原理与结构8279芯片能够自动完成键盘扫描和显示刷新的大部分工作,极大地减轻了CPU的负担。其核心优势在于将原本需要CPU频繁介入的键盘检测和显示更新任务进行了硬件化处理。1.18279的功能概述8279主要功能包括:*键盘接口:支持最多64键的矩阵式键盘,具备自动去抖动功能,并能提供按键的闭合与释放信息,可工作于编码或译码扫描方式。内部设有8字节的FIFO(先进先出)缓冲区,用于暂存键盘输入数据,减少CPU读取键盘数据的实时性要求。*显示接口:支持最多16位LED数码管或其他类型的显示器,可以工作于静态显示或动态扫描显示方式。内部设有16字节的显示缓冲器,每个字节对应一位显示器的显示数据。1.2内部结构与引脚功能8279的内部结构可以大致分为几个主要部分:CPU接口与控制逻辑、键盘扫描逻辑、显示缓冲器与控制逻辑。理解这些部分的交互是掌握8279工作的关键。其引脚按功能可分为:*与CPU的接口:包括数据总线(DB0-DB7)、地址线(通常A0用于区分命令/状态口和数据口)、读写控制信号(RD*,WR*)、片选信号(CS*)以及中断请求信号(IRQ)。IRQ在键盘FIFO缓冲区不为空时有效,通知CPU读取键盘数据。*与键盘的接口:扫描线(SL0-SL3)用于扫描键盘行或列,返回线(RL0-RL7)用于检测按键的闭合,另外还有一个移位寄存器输入端(SHIFT)和控制/选通输入端(CNTL/STB),可用于扩展按键的功能。*与显示器的接口:显示数据输出线(OUTA0-OUTA3,OUTB0-OUTB3)通常分为A、B两组,可以独立输出,用于驱动数码管的段码。显示位选控制线(SG0-SG3)用于动态扫描时选择当前点亮的数码管位。1.3工作方式与命令字8279的强大之处在于其可编程性,通过向其命令口写入不同的命令字,可以配置其工作方式。主要的命令字包括:*设置键盘/显示方式命令字:用于指定键盘的工作模式(如编码扫描、译码扫描、是否使用移位键和控制键)和显示器的工作模式(如左端输入、右端输入、静态显示、8位或16位显示)。*读FIFO/传感器RAM命令字:当工作于键盘模式时,用于读取FIFO缓冲区中的键盘数据。*读显示RAM命令字:用于从显示缓冲器中读取数据。*写显示RAM命令字:用于向显示缓冲器中写入数据。*显示禁止写入/消隐命令字:可以暂时禁止显示缓冲器的写入,或使显示器消隐。*清除命令字:用于清除FIFO缓冲区或显示缓冲器的内容。*结束中断/错误方式设置命令字:在特定工作模式下使用。深刻理解这些命令字的格式和含义,是正确初始化和操控8279的前提。二、实验电路设计与连接实验电路的搭建是理论联系实际的桥梁。一个清晰、合理的电路连接是实验成功的第一步。2.1核心控制模块(以典型微处理器为例)假设我们使用一款常见的8位微处理器作为系统核心。8279的数据线(DB0-DB7)应与微处理器的数据总线相连。地址线A0可连接至微处理器地址总线的某一根(例如A1),用于区分8279的命令/状态端口和数据端口。微处理器的读写信号(RD*,WR*)直接连接到8279的相应引脚。片选信号(CS*)通常由微处理器的地址译码电路产生,以确定8279在系统地址空间中的位置。8279的中断请求IRQ可连接至微处理器的外部中断输入引脚,实现键盘输入的中断驱动方式。2.2键盘接口电路采用矩阵式键盘可以在较少的I/O口线下扩展较多的按键。例如,使用8279的SL0-SL3作为行扫描线(经译码后可扩展为更多行),RL0-RL7作为列检测线。每个按键跨接在一条行线和一条列线上。为了提高抗干扰能力和保证按键释放时的电平稳定,通常在RL线上外接上拉电阻。SHIFT键和CNTL键可以根据实验需求决定是否连接,它们可以为每个按键提供额外的状态信息。2.3显示接口电路对于LED数码管显示,若采用共阴极数码管,则8279的OUTA和OUTB输出端(经驱动电路)连接至数码管的段码输入端(a-g,dp)。SG0-SG3(或经译码扩展后)连接至数码管的位选端(公共阴极)。为防止过大电流损坏数码管和8279输出口,每个段码输出通常需要串联限流电阻。若数码管数量较多,可能还需要增加三极管或专用驱动芯片来提高驱动能力。三、软件设计与编程实现软件是8279发挥作用的灵魂。合理的程序设计能够高效地利用8279的硬件资源。3.18279初始化程序系统上电后,必须对8279进行初始化,以设定其工作模式。初始化流程通常如下:1.写入清除命令字:清除显示缓冲器和FIFO缓冲区,确保初始状态的干净。需要注意的是,发送清除命令后,8279需要一段时间来完成清除操作,此时读状态字可以判断清除是否完成。2.写入键盘/显示方式命令字:根据实验设计的键盘类型(如6x6矩阵键盘)和显示需求(如8位数码管动态显示,左端输入),设置相应的位。例如,如果选择编码扫描键盘,8位数码管显示,左端输入方式,则命令字的相应位需要正确设置。3.设置键盘扫描频率:虽然部分简化实验中可能不涉及,但了解8279的扫描频率设置(通过时钟编程命令)有助于优化键盘响应速度和显示亮度。3.2键盘输入处理程序8279能够自动完成键盘的扫描、去抖动和编码,并将有效按键信息存入FIFO缓冲区。CPU可以通过查询方式或中断方式来读取键盘数据。*查询方式:CPU定期读取8279的状态口,检查FIFO缓冲区是否有数据(FIFO状态位)。若有数据,则通过读FIFO命令读取键盘数据。*中断方式:当8279的FIFO缓冲区不为空时,IRQ引脚有效,向CPU发出中断请求。CPU响应中断后,在中断服务程序中读取键盘数据。中断方式能更有效地利用CPU资源,特别适合对实时性有一定要求的场合。读取到的键盘数据通常包含按键的行、列信息,以及SHIFT和CNTL键的状态。程序需要将这些原始数据解析为具体的键值(如数字、字母或功能键),并进行相应的处理。3.3显示输出程序要在数码管上显示信息,需要将待显示的字符对应的段码写入8279的显示缓冲器。1.段码表:首先需要建立一个段码表(字形码表),存储每个数字、字母或特殊符号对应的段码值。例如,共阴极数码管显示数字“0”的段码通常是0x3F。2.写入显示缓冲器:通过向8279写入“写显示RAM命令字”,指定起始地址和自动增量方式,然后依次将各数码管的段码写入数据口,8279会自动将数据存入显示缓冲器的相应位置,并驱动数码管显示。3.动态显示刷新:8279会自动完成动态扫描显示的刷新工作,CPU只需负责更新显示缓冲器中的内容即可,无需关心具体的扫描时序,这极大地简化了编程。四、调试与故障排除实验过程中遇到问题是常态,有效的调试方法和故障排除能力是提升实验技能的关键。4.1常见硬件故障及排查*键盘无响应:检查8279的电源和复位信号是否正常;检查键盘矩阵的连线是否正确,有无短路或断路;检查上拉电阻是否连接;用示波器观察SL扫描线是否有扫描信号输出,RL返回线在按键按下时是否有电平变化。*显示异常(全不亮或部分不亮):检查数码管的电源和接地是否正确;检查段码线和位选线的连接是否正确;检查限流电阻是否合适;观察SG位选线和OUTA/OUTB段码线是否有正常信号输出;检查显示缓冲器是否被正确写入数据。*与CPU通信故障:检查8279的片选信号(CS*)在访问时是否有效;检查地址线A0的连接是否正确,确保命令和数据能正确写入相应端口;检查读写信号(RD*,WR*)是否正常。4.2软件调试技巧*初始化检查:通过单步执行或断点,确认8279的初始化命令是否正确写入,特别是工作方式命令字和清除命令。可以读取状态字来验证初始化是否成功。*键盘数据读取:在程序中加入调试信息(如通过串口输出或特定指示灯),显示读取到的原始键盘数据,判断是否与预期一致,以区分是键盘扫描问题还是后续的键值解析问题。*显示数据写入:同样,可以通过读取显示缓冲器的内容,确认写入的数据是否正确。4.3利用状态字进行诊断8279的状态字提供了丰富的内部工作状态信息,是调试的有力工具。例如,FIFO状态位可以指示缓冲区是否为空、已满或溢出;错误标志位可以指示是否发生了FIFO溢出错误或传感器RAM超时错误。学会解读状态字,能快速定位问题所在。五、实验拓展与思考完成基础实验后,可以进行一些拓展性的思考和尝试,以深化理解和提升能力。*扩展键盘功能:如何利用SHIFT和CNTL键实现组合键功能?如何将键盘扩展到更多按键(如利用传感器矩阵模式)?*提升显示效果:尝试显示更多类型的字符(如小数点、负号),实现字符的滚动显示或闪烁效果。*中断优先级:如果系统中还有其他中断源(如定时器中断、串口中断),如何协调8279键盘中断的优先级?*低功耗设计:思考在电池供电系统中,如何通过控制8279的工作模式来降低功耗?六、总结通过8279键盘显示控制器的应用实验,我们不仅学习了一款经典接口芯片的工作原理和编程方法,更重要的是理解了专用控制器在微机系统设计中所起到的简化硬件、减轻CPU负担、提高系统效率的作用。从硬件电路的搭建到软件程序的编写与调试,整个过程锻炼
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广州市越秀区登峰街招考专职社区工作者易考易错模拟试题(共500题)试卷后附参考答案
- 2026年广东省珠海市金湾区事业单位招考易考易错模拟试题(共500题)试卷后附参考答案
- 2026年广东肇庆市端州区直事业单位招聘重新开放易考易错模拟试题(共500题)试卷后附参考答案
- 2026年广东省深圳盐田区信访局招考法律顾问1人易考易错模拟试题(共500题)试卷后附参考答案
- 2026年广东省汕头市纪委招聘政府雇员57人易考易错模拟试题(共500题)试卷后附参考答案
- 2026年广东省广州市白云区和镇政府雇员招聘18人易考易错模拟试题(共500题)试卷后附参考答案
- 2026年广东省佛山市顺德区城乡规划编制信息研究中心招聘控员内人员9人易考易错模拟试题(共500题)试卷后附参考答案
- 2026年广东省中山市东凤镇经济发展和科技信息局招聘临聘人员13人易考易错模拟试题(共500题)试卷后附参考答案
- 2026年广东清远连山壮族瑶族自治县人民检察院招聘政府购买服务人员易考易错模拟试题(共500题)试卷后附参考答案
- 2026年浙江省事业单位统考《职业能力倾向测验》笔试真题
- 2026秋小学人美版美术六年级上册(新教材)教学计划附教学进度表
- 2026年河南省重点学校高一入学语文分班考试试题及答案
- 辽宁省沈阳市五校2025-2026学年高二下学期7月期末考试物理试卷(含答案)
- 中国公证协会招聘考试真题2025
- 2026年秋季学期统编版小学五年级上册语文教学计划含教学进度表
- 2026年全国数据技术与应用职业技能竞赛(商务数据分析与应用)必练题(共350题)
- 2025年江苏南京市中考语文试卷真题及答案详解(精校打印版)
- 2026年四川省初级注册安全工程师考试真题及答案
- 2026年高职(服装工艺技术)服装流水线生产实操试题及答案
- 2026福建海峡企业管理服务有限公司(央企外包岗)招聘12人笔试历年典型考点题库附带答案详解
- GB/T 30117.7-2026灯和灯系统的光生物安全第7部分:主要发射可见辐射的光源和灯具
评论
0/150
提交评论