0实验三键盘中断实验

  • 格式:docx
  • 大小:16.81 KB
  • 文档页数:2

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