笔记本16乘8矩阵键盘原理

笔记本16乘8矩阵键盘原理
笔记本16乘8矩阵键盘原理

键盘工作的主要原理:计算机键盘通常采用行列扫描法来确定按下键所在的行列位置。所谓行列扫描法是指,把键盘按键排列成n行×m列的n*m行列点阵,把行、列线分别连接到两个并行接口双向传送的连接线上,点阵上的键一旦被按动,该键所在的行列点阵信号就被认为已接通。按键所排列成的矩阵,需要用硬件或软件的方法轮转顺序地对其行、列分别进行扫描,以查询和确认是否有键按动。如有键按动,键盘就会向主机发送被按键所在的行列点阵的位置编码,称为键扫描码。单片机通过周期性扫描行、列线,读回扫描信号结果,判断是否有键按下,并计算按键的位置以获得扫描码。键被按下时,单片机分两次将位置扫描码发送到键盘接口:按下一次,叫接通扫描码;按完释放一次,叫断开扫描码。这样,通过硬件或软件的方法对键盘分别进行行、列扫视,就可以确定按下键所在位置,获得并输出扫描位置码,然后转换为ASCII码,经过键盘I/O电路送入主机,并由显示器显示出来。

我們的應用是EC有KSI/KSO接鍵盤,EC確認鍵盤某個鍵有作用,才會通知系統來減少系統資源浪費,此外每一列会间断性发low讯号

請問一秒內,一個固定的列(KSO)會發1000次Low Pulse.

笔记本EC中使用到了16*8矩阵键盘,其中16根列线输入端为KSO0~KSO15,8根行线输出端为KSI0~KSI7。16根列线和8根行线可以确定16*8=128个坐标点。键按矩阵排列,各键处于矩阵行/列的结点处,CPU通过对连在行(列)的I/O线送已知电平的信号,然后读取列(行)线的状态信息。逐线扫描,得出键码。下图给出了4*4的矩阵键盘的电路具体加以说明。

矩阵式键盘中,行、列线分别连接到按键开关的两端,行线X0、X1、X2、X3通过上拉电阻接到+5 V上。当无键按下时,行线处于高电平状态,显然,如果让所有的列线也处在高电平,那么,按键按下与否不会引起行线电平的变化,因此,必须使所有列线处在低电平,只有这样,当有键按下时,该键所在的行电平才会由高电平变为低电平。当有键按下时,行、列线将导通,此时,行线电平将由与此行线相连的列线电平决定。这一点是识别矩阵按键是否被按下的关键。

按键按下时,与此键相连的行线与列线导通,对应的行线被拉低,CPU根据行平电的变化,便能判定相应的行有键按下。例如8号键按下时,第X2行一定为低电平,然而,第2行为低电平时,不能确定一定是8号键按下的,因为9、10、11号键按下同样使第2行为低电平。为进一步

确定具体键,不能使所有列线在同一时刻都处在低电平,可在某一时刻只让一条列线处于低电平,其余列线均处于高电平,另一时刻,让下一列处在低电平,依次循环,这种依次轮流每次选通一列的工作方式称为键盘扫描。

下面对几个常见问题的探讨:

1、CPU对键盘扫描的方式

键盘扫描只是CPU的工作内容之一,CPU对键盘的响应取决于键盘的工作方式,键盘的工作方式应根据实际应用系统中CPU的工作状况而定,其选取的原则是既要保证CPU能及时响应按键操作,又不要过多占用CPU的工作时间。通常,键盘的工作方式有三种,程序控制的随机方式(CPU 空闲时扫描键盘)、定时控制方式(定时扫描键盘)和中断方式. 由于CPU经常处于空扫描状态,为提高CPU工作效率,一般采用中断扫描工作方式。其工作过程如下:当无键按下时,CPU处理自己的工作,当有键按下时,产生中断请求,CPU转去执行键盘扫描子程序,并识别键号。

2、独立连接式键盘与矩阵连接式键盘的对比

独立连接式键盘每键相互独立,各自与一条I/O线相连,CPU可直接读取该I/O线的高/低电平状态。其优点是硬件、软件结构简单,判键速度快,使用方便;缺点是占I/O口线多。适用场合:多用于设置控制键、功能键,适用于键数少的场合。

矩阵连接式键盘键按矩阵排列,各键处于矩阵行/列的结点处,CPU通过对连在行(列)的I/O线送已知电平的信号,然后读取列(行)线的状态信息。逐线扫描,得出键码。其特点是键多时占用I/O口线少,硬件资源利用合理,但判键速度慢。适用场合:多用于设置数字键,适用于键数多的场合。

3、按键开关去抖动问题

键盘的抖动时间一般为5~10ms,抖动现象会引起CPU对一次键操作进行多次处理,从而可能产生错误。消除抖动不良后果的方法有硬件去抖动和软件去抖动。硬件去抖动常用RC滤波电路去抖动电路。软件去抖动是测到按键按下后,执行延时10ms子程序后再确认该键是否确实按下,消除抖动影响。

4、键盘的键位冲突问题

简单的说,也就是当你同时按下键盘上的几个键的时候,这几个键不能同时反映出来,这就叫做键盘的键位冲突。例如,经常有一些键盘不能同时对例如A-S-空格这样的按键组合作出反应,这样在FPS游戏中,使用者就会大为吃亏。键位冲突的直接起因,是键盘的非编码结构。传统的键盘,是编码式键盘,它的每个键按下时都会产生唯一的按键编码,并且通过专有的一组导线传输到键盘接口电路,由于其线路和编码的唯一性,这种键盘是不存在键位冲突的问题的,但是

编码键盘结构复杂,现在已经很少使用了,现在的键盘几乎都是非编码的薄膜接触式键盘。而现代的薄膜接触式键盘,任何一个按键都有上下两层薄膜的触点,在任何一层薄膜上,导线数都远少于按键数,而且每一条导线都同时连通多个按键的触点,而且,上层和下层的任何两条导线都最多只在一个按键上重合。也就是说,上层的1号导线可能会同时经过1、2、3、4、5…等按键,而下层的1号导线可能同时经过1、Q、A、Z…等按键,且两条导线只在1键上重合。

CPU对键盘扫描的方式一般采用中断扫描工作方式。当无键按下时,CPU处理自己的工作;当有键按下时,产生中断请求,CPU转去执行键盘扫描子程序,并识别键号。其目的是为了提高CPU的工作效率。键盘主要工作原理:无键按下时,所有行线为high,列线为low;有键按下时,CPU转去执行键盘扫描程序,将所有列线拉high,但每一列会间断性发low讯号(时间间隔不同),当CPU判断按下键对应的列线时,low讯号会将键对应的行线拉low,从而确定键的位置。实验关键为列线发low讯号的时间间隔不同,证实昨天Frank的观点是正确的。

在实验证实时,随机选取两组列线输入端KSO15(通道1)、KSO0(通道2);随机选取两组行线输出端KSI3(通道3)、KSI5(通道4)。

1、无任何键按下时,通过多次实验,发现所有行线为high,列线为low。

2、按下鍵“A”時,CPU执行键盘扫描程序,将所有列线拉high,但每一列会间断性发low讯号(时间间隔不同),由于只是从8组行线随机选的2组,下图没有A键行线。

3、按下鍵“4”時,CPU执行键盘扫描程序,将所有列线拉high,但每一列会间断性发low讯号(时间间隔不同),

4、按下小鍵盤中數字鍵“2”時,CPU执行键盘扫描程序,将所有列线拉high,但每一列会间断性发low 讯号(时间间隔不同)。此时CPU扫描判断键“2”对应的列线为KSO0,KSO0的Low讯号将键“2”对应的行线KSI5拉low,从而确定键“2”行、列的位置。

矩阵键盘设计实验报告

南京林业大学 实验报告 基于AT89C51 单片机4x4矩阵键盘接口电路设计 课程机电一体化设计基础 院系机械电子工程学院 班级 学号 姓名

指导老师杨雨图 2013年9月26日

一、实验目的 1、掌握键盘接口的基本特点,了解独立键盘和矩 阵键盘的应用方法。 2、掌握键盘接口的硬件设计方法,软件程序设计 和贴士排错能力。 3、掌握利用Keil51软件对程序进行编译。 4、用Proteus软件绘制“矩阵键盘扫描”电路,并用测试程序进行仿真。 5、会根据实际功能,正确选择单片机功能接线,编制正确程序。对实验结果 能做出分析和解释,能写出符合规格的实验报告。 二、实验要求 通过实训,学生应达到以下几方面的要求: 素质要求 1.以积极认真的态度对待本次实训,遵章守纪、团结协作。 2.善于发现数字电路中存在的问题、分析问题、解决问题,努力培养独立 工作能力。 能力要求 1.模拟电路的理论知识 2.脉冲与数字电路的理念知识 3.通过模拟、数字电路实验有一定的动手能力 4.能熟练的编写8951单片机汇编程序 5.能够熟练的运用仿真软件进行仿真 三、实验工具 1、软件:Proteus软件、keil51。 2、硬件:PC机,串口线,并口线,单片机开发板 四、实验内容

1、掌握并理解“矩阵键盘扫描”的原理及制作,了解各元器件的参数及格 元器件的作用。 2、用keil51测试软件编写AT89C51单片机汇编程序 3、用Proteus软件绘制“矩阵键盘扫描”电路原理图。 4、运用仿真软件对电路进行仿真。 五.实验基本步骤 1、用Proteus绘制“矩阵键盘扫描”电路原理图。 2、编写程序使数码管显示当前闭合按键的键值。 3、利用Proteus软件的仿真功能对其进行仿真测试,观察数码管的显示状 态和按键开关的对应关系。 4、用keil51软件编写程序,并生成HEX文件。 5、根据绘制“矩阵键盘扫描”电路原理图,搭建相关硬件电路。 6、用通用编程器或ISP下载HEX程序到MCU。 7、检查验证结果。 六、实验具体内容 使用单片机的P1口与矩阵式键盘连接时,可以将P1口低4位的4条端口线定义为行线,P1口高4位的4条端口线定义为列线,形成4*4键盘,可以配置16个按键,将单片机P2口与七段数码管连接,当按下矩阵键盘任意键时,数码管显示该键所在的键号。 1、电路图

笔记本16乘8矩阵键盘原理

键盘工作的主要原理:计算机键盘通常采用行列扫描法来确定按下键所在的行列位置。所谓行列扫描法是指,把键盘按键排列成n行×m列的n*m行列点阵,把行、列线分别连接到两个并行接口双向传送的连接线上,点阵上的键一旦被按动,该键所在的行列点阵信号就被认为已接通。按键所排列成的矩阵,需要用硬件或软件的方法轮转顺序地对其行、列分别进行扫描,以查询和确认是否有键按动。如有键按动,键盘就会向主机发送被按键所在的行列点阵的位置编码,称为键扫描码。单片机通过周期性扫描行、列线,读回扫描信号结果,判断是否有键按下,并计算按键的位置以获得扫描码。键被按下时,单片机分两次将位置扫描码发送到键盘接口:按下一次,叫接通扫描码;按完释放一次,叫断开扫描码。这样,通过硬件或软件的方法对键盘分别进行行、列扫视,就可以确定按下键所在位置,获得并输出扫描位置码,然后转换为ASCII码,经过键盘I/O电路送入主机,并由显示器显示出来。 我們的應用是EC有KSI/KSO接鍵盤,EC確認鍵盤某個鍵有作用,才會通知系統來減少系統資源浪費,此外每一列会间断性发low讯号 請問一秒內,一個固定的列(KSO)會發1000次Low Pulse. 笔记本EC中使用到了16*8矩阵键盘,其中16根列线输入端为KSO0~KSO15,8根行线输出端为KSI0~KSI7。16根列线和8根行线可以确定16*8=128个坐标点。键按矩阵排列,各键处于矩阵行/列的结点处,CPU通过对连在行(列)的I/O线送已知电平的信号,然后读取列(行)线的状态信息。逐线扫描,得出键码。下图给出了4*4的矩阵键盘的电路具体加以说明。 矩阵式键盘中,行、列线分别连接到按键开关的两端,行线X0、X1、X2、X3通过上拉电阻接到+5 V上。当无键按下时,行线处于高电平状态,显然,如果让所有的列线也处在高电平,那么,按键按下与否不会引起行线电平的变化,因此,必须使所有列线处在低电平,只有这样,当有键按下时,该键所在的行电平才会由高电平变为低电平。当有键按下时,行、列线将导通,此时,行线电平将由与此行线相连的列线电平决定。这一点是识别矩阵按键是否被按下的关键。 按键按下时,与此键相连的行线与列线导通,对应的行线被拉低,CPU根据行平电的变化,便能判定相应的行有键按下。例如8号键按下时,第X2行一定为低电平,然而,第2行为低电平时,不能确定一定是8号键按下的,因为9、10、11号键按下同样使第2行为低电平。为进一步

华硕笔记本键盘使用说明

华硕篇 华硕的组合键虽然不是很强大,都是常用的组合键.但比起以前增加了许多功能,而且只有880克的S200来讲,这么小的机有这么多的组合键已经算是难得了. FN+F1:降低屏幕亮度 FN+F2:升高屏幕亮度 FN+F3:等待状态 FN+F4:休眠状态 FN+F5:降低音量 FN+F6:增加音量 FN+F7:静音 FN+F10:切换显示器 FN+F11:等于按下NUM LOCK键 FN+F12:等于按下Scroll lock键 FN+Insert:等于按下打印键(PRINT SCREEN) FN+del:等于按下SysRQ键 FN+向上方向键:等于按下Page Up 键 FN+向下方向键:等于按下Page Down 键 FN+向左方向键:等于按下Page Home键 FN+向右方向键:等于按下Page End键 FN+T:拉伸屏幕 下面为以前的机型S8200快捷键比较简单,大家可以对比一下 FN+F5:增加亮度 FN+F6:减低亮度 FN+F7:关闭/打开屏幕 FN+F8:前换显示器 FN+F9:静音 FN+F10:增加音量 FN+F11:减少音量 FN+F12:等于按下PAUSE间 FN+insert:等于按下num lock键 FN+del:等于按下Scr Lock键 华硕X80系列及华硕F8系列组合键 Fn + F1 进入待机或休眠模式 Fn + F2 开启内置无线网络功能(视选购机型而不同) Fn + F3 E-mail快捷键,开启互联网邮件程序 Fn + F4 因特网快捷键,立即开启互联网浏览器

Fn + F5 调暗液晶显示屏亮度 Fn + F6 调亮液晶显示屏亮度 Fn + F7 液晶屏背光光源开关 Fn + F8 切换液晶显示屏显示,外接显示器或电视 Fn + F9 触摸板锁定快捷键,可以锁定触摸板功能 Fn + F10 静音开关(仅适用于WINDOWS系统下) Fn + F11 降低音量(仅适用于WINDOWS系统下) Fn + F12 提高音量(仅适用于WINDOWS系统下) Fn + Ins 开启或关闭数字键盘功能 Fn + <空格键> 等同于性能设置快捷键,按下后可设置系统性能与省电之间的关系 Fn + C 此组合键可切换屏幕至不同的颜色设置选项,在屏幕画面左上方将出现一些画面 Fn + V 此组合键可以开启摄像头程序 Fn + T 此组合键可开启Power for phone程序

单片机矩阵式键盘连接方法及工作原理

矩阵式键盘的连接方法和工作原理 什么是矩阵式键盘?当键盘中按键数量较多时,为了减少I/O 口线的占用,通常将按键排列成矩 阵形式。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样做有什么好处呢?大家看下面的电路图,一个并行口可以构成4*4=16 个按键,比之直 接将端口线用于键盘多出了一倍,而且线数越多,区别就越明显。比如再多加一条线就可以构成20 键 的键盘,而直接用端口线则只能多出一个键(9 键)。由此可见,在需要的按键数量比较多时,采用矩 阵法来连接键盘是非常合理的。 矩阵式结构的键盘显然比独立式键盘复杂一些,识别也要复杂一些,在上图中,列线通过电阻接 电源,并将行线所接的单片机4 个I/O 口作为输出端,而列线所接的I/O 口则作为输入端。这样,当按 键没有被按下时,所有的输出端都是高电平,代表无键按下,行线输出是低电平;一旦有键按下,则输 入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了,具体的识别及编程方法如下 所述: 二.矩阵式键盘的按键识别方法 确定矩阵式键盘上任何一个键被按下通常采用“行扫描法”或者“行反转法”。行扫描法又称为 逐行(或列)扫描查询法,它是一种最常用的多按键识别方法。因此我们就以“行扫描法”为例介绍矩 阵式键盘的工作原理: 1.判断键盘中有无键按下 将全部行线X0-X3 置低电平,然后检测列线的状态,只要有一列的电平为低,则表示键盘中有键 被按下,而且闭合的键位于低电平线与4 根行线相交叉的4 个按键之中;若所有列线均为高电平,则表 示键盘中无键按下。 2.判断闭合键所在的位置 在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平(即在 置某根行线为低电平时,其它线为高电平),当确定某根行线为低电平后,再逐行检测各列线的电平状 态,若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。 下面给出一个具体的例子: 单片机的P1 口用作键盘I/O 口,键盘的列线接到P1 口的低4 位,键盘的行线接到P1 口的高4

实验四 键盘扫描及显示设计实验报告

实验四键盘扫描及显示设计实验报告 一、实验要求 1. 复习行列矩阵式键盘的工作原理及编程方法。 2. 复习七段数码管的显示原理。 3. 复习单片机控制数码管显示的方法。 二、实验设备 1.PC 机一台 2.TD-NMC+教学实验系统 三、实验目的 1. 进一步熟悉单片机仿真实验软件 Keil C51 调试硬件的方法。 2. 了解行列矩阵式键盘扫描与数码管显示的基本原理。 3. 熟悉获取行列矩阵式键盘按键值的算法。 4. 掌握数码管显示的编码方法。 5. 掌握数码管动态显示的编程方法。 四、实验内容 根据TD-NMC+实验平台的单元电路,构建一个硬件系统,并编写实验程序实现如下功能: 1.扫描键盘输入,并将扫描结果送数码管显示。 2.键盘采用 4×4 键盘,每个数码管显示值可为 0~F 共 16 个数。 实验具体内容如下: 将键盘进行编号,记作 0~F,当按下其中一个按键时,将该按键对应的编号在一个数码 管上显示出来,当再按下一个按键时,便将这个按键的编号在下一个数码管上显示出来,数 码管上可以显示最近 4 次按下的按键编号。 五、实验单元电路及连线 矩阵键盘及数码管显示单元

图1 键盘及数码管单元电路 实验连线 图2实验连线图 六、实验说明 1. 由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动。抖动时间的长短由按键的机械特性决定,一般为 5~10ms。这是一个很重要的时间参数,在很多场合都要用到。 键抖动会引起一次按键被误读多次。为了确保 CPU 对键的一次闭合仅做一次处理,必须去除键抖动。在键闭合稳定时,读取键的状态,并且必须判别;在键释放稳定后,再作处理。按

矩阵键盘电路设计

课程设计 题目矩阵键盘电路设计教学院计算机学院 专业计算机应用技术班级 姓名 指导教师 2010 年01 月12 日

前言.................................................................... 第一章需求分析......................................................... 功能描述......................................................... 功能分析......................................................... 第二章系统的原理及分析................................................. 用到的知识点的介绍,知识点使用的总体思路 第三章详细设计......................................................... 硬件设计 系统结构图,元器件的选择等 软件设计 所设计的软件关键模块的程序流程 第四章测试............................................................ 运行结果分析等 第五章总结............................................................. 参考文献................................................................ 附录 关键程序代码........................................................

矩阵键盘的工作原理和扫描确认方式

9.3.1 矩阵键盘的工作原理和扫描确认方式 来源:《AVR单片机嵌入式系统原理与应用实践》M16华东师范大学电子系马潮 当键盘中按键数量较多时,为了减少对I/O 口的占用,通常将按键排列成矩阵形式,也称为行列键盘,这是一种常见的连接方式。矩阵式键盘接口见图9-7 所示,它由行线和列线组成,按键位于行、列的交叉点上。当键被按下时,其交点的行线和列线接通,相应的行线或列线上的电平发生变化,MCU 通过检测行或列线上的电平变化可以确定哪个按键被按下。 图9-7 为一个 4 x 3 的行列结构,可以构成12 个键的键盘。如果使用 4 x 4 的行列结构,就能组成一个16 键的键盘。很明显,在按键数量多的场合,矩阵键盘与独立式按键键盘相比可以节省很多的I/O 口线。 矩阵键盘不仅在连接上比单独式按键复杂,它的按键识别方法也比单独式按键复杂。在矩阵键盘的软件接口程序中,常使用的按键识别方法有行扫描法和线反转法。这两种方法的基本思路是采用循环查循的方法,反复查询按键的状态,因此会大量占用MCU 的时间,所以较好的方式也是采用状态机的方法来设计,尽量减少键盘查询过程对MCU 的占用时间。 下面以图9-7 为例,介绍采用行扫描法对矩阵键盘进行判别的思路。图9-7 中,PD0、PD1、PD2 为3 根列线,作为键盘的输入口(工作于输入方式)。PD3、PD4、PD5、PD6 为4根行线,工作于输出方式,由MCU(扫描)控制其输出的电平值。行扫描法也称为逐行扫描查询法,其按键识别的过程如下。 √将全部行线PD3-PD6 置低电平输出,然后读PD0-PD2 三根输入列线中有无低电平出现。只要有低电平出现,则说明有键按下(实际编程时,还要考虑按键的消抖)。如读到的都是高电平,则表示无键按下。 √在确认有键按下后,需要进入确定具体哪一个键闭合的过程。其思路是:依

微机原理课题设计实验报告材料之矩阵式键盘数字密码锁

微机系统与应用课程设计报告 班级: 学号: 姓名: 实验地点:E楼Ⅱ区311 实验时间:2013.3.4-3.9

矩阵式键盘数字密码锁设计 一 . 实验目的 1.掌握微机系统总线与各芯片管脚连接方法,提高接口扩展硬件电路的连 接能力。 2.初步掌握键盘扫描,密码修改和计时报警程序的编写方法。 3.掌握通过矩阵式键盘扫描实现密码锁功能的设计思路和实现方法。二.实验内容 矩阵式键盘数字密码锁设计,根据设定好的密码,采用4x4矩阵键盘实现密码的输入功能。当密码输入正确之后,锁就打开(绿灯亮),10秒之后,锁自动关闭(红灯亮);如果连续输入三次密码不正确,就锁定按键5秒钟,同时发出报警(黄灯闪),5秒后,解除按键锁定,恢复密码输入。 数字密码锁操作键盘参考上面设定,也可以自行设计键盘。用户初始密码为“123456”,系统加电运行后,密码锁初始状态为常闭(红灯亮),用户可以选择开锁或修改密码: 如果选择开锁就按“Open”键,系统提示输入密码,输入用户密码+“#”键后,如果密码正确,就打开锁(绿灯亮),系统等待10秒,然后重新关闭密码锁,若密码错,提示重新输入,连续三次错误,提示警告词同时报警(黄灯闪),锁定键盘5秒,然后重新进入初始状态; 如果选择修改密码就按”Modify Secret”键,系统提示输入旧密码,输入旧密码+“#”键后,如果正确,系统提示输入新密码,输入新密码+“#”后,新密码起效,重新进入初始状态;如果旧密码错,不能修改密码,密码锁直接进入初始状态。 三.实验基本任务 1)具有开锁、修改用户密码等基本的密码锁功能。 2)对于超过3次密码密码错误,锁定键盘5秒,系统报警。5秒后解除锁定。 4)通过LCD字符液晶和LED指示灯(红,绿,黄)实时显示相关信息。 5)用户密码为6位数字,显示采用“*”号表示。 6)码锁键盘设计合理,功能完善,方便用户使用。 本次实验还做了附加的任务

各种笔记本电脑键盘切换键FN键的方法

各种笔记本电脑键盘切换键FN键的方法 神舟笔记本键盘的:R.T.F.G.V.B键都打不出来字,打出来就是数字,切换方法: 数即开启/关闭数字小键盘的方法:按下fn键+insert键(按下fn键的同时按下insert键)或者fn键+NumLOcK键(按下fn键的同时按下NumLOcK键)fn 键在键盘的左下角;另外两个键在键盘的右上角部位或左上角部位。 常见品牌笔记本电脑与投影仪图像切换功能键列表: IBM FN+F7:屏幕切换(只有在有外接的显示器时有用) 联想Leovo FN+F3:显示器切换 华硕ASUS FN+F10:切换显示器 夏普SHARP FN+F3:显示器切换(FN+F5) 戴尔Dell FN+F8:切换显示器 三星SAMSUNG FN+F4:切换显示器(P25为:FN+F7) 惠普HP FN+F4:切换显示器 东芝TOSHIBA FN+F5:切换显示器 NEC FN+F3:切换显示器 笔记本电脑Fn之用法集锦 笔记本的FN键和Ctrl键一样,都是组合键。当和其他键使用时产生强大的功能。FN可以与那些键组合使用呢?产生什么功能呢?现在为你逐一介绍! FN组合键---IBM篇 每个牌子的的FN组合键都不相同,今期我们先介绍IBM牌子的FN组合键及其功能! FN+F3:关闭屏幕显示,触动鼠标或任意键可以重新打开屏幕。 FN+F4:将系统设置待机状态。 FN+F5:打开/关闭无线通讯功能(只可以在WINDOWS下使用) FN+F7:屏幕切换(只有在有外接的显示器时有用) FN+F8:拉申或者停止拉申屏幕(在分辨率小于最大分辨率时使用) FN+F12:将系统设置休眠状态 FN+HOME/END:增加/减低屏幕亮度 FN+PAGEUP:打开屏幕顶部的ThinkLight照明灯 FN+空格:降低屏幕分辨率(只有在WINDOWS下有效) 注:FN+F5则是自T40和X31起新增的功能,按下之后会出现ThinkPad风格的无线设备开关界面,允许你选择无线网卡和蓝牙设备的开关,对于没有安装蓝牙模块的机型,则蓝牙选项不会出现,如果连无线网卡模块也没有,则这个界面不会出现,按下FN+F5不会有任何反应 FN组合键---联想LEOVO篇 联想的FN组合键比较简单,但是它的图标表示比较有个性,即使是笔记本老手都有可能看不懂某些快捷键的图表哦。

矩阵式键盘的结构与工作原理

矩阵式键盘的结构与工作原理 在键盘中按键数量较多时为了减少I/O 口的占用通常将按键排列成矩阵形式如图1 所 示在矩阵式键盘中每条水平线和垂直线在交叉处不直接连通而是通过一个按键加以连 接这样一个端口如P1 口就可以构成4*4=16 个按键比之直接将端口线用于键盘 多出了一倍而且线数越多区别越明显比如再多加一条线就可以构成20 键的键盘而 直接用端口线则只能多出一键9 键由此可见在 需要的键数比较多时采用矩阵法来做键盘是合理的 矩阵式结构的键盘显然比直接法要复杂一些识别也要复杂一些上图中列线通过电 阻接正电源并将行线所接的单片机的I/O 口作为输出端而列线所接的I/O 口则作为输入这样当按键没有按下时所有的输出端都是高电平代表无键按下行线输出是低电平 一旦有键按下则输入线就会被拉低这样通过读入输入线的状态就可得知是否有键按下 了具体的识别及编程方法如下所述 矩阵式键盘的按键识别方法 确定矩阵式键盘上何键被按下介绍一种行扫描法 行扫描法 行扫描法又称为逐行或列扫描查询法是一种最常用的按键识别方法如上图所示 键盘介绍过程如下 判断键盘中有无键按下将全部行线Y0-Y3 置低电平然后检测列线的状态只要有一 列的电平为低则表示键盘中有键被按下而且闭合的键位于低电平线与4 根行线相交叉的4 个按键之中若所有列线均为高电平则键盘中无键按下 判断闭合键所在的位置在确认有键按下后即可进入确定具体闭合键的过程其方法 是依次将行线置为低电平即在置某根行线为低电平时其它线为高电平在确定某根行 线位置为低电平后再逐行检测各列线的电平状态若某列为低则该列线与置为低电平的 行线交叉处的按键就是闭合的按键 下面给出一个具体的例子 图仍如上所示8031 单片机的P1 口用作键盘I/O 口键盘的列线接到P1 口的低4 位 键盘的行线接到P1 口的高4 位列线P1.0-P1.3 分别接有4 个上拉电阻到正电源+5V 并把列线P1.0-P1.3 设置为输入线行线P1.4-P.17 设置为输出线4 根行线和4 根列线形成16 个相交点 检测当前是否有键被按下检测的方法是P1.4-P1.7 输出全0 读取P1.0-P1.3 的状态 若P1.0-P1.3 为全1 则无键闭合否则有键闭合 去除键抖动当检测到有键按下后延时一段时间再做下一步的检测判断 若有键被按下应识别出是哪一个键闭合方法是对键盘的行线进行扫描P1.4-P1.7 按下 述4 种组合依次输出 P1.7 1 1 1 0 P1.6 1 1 0 1 P1.5 1 0 1 1 P1.4 0 1 1 1 在每组行输出时读取P1.0-P1.3 若全为1 则表示为0 这一行没有键闭合否则 有键闭合由此得到闭合键的行值和列值然后可采用计算法或查表法将闭合键的行值和列值转换成所定义的键值 为了保证键每闭合一次CPU 仅作一次处理必须却除键释放时的抖动__

单片机实验报告——矩阵键盘数码管显示

单片机实验报告 信息处理实验 实验二矩阵键盘 专业:电气工程及其自动化 指导老师:高哲 组员:明洪开张鸿伟张谦赵智奇 学号:152703117 \152703115\152703118\152703114室温:18 ℃日期:2017 年10 月25日

矩阵键盘 一、实验内容 1、编写程序,做到在键盘上每按一个键(0-F)用数码管将该建对应的名字显示出来。按其它键没有结果。 二、实验目的 1、学习独立式按键的查询识别方法。 2、非编码矩阵键盘的行反转法识别方法。 3、掌握键盘接口的基本特点,了解独立键盘和矩阵键盘的应用方法。 4、掌握键盘接口的硬件设计方法,软件程序设计和贴士排错能力。 5、掌握利用Keil51软件对程序进行编译。 6、会根据实际功能,正确选择单片机功能接线,编制正确程序。对实验结果 能做出分析和解释,能写出符合规格的实验报告。 三、实验原理 1、MCS51系列单片机的P0~P3口作为输入端口使用时必须先向端口写入“1”。 2、用查询方式检测按键时,要加入延时(通常采用软件延时10~20mS)以消除抖动。 3、识别键的闭合,通常采用行扫描法和行反转法。行扫描法是使键盘上某一行线为低电平,而其余行接高电平,然

后读取列值,如读列值中某位为低电平,表明有键按下,否则扫描下一行,直到扫完所有行。 行反转法识别闭合键时,要将行线接一并行口,先让它工作在输出方式,将列线也接到一个并行口,先让它工作于输入方式,程序使CPU通过输出端口在各行线上全部送低电平,然后读入列线值,如此时有某键被按下,则必定会使某一列线值为0。然后,程序对两个并行端口进行方式设置,使行线工作于输入方式,列线工作于输出方式,并将刚才读得的列线值从列线所接的并行端口输出,再读取行线上输入值,那么,在闭合键所在行线上的值必定为0。这样,当一个键被接下时,必定可以读得一对唯一的行线值和列线值。 由于51单片机的并口能够动态地改变输入输出方式,因此,矩阵键盘采用行反转法识别最为简便。 行反转法识别按键的过程是:首先,将4个行线作为输出,将其全部置0,4个列线作为输入,将其全部置1,也就是向P1口写入0xF0;假如此时没有人按键,从P1口读出的值应仍为0xF0;假如此时1、4、7、0四个键中有一个键被按下,则P1.6被拉低,从P1口读出的值为0xB0;为了确定是这四个键中哪一个被按下,可将刚才从P1口读出的数的低四位置1后再写入P1口,即将0xBF写入P1口,使P1.6为低,其余均为高,若此时被按下的键是“4”,则P1.1被拉低,从P1口读出的值为0xBE;这样,当只有一个键被按下时,每一个键只有唯一的反转码,事先为12个键的反转码建一个表,通过查表就可知道是哪个键被按下了。

笔记本电脑键盘功能详解复习课程

笔记本电脑键盘功能详解 F1: 如果你处在一个选定的程序中而需要帮助,那么请按下F1。 如果你正在对某个程序进行*作,而想得到Windows帮助,则需要按下Win+F1。按下Shift+F1,会出现"What's This?"的帮助信息。 如果现在不是处在任何程序中,而是处在资源管理器或桌面,那么按下F1就会出现Windows的帮助程序。 F2:如果在资源管理器中选定了一个文件或文件夹,按下F2则会对这个选定的文件或文件夹重命名。F3:在资源管理器或桌面上按下F3,则会出现“搜索文件”的窗口,因此如果想对某个文件夹中的文件进行搜索,那么直接按下F3键就能快速打开搜索窗口,并且搜索范围已经默认设置为该文件夹。同样,在Windows Media Player中按下它,会出现“通过搜索计算机添加到媒体库”的窗口。 F4:这个键用来打开IE中的地址栏列表; 要关闭IE窗口,可以用Alt+F4组合键。 F5:用来刷新IE或资源管理器中当前所在窗口的内容。 F6:可以快速在资源管理器及IE中定位到地址栏。 F7:在Windows中没有任何作用。不过在DOS窗口中,它是有作用的,试试看吧! F8:在启动电脑时,可以用它来显示启动菜单。有些电脑还可以在电脑启动最初按下这个键来快速调出启动设置菜单,从中可以快速选择是软盘启动,还是光盘启动,或者直接用硬盘启动,不必费事进入BIOS 进行启动顺序的修改。另外,还可以在安装Windows时接受微软的安装协议。 F9:在Windows中同样没有任何作用。但在Windows Media Player中可以用来快速降低音量。 F10:用来激活Windows或程序中的菜单,按下Shift+F10会出现右键快捷菜单。和键盘中Application 键的作用是相同的。而在Windows Media Player中,它的功能是提高音量。 F11:可以使当前的资源管理器或IE变为全屏显示。 F12:在Windows中同样没有任何作用。但在Word中,按下它会快速弹出另存为文件的窗口。

单片机 矩阵键盘实验 实验报告

实验五矩阵键盘实验 一、实验内容 1、编写程序,做到在键盘上每按一个数字键(0-F)用发光二极管将该代码显示出来。按其它键退出。 2、加法设计计算器,实验板上有12个按键,编写程序,实现一位整数加法运算功能。可定义“A”键为“+”键,“B”键为“=”键。 二、实验目的 1、学习独立式按键的查询识别方法。 2、非编码矩阵键盘的行反转法识别方法。 三、实验说明 1、MCS51系列单片机的P0~P3口作为输入端口使用时必须先向端口写入“1”。 2、用查询方式检测按键时,要加入延时(通常采用软件延时10~20mS)以消除抖动。 3、识别键的闭合,通常采用行扫描法和行反转法。行扫描法是使键盘上某一行线为低电平,而其余行接高电平,然后读取列值,如读列值中某位为低电平,表明有键按下,否则扫描下一行,直到扫完所有行。 行反转法识别闭合键时,要将行线接一并行口,先让它工作在输出方式,将列线也接到一个并行口,先让它工作于输入方式,程序使CPU通过输出端口在各行线上全部送低电平,然后读入列线值,如此时有某键被按下,则必定会使某一列线值为0。然后,程序对两个并行端口进行方式设置,使行线工作于输入方式,列线工作于输出方式,并将刚才读得的列线值从列线所接的并行端口输出,再读取行线上输入值,那么,在闭合键所在行线上的值必定为0。这样,当一个键被接下时,必定可以读得一对唯一的行线值和列线值。 由于51单片机的并口能够动态地改变输入输出方式,因此,矩阵键盘采用行反转法识别最为简便。 行反转法识别按键的过程是:首先,将4个行线作为输出,将其全部置0,4个列线作为输入,将其全部置1,也就是向P1口写入0xF0;假如此时没有人按键,从P1口读出的值应仍为0xF0;假如此时1、4、7、0四个键中有一个键被按下,则P1.6被拉低,从P1口读出的值为0xB0;为了确定是这四个键中哪一个被按下,可将刚才从P1口读出的数的低四位置1后再写入P1口,即将0xBF写入P1口,使P1.6为低,其余均为高,若此时被按下的键是“4”,则P1.1被拉低,从P1口读出的值为0xBE;这样,当只有一个键被按下时,每一个键只有唯一的反转码,事先为12个键的反转码建一个表,通过查表就可知道是哪个键被按下了。 四、接线方法 键盘连接成4×4的矩阵形式,占用单片机P1口的8根线,行信号是P1.0-1.3,列信号是P1.4-1.7。

笔记本键盘按键错乱

笔记本键盘按键错乱,笔记本按键错位的解决方法 今天我的笔记本键盘按键突然失灵,键盘数字与字母错位,U变成4,I变成5,O变成6,J变成1,K变成2,L变成3,M变成0,就这几个字母,弄得我打不出字来。上网查了一下,才知道原来是启用了一个键盘的功能键,启动了笔记本上的小键盘。变换的键就是我笔记本上设定的小键盘。于是按NumLk键之后,失灵的那些键就都恢复了。(有的笔记本是按Fn+NumLk或者Shift+Numlk) 后来想了一下,我以前自带键盘输入都好好的,只是昨天一个很好的朋友过来了,他有一个无线键盘鼠标,拿到了我的笔记本上面试用,第二天笔记本自带的键盘就出现了输入数字与字母错位的这个情况。我想可能是外置键盘跟笔记本自带键盘发生的冲突,然后就自动启动了外置键盘,所以按Fn+NumLk功能键就恢复了,这个方法对于那些笔记本自带键盘然后用外置无线键盘或USB外置键盘,造成的键盘按键数字与字母失灵错位的问题解决有效可行。 相关资料: Fn键的功能就是笔记本键盘一个组合功能键,用它和一些特定的键配合,可以快速实现一些常用操作,例如:音量调整、屏幕亮度调整,小键盘区开启等功能,方便大家使用。 Fn键和Ctrl,Alt,Shift键一样,总要和其他键一起按下。比如笔记本电脑键盘没有台式机键盘的数字小键盘,于是用一部分字母键代替数字小键盘,当按下numlock键打开数字键盘功能后,按Fn+M相当于数字0,按Fn+J,K,L相当于数字1,2,3,按Fn+U,I,O,P相当于4,5,6,*等等。这是通用的组合,有些笔记本上还有一些本品牌特别设计的组合,只有安装了驱动程序才起作用,比如在Dell笔记本上按Fn+Esc使系统休眠,Fn+F10弹出光驱,Fn+上箭头提高屏幕亮度,在IBM笔记本上按Fn+F2打开/关闭屏幕显示等等。具体那种笔记本键盘的Fn实现那种功能,键盘上一般有标注。Fn键一般是蓝色的,那么当其他键上有蓝色的标注时,例如刚才说的J,K,L键上标着蓝色的1,2,3字样,那么按Fn 加那个键就能打出上面标为蓝色的字符,或者实现相应的功能。 各厂商的Fn组合定义是不一样的,不过Fn组合键的功能一般都是硬件级的支持,不装驱动就可以使用,不过有些功能也需要软件支持如休眠。具体的组合及对应的功能可以参考你的说明书,没有说明书也可以去官方网站下载。如果嫌麻烦也可以直接看键盘按键尝试。一般特定功能都定义在F1~F12,键帽上印有具体功能的图示。如:印有扬声器的表示音量调整(一般有三个,增大、减小、静音切换),印有太阳的是亮度调整(一般有两个、增亮、减暗),印有月亮的是休眠。不同品牌图示稍有不同,功能键位置也可能有差异。功能多少也不完全一样键盘右手区的小键盘区可以通过Fn和NumLock的组合开启,开启后,可以模拟标准键盘的小键盘区,方便财务工作者或其他对数字输入需求很大的人,不过此时被占用的键就不能正常输入原有字符了,直至关闭小键盘区为止。

修订矩阵键盘的工作原理

修订矩阵键盘的工作原 理 TPMK standardization office【 TPMK5AB- TPMK08- TPMK2C- TPMK18】

4×4矩阵键盘的工作原理与编程51/AVR单片机学习开发系统上使用数码管显示4×4矩阵键盘的键值。 一、硬件工作原理的简单介绍 该实验使用的8位数码管显示电路和4×4矩阵键盘电路。现将这二部分的电路工作原理进行简单的介绍: 1、4×4矩阵键盘的工作原理 矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是4×4个。这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率。 图1为矩阵键盘电路图,行线接P1.4-P1.7,列线接P1.0-P1.3。 图1 矩阵键盘电路 图2 按键排列 2、数码管动态扫描显示电路 在ME300B开发系统中,采用了8位数码管动态扫描显示。它将所有数码管的8个段线相应地并接在一起,并接到 AT89S51的P0口,由P0口控制字段输出。而

各位数码管的共阳极由AT89S51的P2口控制Q20-Q27来实现8位数码管的位输出控制。 这样,对于一组数码管动态扫描显示需要由两组信号来控制:一组是字段输出口输出的字形代码,用来控制显示的字形,称为段码;另一组是位输出口输出的控制信号,用来选择第几位数码管工作,称为位码。 由于各位数码管的段线并联,段码的输出对各位数码管来说都是相同的。因此,同一时刻如果各位数码管的位选线都处于选通状态的话,8位数码管将显示相同的字符。若要各位数码管能够显示出与本位相应的字符,就必须采用扫描显示方式。即在某一时刻,只让某一位的位选线处于导通状态,而其它各位的位选线处于关闭状态。同时,段线上输出相应位要显示字符的字型码。这样同一时刻,只有选通的那一位显示出字符,而其它各位则是熄灭的,如此循环下去,就可以使各位数码管显示出将要显示的字符。 虽然这些字符是在不同时刻出现的,而且同一时刻,只有一位显示,其它各位熄灭,但由于数码管具有余辉特性和人眼有视觉暂留现象,只要每位数码管显示间隔足够短,给人眼的视觉印象就会是连续稳定地显示。 图3 数码管电路 数码管不同位显示的时间间隔可以通过调整延时程序的延时长短来完成。数码管显示的时间间隔也能够确定数码管显示时的亮度,若显示的时间间隔长,显示时数码管的亮度将亮些,若显示的时间间隔短,显示时数码管的亮度将暗些。若显示

笔记本电脑键盘各个键的作用

笔记本电脑各个键的作用 F1帮助F2改名F3搜索F4地址F5刷新F6切换F10菜单CTRL+A全选CTRL+C复制CTRL+X剪切CTRL+V粘贴CTRL+Z撤消CTRL+O打开SHIFT+DELETE永久删除DELETE删除ALT+ENTER属性ALT+F4关闭CTRL+F4关闭ALT+TAB切换ALT+ESC切换ALT+空格键窗口菜单CTRL+ESC开始菜单 拖动某一项时按CTRL复制所选项目拖动某一项时按CTRL+SHIFT创建快捷方式将光盘插入到CD-ROM驱动器时按SHIFT键阻止光盘自动播放Ctrl+1,2,3...切换到从左边数起第1,2,3...个标签Ctrl+A全部选中当前页面内容Ctrl+C复制当前选中内容Ctrl+D打开“添加收藏”面版(把当前页面添加到收藏夹中) Ctrl+E打开或关闭“搜索”侧边栏(各种搜索引擎可选) Ctrl+F打开“查找”面版Ctrl+G打开或关闭“简易收集”面板Ctrl+H打开“历史”侧边栏Ctrl+I打开“收藏夹”侧边栏/另:将所有垂直平铺或水平平铺或层叠的窗口恢复Ctrl+K关闭除当前和锁定标签外的所有标签Ctrl+L打开“打开”面版(可以在当前页面打开Iternet 地址或其他文件...) Ctrl+N新建一个空白窗口(可更改,Maxthon选项→标签→新建) Ctrl+O打开“打开”面版(可以在当前页面打开Iternet 地址或其他文件...) Ctrl+P打开“打印”面板(可以打印网页,图片什么的...) Ctrl+Q打开“添加到过滤列表”面板(将当前页面地址发送到过滤列表) Ctrl+R刷新当前页面Ctrl+S打开“保存网页”面板(可以将当前页面所有内容保存下来) Ctrl+T垂直平铺所有窗口Ctrl+V粘贴当前剪贴板内的内容Ctrl+W关闭当前标签(窗口) Ctrl+X剪切当前选中内容(一般只用于文本操作) Ctrl+Y重做刚才动作(一般只用于文本操作) Ctrl+Z撤消刚才动作(一般只用于文本操作) Ctrl+F4关闭当前标签(窗口) Ctrl+F5刷新当前页面Ctrl+F6按页面打开的先后时间顺序向前切换标签(窗口) Ctrl+F11隐藏或显示菜单栏Ctrl+Tab以小菜单方式向下切换标签(窗口) Ctrl+Enter域名自动完成(内容可更改,Maxthon选项→地址栏→常规)/另:当输入焦点在搜索栏中时,为高亮关键字Ctrl+拖曳保存该链接的地址或已选中的文本或指定的图片到一个文件夹中(保存目录可更改,Maxthon选项→保存) Ctrl+小键盘'+'当前页面放大20% Ctrl+小键盘'-'当前页面缩小20% Ctrl+小键盘'*'恢复当前页面的缩放为原始大小Ctrl+Alt+S自动保存当前页面所有内容到指定文件夹(保存路径可更改,Maxthon选项→保存) Ctrl+Shift+小键盘'+'所有页面放大20% Ctrl+Shift+小键盘'-'所有页面缩小20% Ctrl+Shift+F输入焦点移到搜索栏Ctrl+Shift+G关闭“简易收集”面板Ctrl+Shift+H打开并激活到你设置的主页 Ctrl+Shift+N在新窗口中打开剪贴板中的地址,如果剪贴板中为文字,则调用搜索引擎搜索该文字(搜索引擎可选择,Maxthon选项→搜索) Ctrl+Shift+S打开“保存网页”面板(可以将当前页面所有内容保存下来,等同于Ctrl+S) Ctrl+Shift+W关闭除锁定标签外的全部标签(窗口)

4×4矩阵键盘的工作原理

4×4矩阵键盘的工作原理与编程 51/AVR单片机学习开发系统上使用数码管显示4×4矩阵键盘的键值。 一、硬件工作原理的简单介绍 该实验使用的8位数码管显示电路和4×4矩阵键盘电路。现将这二部分的电路工作原理进行简单的介绍: 1、4×4矩阵键盘的工作原理 矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是4×4个。这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率。 图1为矩阵键盘电路图,行线接P1.4-P1.7,列线接P1.0-P1.3。 图1矩阵键盘电路 图2按键排列 2、数码管动态扫描显示电路 在ME300B开发系统中,采用了8位数码管动态扫描显示。它将所有数码管的8个段线相应地并接在一起,并接到AT89S51的P0口,由P0口控制字段输出。而各位数码管的共阳极由AT89S51的P2口控制Q20-Q27来实现8位数码管的位输出控制。 这样,对于一组数码管动态扫描显示需要由两组信号来控制:一组是字段输出口输出的字形代码,用来控制显示的字形,称为段码;另一组是位输出口输出的控制信号,用来选择第几位数码管工作,称为位码。 由于各位数码管的段线并联,段码的输出对各位数码管来说都是相同的。因此,同一时刻如果各位数码管的位选线都处于选通状态的话,8位数码管将显示相同的字符。若要各位数码管能够显示出与本位相应的字符,就必须采用扫描显示方式。即在某一时刻,只让某一位的位选线处于导通状态,而其它各位的位选线处于关闭状态。同时,段线上输出相应位要显示字符的字型码。这样同一时刻,只有选通的那一位显示出字符,而其它各位则是熄灭的,如此循环下去,就可以使各位数码管显示出将要显示的字符。 虽然这些字符是在不同时刻出现的,而且同一时刻,只有一位显示,其它各位熄灭,但由于数码管具有余辉特性和人眼有视觉暂留现象,只要每位数码管显示间隔足够短,给人眼的视觉印象就会是连续稳定地显示。 图3数码管电路 数码管不同位显示的时间间隔可以通过调整延时程序的延时长短来完成。数码管显示的时间间隔也能够确定数码管显示时的亮度,若显示的时间间隔长,显示时数码管的亮度将亮些,若显示的时间间隔短,显示时数码管的亮度将暗些。若显示的时间间隔过长的话,数码管显示时将产生闪烁现象。所以,在调整显示的时间间隔时,即要考虑到显示时数码管的亮度,又要数码管显示时不产生闪烁现象。

键盘实验报告

嵌入式实验报告 键盘实验报告 指导教师:高金山 实验者:13410801 房皓13410802 张耀荣 一、实验目的: 1.了解直接输入键盘与矩阵键盘的原理 2.了解键盘寄存器的功能 3.掌握键盘输入的编程方法 二、实验要求: 1.对所有16个按键进行编码,当按键后,在七段数码管上显示对应的键盘编码。(可 以使用一个或两个七段数码管) 2.对所有16个按键进行编码,当按键后,在八个LED上显示对应的键盘编码。 三、实验内容: 1.在键盘寄存器KPC中,使能矩阵键盘, 2.必须在使用前添加下面语句: #define KAPS_VALUE (*((volatile unsigned char *)(0x41500020))) 3.接下来在button_statusFetch函数中定义变量,其中j用来获取矩阵键盘的键值, 具体如下: char j = 0; j = KAPS_VALUE ; 4.最后,在直入键盘的分支语句后添加矩阵键盘的分支代码段,即switch(j){}代码 段: switch (j) { case 0x00: //key-press 5 kbd_buff=0x8F12; LED_CS2 = kbd_buff; Delay(400); break; …… 四、程序编辑: ;post_initGpio.s

EXPORT post_initGpio AREA post_initGpio ,CODE ,READONLY ldr r1,=0x40e00000 ;GPSR0 MOV R0,#0x3000 ;GPIO<13:12> STR R0,[R1,#0x18] ;GPCR0 MOV R0,#0x800 ;GPIO<11> STR R0,[R1,#0x24] ;GAFR0_L////////////////////////////////////////////////// MOV R0,#0x80000000 ;GPIO<15>:F2:nCS1 STR R0,[R1,#0x54] ;GAFR0_U ldr R0,=0x10 ;0xa5000010 STR R0,[R1,#0x58] ;GPDR0///////////////////////////////////////////////// ldr R0,=0xc1a08000 ;GPIO<15>:nCS1 STR R0,[R1,#0xc] ;GPSR1 MOV R0,#0 STR R0,[R1,#0x1c] ;GPCR1 MOV R0,#0 STR R0,[R1,#0x28] ;GAFR1_L LDR R0,=0xc9c ;0xa9558 STR R0,[R1,#0x5c] ;GAFR1_U LDR R0,=0xca0 ;0xaaa590aa STR R0,[R1,#0x60] ;GPDR1 LDR R0,=0xca4 ;0xfccf0382 STR R0,[R1,#0x10]

相关文档
最新文档