基于单片机的指纹密码锁系统大学论文

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

[请输入学校名称]
[请输入专业]
基于单片机的指纹解锁设计
姓名: [请输入姓名]
学号: [请输入学号]
指导教师:[请输入指导教师] 2022年4月27日
摘要
近年来,指纹识别技术在国内外发展很快,由于其良好的安全性目前该技术已被广泛应用于生活和工作中。

随着成本的下降,指纹识别技术呈现全面推广和普遍应用的趋势。

指纹识别技术是目前国际公认的应用广泛、价格低廉、易用性高的生物人证技术。

指纹只是人体皮肤的一小部分,但是它却蕴涵了大量的信息。

皮肤的纹路在图案断点交叉点是个不相同的。

医学上已经证明这些特征对于每个手指都是不同的,而且这些特征具有唯一性和永久性。

因此我们就可以把一个人同他的指纹对应起来,通过比较他的指纹特征和预先保存的指纹特征,就可以验证他的真实身份。

本设计开发了一款基于单片机的指纹识别电子密码锁系统。

该系统以STC89C52单片机作为模块核心,通过串口通信控制FM608指纹模块实现录取指纹并存储指纹数据,并通过HS12864-15C液晶显示比对流程及比对结果,辅以直流继电器与发光二极管模拟开锁的动作。

本系统具有体积小、性价比高、传输速度快、适合家庭及单位使用。

关键词:单片机;指纹识别;液晶屏
ABSTRACT
In recent years, fingerprint identification technology has developed rapidly in China and abroad, because of its good security now that the technology has been widely used in daily life and work. With the decline in the cost of the fingerprint recognition technology and the comprehensive promotion and general trends should be.
Fingerprint recognition technology is a technology of biology-authentication widely used and legalized in international today because of its low-price and finer application. Fingerprint just is a small part of the skin, but it contains a great deal of information .The veins of the skin are different in pattern and cross point and break point. Medicine has proven that these characteristics are different for each finger and these characteristics are unique and permanent. So we can put a person's fingerprints correspond with him by comparing his fingerprint characteristics and pre-stored fingerprint features, you can verify his true identity.
The system design of fingerprint recognition electron password lock based on Single-chip microprocessor is developed in the thesis. The system STC89C52 MCU as the core module, through the serial communication control FM608 fingerprint module for taking fingerprints and store fingerprint data and liquid crystal display by HS12864-15C ratio than on the processes and results, supported by simulation of DC relays and LEDs unlock action. The system is small, cost-effective, and fast and suitable for families and units.
Key Words:Single-chip microprocessor; fingerprint detection; LCD
第1章概述 (6)
1.1 指纹识别技术的发展 (6)
1.2 指纹识别原理 (7)
1.3 系统设计目的及意义 (8)
1.4 工作流程 (8)
第2章硬件介绍和设计 (10)
2.1 单片机及最小系统 (10)
2.1.1 STC89C52单片机介绍 (10)
2.1.2 外部晶振的设计 (13)
2.1.3 复位电路的设计 (14)
2.2 液晶显示模块 (15)
2.2.1 12864系列液晶的引脚功能 (15)
2.2.2 控制器接口说明 (15)
2.2.3 指令说明 (16)
2.2.4 12864引脚与单片机连接图 (21)
2.3 按键控制部分电路 (23)
2.4 指纹模块 (24)
2.4.1 指纹模块简介 (24)
2.4.2 指纹模块引脚接法 (26)
2.4.3 指纹模块命令 (27)
2.5 本章小结 (29)
第3章系统软件的设计 (30)
3.1 系统程序工作分析 (30)
3.2 串口初始化 (30)
3.3 主程序流程图 (31)
3.3.1键盘管理程序设计流程 (32)
3.3.2 LCD显示模块程序设计流程 (34)
3.3.3 指纹模块的通信程序设计流程 (34)
3.4 Keil编程 (35)
3.5 本章小结 (36)
第4章硬件调试 (37)
4.1 电路的焊接 (37)
4.2 程序的烧写 (38)
4.3 小灯、继电器的调试 (39)
4.4 液晶的调试 (39)
4.5 本章小结 (40)
结论 (41)
参考文献 (42)
致谢 (43)
第1章概述
1.1 指纹识别技术的发展
世界上任何一种物体与物质都有其表示自己特征的符号和信息,人体也不例外,取一根头发丝就能鉴别出它是谁的头发。

然而,最简单、最直观、最常用的鉴别符号则是人的指纹。

指纹是人类手指上的条状纹路,他们的形成依赖于胚胎发育时的环境。

指纹识别已经有了很长一段历史,据考古学家证实:公元前6000年以前,指纹作为身份鉴别的工具已经在古叙利亚和中国开始应用。

到了20世纪80年代,个人电脑、光学扫描这两项技术的革新,是的他们作为指纹取像的工具成为现实,从而使指纹识别可以在其他领域中得以应用[1]。

现在,随着取像设备的引人及其飞速发展,生物指纹识别技术的逐渐成熟,可靠的比对算法的发现都为指纹识别技术提供了更广阔的舞台。

目前,全球范围内都建立了指纹鉴定机构以及罪犯指纹数据库,指纹鉴定已经被官方所接受,成为司法部门一种有效身份鉴定手段。

据统计,在全世界50亿人口当中,除了19名生来就没长指纹的特殊人物之外,没有一个重样的指纹,所以世界各国的警察机关都利用指纹鉴别技术来侦破案件。

有人把人的指纹称之为“人体的立体印章”,而公安人员正是利用这些立体印章来作为认定作案分子的特征符号。

由于人体的身体特征具有不可复制的特点,人们把目光转向了生物识别技术,希望可以藉此技术来应付现行系统安全所面临的挑战。

要把人体的特征用于身份识别,这些特征必须具有唯一性和稳定性。

研究和经验表明,人的指纹、掌纹、面孔、发音、虹膜、视网膜、骨架等都具有唯一性和稳定性的特征,即每个人的这些特征都与别人不同、且终生不变,因此就可以据此识别出人的身份。

[2]基于这些特征,人们发展了指纹识别、面部识别、发音识别等多种生物识别技术,目前许多技术都已经成熟并得以应用,其中的指纹识别技术更是生物识别技术的热点。

指纹识别技术的发展得益于现代电子集成制造技术和快速可靠算法的研究。

尽管指纹只是人体皮肤的一小部分,但用于识别的数据量相当大,对这些数据进行比对也不是简单的相等与不想等的问题,现代电子集成制造技术使得我们可以制造出相当小的指纹图像读取设备,同时飞速发展的个人计算机运算速度提供了在微机甚至单片机上可以进行两个指纹的比对运算的可能。

另外,匹配算法可靠性也不断提高,指纹识别技术已经非常实用。

[3]
1.2 指纹识别原理
手指表面皮肤凹凸不平而产生的纹路就是指纹。

理想的指纹图像是一幅黑白相间的二值图像。

但是由于指纹通常是用按压的方式得到的,因此,油墨、纸张、手指的状况以及皮肤的变形等原因都会导致指纹图像不理想。

另外,通过扫描仪或者摄像机进行数字化的时候,由于光照的影响,也会引入各种噪声。

这些因素都使灰度图像不能直接用来匹配。

因此,有必要选择合适的特征来描述指纹征来描述指纹。

[4]
通常采用的结构特征有2种层次:
1)全局特征。

所描述的是指纹的全局纹路结构,如图1-1所示,利用计算机处理时具体划分为:弓型、箕型、螺旋型。

其他的指纹图案都基于这3种基本图案。

图1-1 指纹基本纹路图案
2)局部特征。

断点和分叉是最常用的指纹局部结构特征,也称为细节特征。

采用这种特征的一个例子是细节—坐标模型,也就是使用指纹的细节点及其坐标和其他一些特征来描述指纹。

对于指纹身份鉴定,特别是对现场的模糊指纹进行认定的时候所使用的信息是细节特征点,如图1-2中的小桥、三角点、分叉点、端点和环。

图1-2 指纹图像
人们根据纹路的局部结构特征共定义了150多种细节特征,如果同时使用所有的这些特征,将很难自动而且迅速地从指纹图像中提取并且区分他们。

通常,自动指纹鉴定系统只使用其中2种主要的特征,即分叉点和断点。

其他细节特征都可以用他们的组合来表示。

例如小桥是由2个端点组成的,而环是由2个分叉点组成的。

1.3 系统设计目的及意义
现代社会越来越需要高效可靠的身份识别系统。

传统的个人身份鉴别手段如口令、密码、身份证等由于其与身份人的可分离性,可假冒、可伪造、可盗用、可破译,已不能完全满足现代社会经济活动和社会安全防范的需要。

作为最传统、最成熟的生物鉴定方式,指纹具有很强的相对稳定性。

从胎儿在6个月时指纹完全形成到人死后尸体腐烂,指纹的纹线类型、结构、统计特征的总体分布等始终没有明显变化,并且指纹具有明显的独特性。

至今还找不出两个指纹完全相同的人,即使同卵双胞胎的指纹也是不相同的。

而从易用性、安全性、成熟性和造价等方面综合比较,指纹识别技术将成为未来人体生理特征身份识别技术的主流之一,指纹自动识别技术开创了个人身份鉴别的新时代,将来我们生活的很多场合都要用到指纹,指纹使我们的生活更方便、安全。

[5]
而以单片机为控制器的技术以发展的非常熟练,因为它的控制性能和可靠性能高的优点,生活中的电子产品都离不开单片机控制,像电饭煲,洗衣机,汽车等等都是单片机控制。

在学习了单片机基础知识后,我们需要实践来把所学的知识组织起来,并且运用到实际生活,所以我联系指纹识别技术及单片机原理及应用选择基于单片机的指纹识别系统这个课题,希望我设计的实物可以完成简单的身份认证任务,给身份认证带来便利。

1.4 工作流程
1)开机:按下电源,电源指示灯点亮,液晶显示:“请先按键再刷指纹”,按下按键后,液晶显示:“请按指纹”,同时指纹模块绿灯亮起,可以进行指纹识别开锁功能。

若指纹识别成功,继电器动作,LED指示灯亮起,开锁成功,人员可以进入,液晶显示:“门已打开,编号为XXX”;若指纹识别不成功,继电器不动作,LED指示灯不亮,将不能开锁,人员不能进入,液晶显示:“没有搜索到指纹请重新按下手指”。

2)管理员模式:按下按键进入管理员模式首先要输入6位密码,密码正确可以进入管理员模式,密码错误不能进入管理员模式,在管理员模式下可以完成录入指纹、删除指纹、应急开锁和修改密码的功能。

进入录入指纹模式后,指纹模
块绿灯亮起,将手指放到指纹头上,录入同一手指两次,此时液晶显示“指纹采集成功”。

在删除指纹模式下,液晶显示“输入删去的指纹号”,输入后按确认键即可完成指定指纹的删除功能,同时液晶显示“删指纹号成功”。

在非正常的情况下,如指纹模块不好用或者紧急情况下,可以使用紧急开锁功能。

密码修改的功能是指可以修改并保存进入管理员的6位密码。

第2章硬件介绍和设计
整个系统主要分六大块,分别是单片机控制部分、指纹模块部分、A T24C02存储芯片部分、矩阵键盘部分、LCD液晶显示部分以及所驱动的继电器部分。

整体硬件框架图如下:
2.1 单片机及最小系统
2.1.1 STC89C52单片机介绍
单片机,亦称单片微电脑或单片微型计算机。

它是把中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、输入/输出端口(I/0)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机。

现在可以说单片机是百花齐放的时期,世界上各大芯片制造公司都推出了自己的单片机,从8位、16位到32位,数不胜数,应有尽有,它们各具特色,互成互补,为单片机的应用提供广阔的天地[6]。

纵观单片机的发展过程,可以预示单片机的发展趋势。

MCS-51系列的8031推出时的功耗达630mW,而现在的单片机普遍都在100mW左右,随着对单片机功耗要求越来越低,现在的各个单片机制造商基本都采用了CMOS(互补金属氧化物半导体工艺)。

80C51就采用了HMOS(即高密度金属氧化物半导体工艺)和CHMOS(互补高密度金属氧化物半导体工艺)。

现在常规的单片机普遍都是将中央处理器(CPU)、随机存取数据存储(RAM)、只读程序存储器(ROM)、并行和串行通信接口,中断系统、定时电路、时钟电路集成在一块单一的芯片上,增强型的单片机集成了如A/D转换器、PMW(脉宽
调制电路)、WDT(看门狗)、有些单片机将LCD(液晶)驱动电路都集成在单一的芯片上,这样单片机包含的单元电路就更多,功能就越强大。

[7] STC89C52RC单片机是宏晶科技推出的新一代高速、低功耗、超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。

主要特性如下:
增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051。

工作电压:5.5V~3.3V(5V单片机)/3.8V~2.0V(3V单片机)
工作频率范围:0~40MHz,相当于普通8051的0~80MHz,实际工作频率可达48MHz
用户应用程序空间为8K字节
片上集成512字节RAM
通用I/O口(32个),复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。

ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RXD/P3.0,TXD/P3.1)直接下载用户程序,数秒即可完成一片
具有EEPROM功能
具有看门狗功能
共3个16位定时器/计数器。

即定时器T0、T1、T2
外部中断4路,下降沿中断或低电平触发电路,Power Down模式可由外部中断低电平触发中断方式唤醒
通用异步串行口(UART),还可用定时器软件实现多个UART
工作温度范围:-40~+85℃(工业级)/0~75℃(商业级)
PDIP封装
STC89C52RC单片机的工作模式
掉电模式:典型功耗<0.1μA,可由外部中断唤醒,中断返回后,继续执行原程序
空闲模式:典型功耗2mA
正常工作模式:典型功耗4mA~7mA
掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备下图2-1为STC89C52RC引脚功能说明。

图2-1 STC89C52引脚图
VCC(40引脚):电源电压
VSS(20引脚):接地
P0口:为8位准双向I/O接口,它的每一位都可以分别定义为输入线或输出线(作为输入时,口锁存器必须置1),可启动4个TTL负载。

P1口:为8位准双向I/O接口,它的每一位都可以分别定义为输入线或输出线(作为输入时,口锁存器必须置1),可启动4个TTL负载。

P2口:为8位准双向I/O接口,当它作为I/O接口使用时,可直接连接外部I/O设备;在接有片外存储器或扩展I/O且寻址范围超过256字节时,P2口可用做高8位的地址总线。

P3口:为8位准双向I/O接口,还可以将每一位用于第二功能,第二功能的定义见表2-1。

表2-1 STC89C52 P3口的第二功能
端口功能第二功能
P3.0 RXD(串行输入口)
P3.1 TXD(串行输入口)
P3.2 INT/0(外中断0)
P3.3 INT/1(外中断1)
P3.4 T0(定时/计数器0)
P3.5 T0(定时/计数器1)
P3.6 外部数据存储器写选通
P3.7 外部数据存储器读选通
XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。

XTAL2:振荡器反相放大器的输出端。

本设计的主程序主要由液晶显示、通讯子按键程序组成。

主程序的工作流程描述如下:首先初始化各种硬件功能模块进行初始化。

包括开机液晶显示、键盘扫描、指纹模块建立通信。

2.1.2 外部晶振的设计
单片机系统里都有晶振,在单片机系统里晶振作用非常大,全程叫晶体振荡器,它结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片接的一切指令的执行都是建立在单片机晶振提供的时钟频率。

在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十,高级的精度更高。

有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器(VCO)。

晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。

[8]
单片机晶振的作用是为系统提供基本的时钟信号。

通常一个系统共用一个晶振,便于各部分保持同步。

有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。

晶振通常与锁相环电路配合使用,以提供系统所需的时钟频率。

如果不同子系统需要不同频率的时钟信号,可以用与同一个晶振相连的不同锁相环来提供。

STC89C52使用11.0592MHz的晶体振荡器作为振荡源,由于单片机内部带有振荡电路,所以外部只要连接一个晶振和两个电容即可,电容容量一般在15pF至50pF之间。

STC89C52的内部有一个用于构成振荡器的高增益反相放大器,通过XTAL1,XTAL2外部接上一片作为反馈元件的晶体,与C1和C2构成了并联谐振电路,使其构成自激振荡器,电容的值具有微调的作用,我们取30PF,具体的接法如图2-2外部晶振电路。

图2-2 外部晶振电路
STC89C52的工作频率范围在0~24MHZ。

我们选用的是11.0592MHZ的晶振,振荡周期约为1us机器周期约为0.1us,所以这个晶振可以满足这个系统的要求。

并且晶振不能离单片机太远,不然使用外部晶振进行软件调试时就会发现找不到信号。

2.1.3 复位电路的设计
单片机的置位和复位,都是为了把电路初始化到一个确定的状态,一般来说,单片机复位电路作用是把一个例如状态机初始化到空状态,而在单片机内部,复位的时候单片机是把一些寄存器以及存储设备装入厂商预设的一个值。

[9]单片机复位电路原理是在单片机的复位引脚RST上外接电阻和电容,实现上电复位,当复位电平持续两个机器周期以上时复位有效。

复位电平的持续时间必须大于单片机的两个机器周期。

具体数值可以由RC电路计算出时间常数。

复位电路由按键复位和上电复位两部分组成。

(1)上电复位:STC89系列单片及为高电平复位,通常在复位引脚RST上连接一个电容到VCC,再连接一个电阻到GND,由此形成一个RC充放电回路保证单片机在上电时RST脚上有足够时间的高电平进行复位,随后回归到低电平进入正常工作状态,这个电阻和电容的典型值为10K和10uF。

(2)按键复位:按键复位就是在复位电容上并联一个开关,当开关按下时电容被放电、RST也被拉到高电平,而且由于电容的充电,会保持一段时间的高电平来使单片机复位。

本系统采用的复位电路如图2-3所示。

单片机在上电瞬间,RC电路充电,RST 引脚端出现正脉冲,只要RST端保持两个机器周期以上的高电平,就能使单片机有效复位。

其中电容选10uF、电阻选10K。

图2-3 复位电路
2.2 液晶显示模块
液晶是一种高分子材料,因为其特殊的物理、化学、光学特性,20世纪中叶开始广泛应用在轻薄型显示器上。

液晶显示器的主要原理是以电流刺激液晶分子产生点、线、面并配合背部灯管构成画面。

为叙述简便,通常把各种液晶显示器都直接叫做液晶。

液晶体积小、功耗低、现实操作简单,但是它有一个致命的弱点,其使用温度范围很窄,通用型液晶正常工作温度范围为0°C~+55°C,存储温度范围为-20°C~+60°C,因此在设计相应产品时,务必要考虑周全,选取合适的液晶。

2.2.1 12864系列液晶的引脚功能
12864共有20个引脚,各引脚说明如下面表格所示。

表2-2 接口信号说明
12864汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。

2.2.2 控制器接口说明
1)基本操作时序:
读状态:输入:RS=L,RW=H,E=H
输出:D0~D7=状态字
写指令:输入:RS=L,RW=L,D0~D7=指令码,E=高脉冲
输出:D0~D7=数据
读数据:输入:RS=H,RW=H,E=H
输出:无
写数据:输入:RS=H,RW=L,D0~D7=数据,E=高脉冲
输出:无
2)状态字说明
表2-3状态字说明
对控制器每次进行读写操作之前都必须进行读写检测,确保STA7为0。

实际上,由于单片机的操作速度慢于液晶控制器反应速度,因此可以不进行读/写检测,或只进行简短延时即可。

2.2.3指令说明
表2-4 指令集(RE=0:基本指令集)
表2-5指令表(RE=1:扩充指令集)
当模块在接受指令前,微处理顺必须先确认模块内部处于非忙碌状态,即读取BF标志时BF需为0,方可接受新的指令;如果在送出一个指令前并不检查BF 标志,那么在前一个指令和这个指令中间必须延迟一段较长的时间,即是等待前一个指令确实执行完成,指令执行的时间请参考指令表中的个别指令说明。

“RE”为基本指令集与扩充指令集的选择控制位元,当变更“RE”位元后,往后的指令集将维持在最后的状态,除非再次变更“RE”位元,否则使用相同指令集时,不需每次重设“RE”位元。

具体指令介绍:
1)清除显示
2)位址归位
DDRAM
3)位址归位
DDRAM功能:执行该命令后,所设置的行将显示在屏幕的第一行。

显示起始行是由Z地址计数器控制的,该命令自动将A0-A5位地址送入Z地址计数器,起始地址可以是0-63范围内任意一行。

Z地址计数器具有循环计数功能,用于显示行扫描同步,当扫描完一行后自动加一。

4)显示状态开/关
5)游标或显示移位控制
内容
6)功能设定
7)设定CGRAM位址
8)设定DDRAM位址
9)读取忙碌状态(BF)和位址
计数器(AC)的值
10)写资料到RAM
11)读出RAM的值
12)待命模式(12H)
13)卷动位址或IRAM位址选择(13H)
14)反白选择(14H)
功能:选择4行中的任一行作反白显示,并可决定反白的与否15)睡眠模式(015H)
16)扩充功能设定(016H)
G=0;绘图显示OFF
17)设定IRAM位址或卷动位址(017H)

18)设定绘图RAM位址(018H)
2.2.4 12864引脚与单片机连接图
下图为12864与单片机的接口连接图。

图2-4 12864引脚与单片机连接图
显示模块主要完成数据的显示功能。

用户所编的显示程序,开始必须进行初始化,否则模块无法正常显示,首先当模块接受指令前,单片机必须确认模块内部处于非忙碌状态,然后根据接受到指令显示相关的内容在屏幕上。

1、通过RS确定是写数据还是写命令。

写命令包括使液晶的光标显示/不显示、光标闪烁/不闪烁、需/不需要移屏、在液晶的什么位置显示,等等。

写数据是指要显示什么内容。

2、读/写控制端设置为写模式,即低电平。

3、将数据或命令送达数据线上。

4、给E一个高脉冲将数据送入液晶控制器,完成写操作。

2.3 按键控制部分电路
按键的闭合与否反应在电压上就是呈现出高电平或低电平,如果高电平表示断开,那么低电平则表示闭合,通过电平的高低状态的检测可确认键按下与否。

为了确保CPU对一次按键动作只确认一次,并且防止干扰信号的影响,必需加入消除电平抖动的措施,下图2-5为按键抖动示意。

消除抖动通常有硬、软硬两种方法,硬件消除抖动可采取双稳态电路或滤波消抖电路;软件消抖是在第一次检测到有键按下时,执行一段延时程序再确认该键是否仍闭合,如果还是闭合状态则确认该键按下,从而消除抖动和干扰影响。

按键接口设计有两种方法,独立式按键和矩阵式键盘。

独立式按键各键相独立,每个按键各接入一根输入线,只要检测输入线的电平就可以识别按键状态。

这种方法电路配置灵活,软件结构简单,但每个按键需占用一根输入口。

由于该设计方案IO资源浪费大。

故此方法只适用于按键少或其他控制功能很简单的场合。

由于本设计中的按键较多,考虑系统可靠性和键盘设计的简单所以采用矩阵按键。

本系统的按键电路如图2-6所示,按键按下是呈低电平,我们采用软件消抖来减少对的单片机影响。

图2-5 按键闭合及断开前后的电压
矩阵式键盘由行线和列线组成,按键位于行、列的交叉点上。

当键被按下时,其交点的行线和列线接通,相应的行线或列线上的电平发生变化,单片机通过检测行或列线上的电平变化可以确定哪个按键被按下。

矩阵键盘的检测方法有多种,常见的有:逐点扫描法、逐行扫描法、全局扫描法。

在本实例中我们采用逐行扫描法来实现按键检测,其中P1.4-P1.7作为列线,P1.0-P1.3作为行线。

识别过程如下:
1、判断键盘中是否有键按下。

设置所有行线为输出口,并输出低电平;设置列线为输入口,读取列线上的电平状态,只要有一列的电平为低,就表示有按键按下,并且被按下的键位于电平为低的列线与4跟行线相交叉的4个按键中,若所有列线都为高电平,表示没有按键按下;。

相关文档
最新文档