欢迎来到天天文库
浏览记录
ID:14260902
大小:57.50 KB
页数:3页
时间:2018-07-27
《0实验三 键盘中断实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验三 键盘中断实验一.实验目的1.熟练运用MT-IDE嵌入式开发系统环境、汇编、C语言、调试方式。2.复习串行通信接口(SCI)的内容。3.加强键盘中断基本原理及编程原理的理解。4.理解运行课本中的程序代码。5.理解“行扫描”法的原理并能进行键值识别和键值编码。6.理解键盘接线原理图(如图3-1)。实验箱提供一个16键键盘,用于键盘中断信号的输入。系统提供两种接线方式:①当将键盘接入上一排插孔时为固定接线,键盘接线原理图如图3-1所示。②当将键盘接入下一排插孔时为手动接线,连线的位置在键盘的左边。列线n1n2n3n4MCU内部上拉电阻图3-1键盘接线原理图12345678行
2、线m1m2m3m4+5V接MCU的PTA引脚二.预习要求1.仔细阅读本实验指导书。2.复习有关的键盘中断和串行通信接口(SCI)的章节。3.熟悉GP32键盘模块的工作方法及编程。4.根据实验内容要求编写好程序,为实验做充分地准备。三.实验设备及其连接1.PC机一台2.MT-IDE嵌入式开发系统一台3.串行通信线一根4.小键盘一个5.万用表一个四.实验内容1.理解键盘模块及键盘中断的原理。2.运行与理解各子程序。3.主程序运行课本的样例程序。4.编制一个中断方式的16键键盘程序,使用“行扫描”法识别按键。采用键盘中断方式。PTA7-PTA4为列线(输入),定义有内部上拉电阻,P
3、TA3-PTA0为行线(输出),没有内部上拉电阻,允许INTBIER的KBIE7-KBIE4定义为中断输入引脚。要求按下的一个键的键值和键面定义值(键的ASCII码值)通过串口在PC方软件界面显示,同时用小灯显示按键的键面定义值(键的ASCII码值)。键盘与MCU的PTA7-PTA0相连。PTB7-PTB0口与小灯相连。五.编程提示1.按照结构要求写好编程代码和注释。2.键盘一般都是矩阵排列的,行和列分别接在MCU的I/O口上,其中列线通过设置内部上拉电阻接+5V,该端口先定义为输入端,行线直接与端口相连,该端口定义为输出端。当键盘上没有被按下时,所有的行线和列线断开,且列线
4、都呈高电平。当键盘上某个键闭合时,则与该键对应的行线和列线短路,对于16键键盘,此时行值和列值的组合就是识别这个键的键值的一个字节,PTA0-PTA3分别接四根行线,PTA4-PTA7分别接四根列线。行扫描法是使键盘的某一行输出为低电平,其余行为高电平,然后读取列值,如果列值中有某位为低电平,则表明该行和列交点处的键被按下;若为全高则再扫描下一行,直至扫描完全部的行线为止。这样就可以确定是哪一行哪一列交点的键被按下。3.PTA端口引脚与键盘中断输入引脚复用,设置键盘中断允许寄存器,当键盘有键被按下时,立即产生中断,中断程序处理按键事件,比如确定哪个键被按下,然后转换为该键的定
5、义值。4.键盘的键面标示码(即定义值)与MCU识别的键值对应关系通过列表对应起来,即键盘定义表对应表示。当通过“行扫描”法获得某个键的键值时,通过查表法就可以得到它的定义值。5.该键盘中断方式程序的主程序主体是一个死循环,且是一个空循环体,所有处理的过程代码放在中断程序中。六.实验报告要求1.将调试好程序整理到实验报告。回答下列问题2.识别是否有键按下以及哪个键被按下有哪些方法?3.有哪些方法可以用来消除键盘抖动?
此文档下载收益归作者所有