基于51单片机的密码锁设计报告.docx

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

基于51单片机的密码锁设计报告

课程:单片机原理

学院:电子与信息工程学院

专业:

班级:

姓名:

学号:

指导老师:

完成日期:

目录

TOC\o1-3\h\z\u一、矩阵按键 1

(1)按键接口 1

(2)按键开关的抖动问题 1

二、LCD1602液晶 2

(1)1602液晶的介绍 2

(2)液晶的读写时序介绍 4

(3)1602液晶的指令介绍 6

三、设计 7

(1)输出密码后,显示LCD1602 7

(2)输出密码后,交替亮灭显示LED 7

四、程序设计 7

(1)主程序 7

(二)LCD1602程序 9

(3)矩阵键盘程序 10

五、仿真截图 12

(1)输出密码后,显示LCD1602 12

(2)输出密码后,交替亮灭显示LED 15

基于51单片机的密码锁设计

一、矩阵按键

(1)按键接口

键盘是由若干按键组成的开关矩阵,它是微型计算机最常用的输入设备,用户可以通过键盘向单片机输入指令、地址和数据。一般单片机系统中采和非编码键盘,非编码键盘是由软件来识别键盘上的闭合键,它具有结构简单,使用灵活等特点,因此被广泛应用于单片机系统。

(2)按键开关的抖动问题

组成键盘的按键有触点式和非触点式两种,单片机中应用的一般是由机械触点构成的。在下图?1、图2?中,当按键被按下时,P1.0?输入为高电平;当按键按下后,P1.0?输入为低电平。由于按键是机械触点,当机械触点断开、闭合时,会有抖动动,P1.0?输入端的波形如图2所示。这种抖动对于人来说是感觉不到的,但对单片机来说,则是完全可以感应到的,因为单片机处理的速度是在微秒级,而机械抖动的时间至少是毫秒级,对单片机而言,这已是一个“漫长”的时间。

图?1图2按键抖动波形

为使?CPU?能正确地读出?P1?口的状态,对每一次按键只作一次响应,就必须考虑如何去除抖动,常用的去抖动的方法有两种:硬件方法和软件方法。单片机中常用软件法,因此,对于硬件方法我们不介绍。

软件法,就是在单片机获得?P1.0?口为低的信息后,不是立即认定按键已被按下,而是延时?10?毫秒或更长一些时间后再次检测?P1.0?口,如果仍为低,说明按键的确按下了,这实际上是避开了按键按下时的抖动时间。而在检测到按键释放后(P1.0?为高)再延时?5-10?个毫秒,消除后沿的抖动,然后再对键值处理。不过一般情况下,我们通常不对按键释放的后沿进行处理,实践证明,也能满足一定的要求。当然,实际应用中,对按键的要求也是千差万别,要根据不同的需要来编制处理程序,但以上是消除键抖动的原则。

二、LCD1602液晶

(1)1602液晶的介绍

1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号的点阵型液晶模块。它是由若干个5x7或者5x11的点阵字符位组成,每个点阵字符位都可以用显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此,所以它不能很好的显示图片。首先我们来看一个主要技术参数表格,如表1所示。

表11602液晶主要技术参数

1602液晶,从它的名字我们就可以看出它的显示容量,就是可以显示2行,每行16个字符的液晶。它的工作电压是4.5V~5.5V,对于这点我们设计电路的时候,直接按照5V系统设计,但是保证我们的5V系统最低不能低于4.5V。在5V工作电压下测量它的工作电流是2mA,大家注意,这个2mA仅仅是指液晶,而它的黄绿背光都是用LED做的,所以功耗不会太小的,一二十毫安还是有的。1602液晶一共16个引脚,每个引脚的功能,我们都可以在它的数据手册上获得。而这些基本的信息,在我们设计电路和编写代码之前,必须先看明白,如表9-2所示。

表21602液晶引脚功能

液晶的电源1脚2脚以及背光电源15脚16脚,不用多说,正常接就可以了。

3脚叫做液晶显示偏压信号,大家注意到小黑块没有,当我们要显示一个字符的时候,有的黑点显示,有的黑点就不能显示,这样就可以实现我们想要的字符了。我们这个3脚

就是用来调整显示的黑

文档评论(0)

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

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

1亿VIP精品文档

相关文档