实验八 键盘扫描实验.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验八 键盘扫描实验

实验八 键盘扫描实验 一、实验目的 1. 掌握中断键盘扫描编程方法。 2. 掌握LED动态显示方法。 二、实验原理及实验内容 1. 实验原理 无论是单片机控制系统还是单片机测量系统,都需要一个人机对话装置,这种人机对话装置通常采用键盘和显示器。键盘是单片机应用系统中人机对话常用的输入装置,而显示器是单片机应用系统人机对话中的常用输出装置。 键盘是由若干个按键开关组成,键的多少根据单片机应用系统的用途而定。键盘由许多键组成,而每个键相当于一个机械开关触点,当键按下时,触点闭合,当键松开时,触点断开。单片机接收到按键的触点信号后作相应的功能处理。因此对于单片机系统来说键盘接口信号是输入信号。 单片机的键盘接口分为独立式和矩阵式。独立式键盘的每个按键都有一个信号线与单片机电路相连,所有按键有一个公共地或公共正端,每个键相互独立互不影响。如图7-7所示,当按下键1时,无论其它键是否按下,键1的信号线就由1变0;当松开键1时,无论其它键是否按下,键1的信号线就由0变1。 矩阵式键盘的按键触点接于由行、列母线构成的矩阵电路的交叉处,每当一个按键按下时通过该键将相应的行、列母线连通。若在行、列母线中把行母线逐行置0(一种扫描方式),那么列母线就用来作信号输入线。矩阵式键盘原理图如图7-8所示。 图7-7 独立式按键原理图 图7-8 矩阵式按键原理图 针对以上两大类键盘工作方式,单片机又有三种键盘扫描方式:查询方式;定时扫描方式和中断扫描方式。 查询方式是指在程序中用一段专门的扫描和读按键程序不停查询有无按键按下,确定键值。这种方式电路简单,但需要占用单片机的机器时间。 定时扫描方式是指利用单片机内的定时器来产生定时中断,然后在定时中断的服务程序中扫描,检查有无按键按下,确定键值。这种方式的电路也比较简单,不占用单片机的机器时间,但需要占用一个定时器,同时定时的时间不能过长,否则可能检测不到相应得按键。 中断扫描方式是指当有键按下时由相应的硬件电路产生中断信号,单片机在中断服务程序中扫描,检查有无按键按下,确定键值。这种方式硬件电路上必须要产生中断线,需要与门和非门来产生。但中断方式不占用单片机的机器时间,也不会出现定时方式时的检测不到键盘的情况。 另外,在扫描键盘时需处理键盘抖动问题,称为去抖。一般去抖可以采用软件方式完成,操作方法是,当检测到有键按下时,等待10ms左右时间,如果此按键仍然保持按下的状态,这是确认此按键,如果在100ms内连续检测到此按键按下,则不确认第二次按下的键。 本实验系统中的键盘在硬件上采用查询方式工作,键盘采用矩阵键盘有16个按键,见第六章实验箱硬件资料。 2.实验内容 根据流程图在Keil编译环境下编写程序,生成*.HEX文件,要求是任意按下键盘,要求能在LED上将按下的键对于的十六进制数显示出来。 通过ISP软件将生成的*.HEX文件下载到单片机当中。 将K1拨动开关打到“on”的位置,离线运行程序,观察实验现象,是否满足要求。不满足实验要求时,检查实验代码。 三、参考程序 汇编程序: FKEY EQU 20H.0 /*按键标志*/ KEYNUM EQU 30H /*按键编号变量*/ ORG 0000H AJMP MAIN MAIN: ACALL KEYET MOV @R0,A MOV A,@R0 MOV P0,A AJMP MAIN 图7-9键盘扫描 TABLE: /*字型数据数组*/ DB 0C0H,0F9H,0A4H,0B0H DB 99H,92H,82H,0F8H DB 80H,90H,88H,83H DB 0C6H,0A1H,86H,8EH KEYET: CLR FKEY /*清除按键标志*/ ACALL SCAN /*执行按键扫描*/ JB FKEY,G1 /*测试按键标志*/ AJMP KEYET /*若没有按键则等待按键*/ DELAY: /*延迟子程序*/ MOV R6,#50 /*总延迟时间R5*10 ms*/ D1: MOV R7,#100

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档