51单片机学习教程第5章 按键
《单片机原理及应用》第5章 P0~P3口应用基础

3、矩阵键盘:
5.4 实验与设计
• 实验1 闸刀型开关输入/8段LED静态显示输出
5.4 实验与设计
• 设计1:LED模拟交通
• 6个灯—南北:黄、红、绿
•
东西:黄、红、绿
• (红、绿是10秒,黄闪烁2秒)
• 2个应急开关:南北绿或东西绿
• 画出硬件设计,编出模拟程序。
实验2 并行接口键盘/LED指示灯输出
同,每个显示缓冲器对应着一位显示器。
(3)查表并操作相应的显示器
• MOV • MOV • MOVC
A,#data DPTR,#DSPTAB A,@A+DPTR
• (4)显示子程序的调用
3、静态显示示例
• 【例5-4】利用51单片机的并行口作为静态显示的控制 口的示例
请修改:
(1)显示“12”; (2)轮流显示“12”、“--”、“AB”; (3)计数器:从00开始,1S加1。
设计1 计时秒表的设计
• (1)两位LED显示 • 可以显示00~99秒; • (2)两个按键 • 分别为启动/停止键、清零键。 • 要求:设计硬件电路,编写出软件程序(延时由软件
形成)。
设计2 模拟交通信号灯控制装置的设计
• (1)6个发光二极管模拟交通灯 • 南北:黄、红、绿 ;东西:黄、红、绿。 • (2)2个应急开关 • 南北绿东西红或东西绿南北红。 • 要求:设计硬件模拟电路,编写软件程序。
• 单片机原理及应用(第4版)
• 姜志海 王蕾 姜沛勋 编著
• 电子工业出版社
第5章 P0~P3口应用基础
• 片内并行I/O口的应用。 • 5.1 P0~P3口概述 • 5.2 输出操作 • 5.3 输入操作 • 5.4 实验与设计
51单片机行列式键盘程序

扫描法:以4*4矩阵按键为例,将全部行线置低电平,然后检测列线的状态。
只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。
若所有列线均为高电平,则键盘中无键按下。
判断闭合键所在的位置:在确认有键按下后,即可进入确定具体闭合键的过程。
其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。
在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。
若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。
#include "reg52.h"#define uchar unsigned char#define uint unsigned intvoid Delay_1ms(uint i);uchar keyScan(void);void Main(void){uchar keyValue;//存放键值,第一行的第一个为1第二行第一个为5,依次排列while(1){P1 = 0xf0;if(P1 != 0xf0)//判断是否有键按下{Delay_1ms(20);//消除键抖动if(P1 != 0xf0)//在此判断是否有键按下{keyValue = keyScan(); //逐行扫描,判断是哪个按键按下}}//此处用于对不同键值做出不同反应}}uchar keyScan(void){uchar temp,i,j,lineSelect[4]={0xef, 0xdf, 0xbf, 0x7f}; //数组用于线选for(j=0;j<4;j++)//循环四次用于四个行线依次拉低{P1=lineSelect[j];//每根行线依次拉低temp=1;for(i=0;i<4;i++)//循环四次用于判断哪列有键按下{if(!(P1&temp))//判断此列是否有键按下return (i+j*4);//返回键值,行*4+列,行和列的交叉处temp<<=1;//将目标移为下一列}}}void Delay_1ms(uint i)//延时函数{uchar x,j;for(j=0;j<i;j++)for(x=0;x<=148;x++);}线翻转法:Step 1:将列线作为输出线,行线作为输入线。
第5章 MCS–51单片机的接口与应用 99页 5.8M

(1) 用键盘连接的I/O线的二进制组合表示键码。例如用4行、
4列线构成的16个键的键盘,可使用一个8位I/O口线的高、低4 位口线的二进制数的组合表示16个键的编码,如图5.4(a)所示。 各键相应的键值为88H、84H、82H、81H、48H、44H、42H、 41H、28H、24H、22H、21H、18H、14H、12H、11H。这种键 值编码软件较为简单直观,但离散性大,不便安排散转程序的 入口地址。
第5章 MCS–51单片机的接口与应用 JNB ACC.2,K2 JNB ACC.3,K3 JNB ACC.4,K4 JNB ACC.5,K5 JNB ACC.6,K6 ;检测2号键是否按下,按下转 ;检测3号键是否按下,按下转 ;检测4号键是否按下,按下转 ;检测5号键是否按下,按下转 ;检测6号键是否按下,按下转
;0号键功能程序
;0号键功能程序执行完返回 ;0号键功能程序
JMP START
……………………… PROM7: ……………………… JMP START …
;1号键功能程序执行完返回
;7号键功能程序 ;7号键功能程序执行完返回
第5章 MCS–51单片机的接口与应用
5.1.4 行列式键盘
行列式键盘又叫矩阵式键盘。用I/O口线组成行、列结构, 按键设置在行列的交点上。例如4×4的行列结构可组成16个键 的键盘。因此,在按键数量较多时,可以节省I/O口线。 1.行列式键盘的接口 行列式键盘的接口方法有许多,例如直接接口于单片机的 I/O口上;利用扩展的并行I/O接口;用串行口扩展并行I/O口接 口;利用一种可编程的键盘、显示接口芯片8279进行接口等。 其中,利用扩展的并行I/O接口方法方便灵活,在单片机应用系
MOVX @DPTR,A
51单片机C教程键盘专题学习笔记(原创)-图文

51单片机C教程键盘专题学习笔记(原创)-图文第五课键盘专题一、键盘分为编码键盘和非编码键盘:键盘上闭合键的识别又专用的硬件编码器实现,并产生键编码号或键值的称为编码键盘,如计算机键盘。
靠软件编程来识别的键盘称为非编码键盘。
在单片机组成的各种系统中,用的较多的是非编码键盘。
非编码键盘又分为独立键盘和行列式(又称矩阵式)键盘。
二、独立键盘检测1. 弹性小按键(弹性小按键被按下时闭合,松手后自动断开;单片机的外围输入控制用小弹性按键较好)、贴片式小按键、自锁式小按键(自锁式按键按下时闭合且会自动锁住,只有再次按下时才弹起断开。
通常当做开关使用,比如TX-1C实验板上的电源开关)。
2. 单片机检测按键的原理3. 为什么单片机在检测键盘时需要去抖动操作?去抖动操作有哪些方法?通常我们用哪种方法?为什么?4. 编写单片机的键盘检测程序时,一般在检测按下时加入去抖动延时,检测松手时就不用加了(不过有加,会使程序显得更严密!)。
5. TX-1C实验板独立键盘与单片机连接原理图三、矩阵键盘检测1. 典型的“矩阵键盘与单片机”的接法2. TX-1C上的矩阵键盘模块3. 矩阵键盘的工作原理和检测方法四、键盘专题例程1. 在TX - 1C 实验板上,实现一个数码管变化范围为0~9,开始时显示0,当按下S2键一次,数值加1;当加到9时,数值回0重新计。
2. 用数码管的前两位显示一个十进制数,变化范围为00~59,开始时显示00;每按下S2键一次,数值加1;每按下S3键一次,数值减1;每按下S4键一次,数值归00;每按下S5键一次,利用定时器功能使数值开始自动每秒加1,再次按下S5键,数值停止自动加1,保持显示原数。
3. 在TX-1C实验板上实现如下描述:实验板上电时,数码管不显示,顺序按下矩阵键盘后,在数码管上依次显示0~F,6个数码管同时静态显示即可。
4. 按下16个矩阵键盘依次在数码管上显示1-16的平方。
如按下第一个显示1,第二个显示4...5. 数码管前三位显示一个跑表,从000到999之间以1%秒速度运行,当按下第一个独立键盘时跑表停止,松开手后跑表继续运行。
51单片机教材(免费完整版)

单片机教程原作:进墨者目录单片机教程第一课:单片机概述 (2)单片机教程第二课:单片机的内部、外部结构(一) (2)单片机教程第三课:几个基本概念 (5)单片机教程第四课:第一个小程序 (8)单片机教程第五课:延时程序分析 (10)单片机教程第六课:单片机的内外部结构分析(四) (12)单片机教程第七课:单片机内部结构分析(五) (15)单片机教程第八课(寻址方式与指令系统) (19)单片机教程第九课:数据传递指令 (22)单片机教程第十课数据传递类指令指令 (25)单片机教程第十一课:算术运算类指令 (28)单片机教程第十二课:逻辑运算类指令: (32)单片机教程第十三课:逻辑与指令 (34)单片机教程第十四课:条件转移指令 (38)单片机教程第十五课:位及位操作指令 (41)单片机教程第十六课:计数器与定时器 (44)单片机教程第十七课:定时/计数器的方式控制字 (46)单片机教程第十八课:中断系统 (49)单片机教程第十九课:定时、中断练习一 (52)单片机教程第二十课:定时/计数器实验2 (57)单片机教程第二十一课:串行接口 (60)单片机教程第二十二课:串行口应用编程实例 (65)单片机教程第二十三课:LED数码显示器的连接与编程 (68)单片机教程第二十四课:动态扫描显示接口 (72)单片机教程第二十五课:键盘接口与编程 (78)单片机教程第二十六课:矩阵式键盘接口技术及编程 (83)单片机教程第二十七课:初学单片机几个不易掌握的概念 (87)单片机教程第二十八课:单片机音乐程序的设计与实验 (90)单片机教程第一课:单片机概述1、何谓单片机一台能够工作的计算机要有这样几个部份构成:CPU(进行运算、控制)、RAM(数据存储)、ROM(程序存储)、输入/输出设备(例如:串行口、并行输出口等)。
在个人计算机上这些部份被分成若干块芯片,安装一个称之为主板的印刷线路板上。
而在单片机中,这些部份,全部被做到一块集成电路芯片中了,所以就称为单片(单芯片)机,而且有一些单片机中除了上述部份外,还集成了其它部份如A/D,D/A等。
手把手教你学51单片机ppt课件

C/T
定时器或计数器选择位。该位被清零时用作定时器功能(内部系统时钟), 被置1用作计数器功能。
8
TMOD——定时器模式寄存器M1/M0工作模式
M1 M0 工作模式
描述
00
01 10 11
0
兼容8048单片机的13位定时器,THn的8位和TLn的5 位组成一个13位定时器。
1
THn和TLn组成一个16位的定时器。
14
15
2 IT1
1 IE0
0 IT0
7
TMOD—定时器模式寄存器的位分配(地址0x89、不可位寻址)
位
7
6
符号 GATE(T1) C/T(T1)
复位值
0
0
5 M1(T1)
0
4
3
2
M0(T1) GATE(T0) C/T(T0)
0
0
0
1 M1(T0)
0
0 M0(T0)
0
TMOD——定时器模式寄存器的位描述
符号
6
TCON—定时器控制寄存器的位分配(地址0x88、可位寻址)
位
7
6
5
4
3
2
1
0
符号 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
复位 0
0
0
0
0
0
0
0
值
TCON——定时器控制寄存器的位描述
位 符号
描述
7 TF1 定时器1溢出标志。一旦定时器1发生溢出时硬件置1。清零有两种方式:软件清零,或
定时器:打开定时器后,定时器"存储寄存器" 的值经过一个机器周期自动加1,也就是说, 机器周期是定时器的计数周期。
第5章任务T1-5用按键控制LED

2 LOGO
5.1 本章的知识点和技能点
知识点
·单片机I/O口的设置 ·按键扫描与处理 ·复位电路与复位向量 ·汇编语言
技能点
·汇编语言编程能力 ·按键电路设计 ·复位电路设计 ·静态测试
5.2 任务描述
· 单片机上电后,MC9S08AC16通用功能板上 被控制的LED1和LED2都点亮,普通按键5按下后, LED1的状态取反(亮变为灭,灭变为亮),同样 的,普通按键6按下后,LED2的状态取反(亮变为 灭,灭变为亮),按了复位键后,两个LED又变为 全亮。
5.5.2 按键操作的时序图
·单片机中采用的按键一般是由机械触点构成的触点式微动 开关。这种开关具有结构简单,使用可靠的优点,但是它们 具有一个特点,就是当我们按下按键或释放按键时会产生如 上图所示的有抖动的按键脉冲波形,这种抖动对于人来说是 感觉不到的,但对单片机来说,则是完全可以感应到的,因 为计算机处理的时间是在微秒级的,而机械抖动的时间至少 是毫秒级,对计算机而言,这已是一个很“漫长”的过程了。
5.8.6 函数的返回
➢ 子函数在运行过程中,一旦遇到语句RTS时子函 数就结束并返回到调用函数的语句的地方继续执 行下一条语句。
➢ RTS的作用就是取出保存在堆栈中的PC值并把该 值赋给PC,从而使单片机系统程序从子函数中跳 出,并继续执行函数调用语句下面的语句。
5.8.7 函数调用与语句跳转的区别
5.10.3 实验步骤
➢步骤6:把实现按键扫描间隔延时的程序段改造 成子函数。在随书光盘的文件夹“单片机技术初 步实践例子程序\MC9S08AC16通用功能板例子程 序\第5章”的SimpleKey2.mcp有参考程序。 ➢步骤7:把实现按键扫描的程序段和按键处理的 程序段分别改造为按键扫描子函数和按键处理子 函数。 ➢步骤8:附加任务。修改程序,使按键S5按住不 放以后,每隔一段时间LED1灯的状态取反。
51单片机键盘设置

\\\§8.3 键盘接口技术一、键盘输入应解决的问题键盘是一组按键的集合,它是最常用的单片机输入设备.操作人员可以通过键盘输入数据或命令,实现简单的人机通讯。
键是一种常开型按钮开关,平时(常态)键的二个触点处于断开状态,按下键时它们才闭合(短路)。
键盘分编码键盘和非编码键盘。
键盘上闭合键的识别由专用的硬件译码器实现并产生编号或键值的称为编码键盘,如:ASCⅡ码键盘、BCD码键盘等;靠软件识别的称为非编码键盘。
在单片机组成的测控系统及智能化仪器中用得最多的是非编码键盘。
本节着重讨论非编码键盘的原理、接口技术和程序设计。
键盘中每个按键都是—个常开关电路,如图所示。
1.按键的确认:P1.7=1 无按键;P1.7=0 有按键;2.去抖动去抖动的方法:①硬件去抖动采用RS触发器:优点: 速度快,实时,缺点: 增加了硬件成本②软件去抖动采用延时方法延时5—10ms 延时5—10ms P1.7=0 确认P1.7=0 P1.7=1 (去前沿抖动) (去后沿抖动)二、独立式键盘每个I/O口连接一个按,S1 P1.0S2 P1.1……………………….S8 P1.7软件:START:MOV P1,#0FFH ;置P1口为高电平JNB P1.0, RS1 ; S1按下,程序去执行RS1JNB P1.1, RS2 ; S2按下,程序去执行RS2JNB P1.2, RS3 ; S3按下,程序去执行RS3JNB P1.3, RS4 ; S4按下,程序去执行RS4JNB P1.4, RS5 ; S5按下,程序去执行RS5JNB P1.5, RS6 ; S6按下,程序去执行RS6JNB P1.6, RS7 ; S7按下,程序去执行RS7JNB P1.7, RS8 ; S8按下,程序去执行RS8AJMP START ; 继续扫描按键………….RS1: AJMP PK1 ;RS2: AJMP PK2 ;RS3: AJMP PK3 ;RS4: AJMP PK4 ;RS5: AJMP PK5 ;RS6: AJMP PK6 ;RS7: AJMP PK7 ;RS8: AJMP PK8 ;AJMP START ; 无键按下,继续扫描…………………PK1: ……….. ;按键S1功能处理程序AJMP START ;处理S1按键后, 继续扫描PK2: ……….. ;按键S2功能处理程序AJMP START………………….PK8: ………………;按键S8功能处理程序AJMP START ; 处理S8按键后, 继续扫描优点: 连线简单,程序容易.缺点: 太浪费资源适用于按键较少、I/O口空闲的场合。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6
单片机与键盘的连接 键盘与单片机连接方式有: 键盘与单片机连接方式有:
1. 独立式键盘
单个按键直接与单个IO引脚相连 单个按键直接与单个 引脚相连 优点:简单、 优点:简单、易用 缺点:接入按键少, 口占用较多 缺点:接入按键少,IO口占用较多
2. 行列式键盘
多个按键组成矩阵形式与IO口相连 多个按键组成矩阵形式与 口相连 优点: 优点:接入按键多 缺点:复杂、 缺点:复杂、不易使用
5
键盘的分类 单片机系统使用的键盘分为两类: 单片机系统使用的键盘分为两类:
1. 全编码键盘
配有专用硬件电路识别按键编码 程序简单、硬件复杂、 程序简单、硬件复杂、价格较贵
2. 非编码键盘
靠单片机软件识别按键编码 硬件简单、程序复杂、 硬件简单、程序复杂、价格便宜
2012年4月17日 年 月 日
单片机C语言程序设计 单片机 语言程序设计
按 键 Key
2012年4月17日 年 月 日 单片机C语言程序设计 单片机 语言程序设计 1
单片机与按键
5.1 5.2 5.3 5.4 5.5
计算机系统的输入设备 计算机系统的输入设备 按键开关的分类 按键开关的分类 按键识别的方法 按键识别的方法 单片机与按键的连接 单片机与按键的连接 按键的处理方法 按键的处理方法
2012年4月17日 年 月 日
单片机C语言程序设计 单片机 语言程序设计
14
独立式按键的处理 每个独立按键单独占有一根单片机 IO口线,各按键之间相互独立。 口线, 口线 各按键之间相互独立。
1. 少量按键定义位变量处理 2. 成列按键使用并行IO口处理 成列按键使用并行 口处理
2012年4月17日 年 月 日
按键识别 单片机在识别按键时, 口工作在 单片机在识别按键时,IO口工作在 输入状态: 输入状态:
1. 按键弹起,IO口电平 按键弹起, 口电平 口电平5V 2. 按键按下,IO口电平 按键按下, 口电平0V 口电平 3. 单片机读取 口的状态 单片机读取IO口的状态 即可知按键的状态
2012年4月17日 年 月 日
2012年4月17日 年 月 日
单片机C语言程序设计 单片机 语言程序设计
8
按键识别 单片机识别按键状态的原理: 单片机识别按键状态的原理:
1. 对单个或成组按键,需要通过接口电路 对单个或成组按键, 与单片机IO口相连接 与单片机 口相连接 2. 单片机通过一定的方式 查询或中断 检 单片机通过一定的方式(查询或中断 查询或中断)检 查各个IO口的状态 口的状态, 查各个 口的状态,从而得知按键的状 态 3. 如有按键按下,将按下的按键键号送入 如有按键按下, 单片机进行处理
2012年4月17日 年 月 日
单片机C语言程序设计 单片机 语言程序设计
18
软件设计 软件流程图
Y
Y N N
Y
2012年4月17日 年 月 日
单片机C语言程序设计 单片机 语言程序设计
19
程序预处理 编译系统对程序中特殊命令进行预 处理,预处理结果和源程序进行编译。 处理,预处理结果和源程序进行编译。
单片机C语言程序设计 单片机 语言程序设计
10
按键抖动 实际的按键在被按下或抬起时, 实际的按键在被按下或抬起时,由 于机械触点的弹性作用, 于机械触点的弹性作用,在闭合或断开 的瞬间均伴随有一连串的抖动现象。 的瞬间均伴随有一连串的抖动现象。
完整的按键过程包括: 完整的按键过程包括: 1. 释放状态 2. 按下抖动阶段 3. 完全按下状态 4. 释放抖动阶段 5. 释放状态
2012年4月17日 年 月 日
单片机C语言程序设计 单片机 语言程序设计
2
计算机系统的输入设备 计算机系统的输入设备指向计算机 输入信息的设备, 输入信息的设备,是计算机与用户或其 他设备交换信息的桥梁。 他设备交换信息的桥梁。 常用的输入设备有:键盘、鼠标、 常用的输入设备有:键盘、鼠标、 摄像头、扫描仪、光笔、手写输入板、 摄像头、扫描仪、光笔、手写输入板、 游戏杆和语音输入装置等 游戏杆和语音输入装置等。
2. 口线反转法
单片机按行和按列扫描一次
2012年4月17日 年 月 日
单片机C语言程序设计 单片机 语言程序设计
16
按键处理中的特殊要求 单片机在处理按键的过程中, 单片机在处理按键的过程中,根据 实际的需求, 实际的需求,还可能遇到以下一些比较 复杂的问题: 复杂的问题:
1. 短按、长按按键 短按、
1. 宏定义 用标识符表示字符串) 宏定义(用标识符表示字符串 用标识符表示字符串
#define 宏名 字符串
2. 文件包含 多个源文件连接编译) 文件包含(多个源文件连接编译 多个源文件连接编译
#include <文件名 或 #include “文件名 文件名> 文件名” 文件名 文件名
3. 条件编译 编译需要的程序段) 条件编译(编译需要的程序段 编译需要的程序段
2012年4月17日 年 月 日
单片机C语言程序设计 单片机 语言程序设计
4
按键开关类型 单片机系统使用的按键开关种类繁多: 单片机系统使用的按键开关种类繁多:
1. 2. 3. 4. 5. 单个按键 自锁按键 钮子开关 编码开关 轻触按键
2012年4月17日 年 月 日
单片机C语言程序设计 单片机 语言程序设计
#ifdef #else #endif、#ifndef #else 、 #endif、 # if #else #endif 、
2012年4月17日 年 月 日 单片机C语言程序设计 单片机 语言程序设计 20
按键按下时计时
2. 单击、双击按键 单击、
记录每次和上一次按键的键值
3. 组合键
增加按键键码
2012年4月17日 年 月 日 单片机C语言程序设计 单片机 语言程序设计 17
实例 设计一个单片机按键系统, 设计一个单片机按键系统,单片机 能识别到8个按键的变化 个按键的变化。 能识别到 个按键的变化。
单片机C语言程序设计 单片机 语言程序设计
15
矩阵式键盘的处理 矩阵式键盘的按键排列成矩阵的形 在单根IO口线上连接了多个按键 口线上连接了多个按键, 式,在单根 口线上连接了多个按键, 因此需要特殊的处理方法: 因此需要特殊的处理方法:
1. 逐行(列)扫描法 逐行 列 扫描法
单片机一行行(列列 循环对键盘进行扫描 单片机一行行 列列)循环对键盘进行扫描 列列
2. 软件防抖
利用软件进行延时(10ms) 利用软件进行延时 电路简单、成本低、但占用CPU时间 电路简单、成本低、但占用 时间
2012年4月17日 年 月 日 单片机C语言程序设计 单片机 语言程序设计 12
键盘的工作方式
单片机对按键动作的识别有两种方式: 单片机对按键动作的识别有两种方式: 1. 查询方式
2012年4月17日 年 月 日 单片机C语言程序设计 单片机 语言程序设计 11
按键防抖
由于按键在闭合或断开的瞬间伴随着机 械抖动,造成输入电平的变化, 械抖动,造成输入电平的变化,因此在单片 机识别按键的过程中应采取防抖措施: 机识别按键的过程中应采取防抖措施: 1. 硬件防抖
在按键输出端加RS或施密特触发器 在按键输出端加 或施密特触发器 去抖效果好、电路复杂、 去抖效果好、电路复杂、成本高
2012年4月17日 年 月 日 单片机C语言程序设计 单片机 语言程序设计 7
单片机与键盘的连接 键盘与单片机连接方式有: 键盘与单片机连接方式有:
3. 通过键盘控制芯片相连
矩阵键盘与扩展芯片相连(HD7279、8279) 、 矩阵键盘与扩展芯片相连 优点:占用IO口少 口少, 优点:占用 口少,软件控制容易 缺点: 缺点:价格较高
2012年4月17日 年 月 日
单片机C语言程序设计 单片机 语言程序设计
3
嵌入式系统的输入设备 嵌入式系统因性能体积等限制, 嵌入式系统因性能体积等限制,主 等作为输入s 要使用 、 、 等作为输入 设备。 设备。 输入设备在嵌入式系统中主要作用: 输入设备在嵌入式系统中主要作用:
1. 数据输入 2. 流程控制
单片机不断的扫描键盘判断按键是否动作 特点:硬件简单, 特点:硬件简单,但需要单片机不停地扫 描键盘,占用CPU资源 描键盘,占用 资源
2. 中断方式
键盘动作时发出中断请求, 键盘动作时发出中断请求,单片机响应中 断请求后转按键识别程序 特点:硬件复杂,需要中断电路, 特点:硬件复杂,需要中断电路,但不占 用CPU资源 资源
2012年4月17日 年 月 日 单片机C语言程序设计 单片机 语言程序设计 13
单片机处理按键的流程 单片机处理按键动作需要以下步骤: 单片机处理按键动作需要以下步骤:
1. 2. 3. 4. 5. 判断按键是否按下 按键按下时的防抖 识别哪个按键按下, 识别哪个按键按下,判断键值 判断按键是否放开 送出键值, 送出键值,处理按键动作