
实验三键盘中断实验报告1500字.docx
9页实验三键盘中断实验报告1500字 苏州大学实验报告院、系 年级专业 姓名 学号 课程名称 成绩 指导教师 同组实验者 实验日期 实验名称: 键盘中断实验一.实验目的通过该实验实习,能够熟练运用MT-IDE嵌入式开发系统环境、汇编和C语言以及调试方式;复习SCI的内容;加强键盘中断的基本原理及编程原理的理解;能够理解“行扫描”法的原理并且运用它进行键盘中断的编程二.实验内容理解键盘模块和键盘中断点的原理,使用“行扫描”法编写一个中断方式的的键盘程序,并转化成定义值后,通过串口分别发往PC机的VB编写的界面中显示三.实验过程(一)接线图行线 图1 键盘接线原理图(二)基本原理GP32的A口的8根引脚与键盘中断模块(KBI)的引脚复用作为KBI引脚时,8个引脚分别称为KBIE7- KBIE0它们提供了以中断方式识别是否有按键按下的硬件手段当然,如果不以中断方式识别键盘按键,可以屏蔽键盘中断,把A口作为一般I/O口对待 CPU对键盘扫描可以采取程序控制的随机方式,CPU可以在空闲时扫描键盘也可以采用定时控制,每隔一定时间,对键盘扫描一次,CPU可以随时响应键盘输入中断采用中断方式,当键盘上有键闭合时,键盘向CPU请求中断,CPU响应键盘输入中断,对键盘扫描,以识别哪一个键处于闭合状态,并对键盘输入信息作出响应处理。
CPU对键盘上闭合键的键号确定,可以根据行线和列线的状态计算求得,也可以通过行线和列线的状态查表求得四.编程第1页(一)流程图图2 键盘中断流程图(中断方式主程序及其中断子程序)(二)所用寄存器名称及其各个位1.汇编方式:第2页2.C语言方式:第3页1.本实验中用的是键盘中断编程方式,也可以使用查询编程方式,请尽量少修改代码改用查询编程方式重新编写相应的子程序和主程序提示:注意重键问题答:只要把键盘中断子程序的内容放到主函数的循环中就可以了同时去掉中断向量表中关于键盘中断的中断设置2.识别是否有键按下以及哪个键被按下有哪些方法?答:识别是否有键被按下,主要有查询法、定时扫描法与中断法而要识别键盘上哪个键被按下主要有行扫描法和行反转法3.有哪些方法可以用来消除键盘抖动? 答:当按下一个键时,会出现所按的键在闭合位置和断开位置之间跳几下才稳定到闭合位置的情况,当释放一个按键时也会出现类似情况,这就是抖动问题在软件上,解决抖动问题的方法通常是延迟――等待抖动的消失或多次识别判定4.课本中的键盘中断编程是如何解决重键问题?答:所谓重键就是有两个及两个以上按键同时处于闭合位置的情况在软件上,处理重键问题通常有连锁法和巡回法。
5.课本中的样例直接用小灯检验程序的运行情况怎样检验?提示:用接线图来说明 答:如果小灯的显示结果是按键对应的ASCII码值,说明程序运行正确,否则程序中或硬件上可能有错误6.在上题中改用万用表来检验,请加以说明提示:用接线图来说明 答:用万用表来检测PTB口的各个引脚的电压情况也可以得到按键的ASCII码值,依此来判定程序的运行情况六.实验小结通过该实验实习,了解单片机的键盘模块,熟悉和掌握了MT-IDE嵌入式开发系统环境及其调试方式,进一步熟悉汇编编程和C语言编程;和理解了课本中的程序代码第4页第二篇:实验三键盘实验报告(附图)辽宁工程技术大学上机实验报告+ -全文完-。












