汪老师分享

您所在的位置:网站首页 rfid门禁改密码步骤 汪老师分享

汪老师分享

2024-07-12 23:23| 来源: 网络整理| 查看: 265

序 🔥 毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天要分享的是:基于51单片机射频门禁密码锁设计与实现

3 硬件系统模块

3.1 主要元器件介绍

3.1.1 单片机STC89C52

对于单片机而言,是一类集成芯片的总称,也可将其理解为能够独立工作的微型计算机[5]。单片机我用的是STC89C52RC,其优点颇多,低功耗、运转高速及具有超强的抗干扰能力,代码指令可以完美的兼容51系列的单片机,并且它又是8位的,具有8K大小的闪存,这就表示这款单片机可以存储更多的程序。片上Flash允许程序存储器在系统可编程,亦适于常规编程器[6]。

52单片机的工作模式有三种,分别是:正常工作模式、掉电模式、空闲模式。所谓空闲模式,不是真的单片机“空闲”下来,模块中的定时器、存储器、中断及USRT等还是可以处于“忙碌”中的。在掉电模式,会进行保护措施,单片机的工作停止,直至下一个中断或者硬件复位才工作,RAM中的内容会被保存[7]。

3.1.2 LCD1602液晶显示器

LCD1602的意思,其实就是该显示器可以一行同时显示16个字符,总共可以显示两行。可同时显示32个字符,既可以显示符号也可显示汉字[8]。要控制字符也简单,1602中提供有各种控制指令。而1602与单片机有两种连接的方式,为直接控制方式和间接控制方式。

LCD1602液晶显示器中,其存储器存储的字符图形有英文大小写字母、数字、

各种符号等。这些字符图形都存储在字符发生存储器中(CGROM)。当想在显示器对应的位置显示字符,就在显示数据存储器(DDRAM)中对应的地址上写入想要显示的字符,就能看到相应的字符。

液晶显示器可适配与大规模的集成电路,其体积小巧,画质清晰,且由于1602是数字式的,用在单片机电路里更为靠谱,操作更简单方便。在功耗上,其消耗主要是用在内部的电极和驱动IC上,所以1602的在功耗上相比其他显示器会少很多。液晶屏的亮度会根据光线的强弱自动调整。正是有这么多优点,所以本课题设计选择了采用LCD1602作为显示器,LCD1602元器件图如图3-1所示。如今,1602也被大范围应用在众多电子和通信领域。

图3-1 LCD1602元器件图

3.1.3 存储芯片AT24C02

AT24C02是一款低功耗具有存储功能的芯片,其内含256×8位存储空间,具有很强的抗干扰能力、体积小、擦写的次数可达一万多次,且写入的速度快,写入的数据不容易丢失的特点。

IIC是一种半双工通信总线,其具有两根线,SDA数据线及SCL同步信号线[9]。通信支持主从模式,一主多从。IIC总线的协议定义如下:

(1)所有的通信都由主机发起,而SCL作为统一整个IIC网络节拍,它只能由主机控制。

(2)发送方只能在SCL的低电平期间去改变SDA的电平状态,发送数据位。接收方反之。

24C02中具有片内的地址寄存器,该寄存器具有这样的特性,每当写进或者读取了一个数据时,寄存器就会进行自动地加一,这样的话就可对下一个存储单元进行读写,且字节都是以单一的操作形式读取。在一次读写中可以写进最多八个字节的数据,以降低总的写进时间。

3.1.4 上拉排阻

上拉排阻其实就是由八个电阻构成的,它们的一端全都接在一起,102的是8个1K电阻,而103的为8个10K电阻,它们在电路中起到“上拉”的作用,所以称为上拉电阻。

简单来说,上拉的作用就是给信号线提供一个驱动电压,这样可以加长传输距离,传输时更稳定。上拉电阻一般是用在刚上电时,稳定端口电压。系统所用的52单片机P0口是开漏的,所以必须加上上拉电阻,上拉排阻原理图如图3-2所示。

图3-2 上拉排阻原理图

3.2 硬件模块

3.2.1 电源模块

DC电源插口图如图3-3所示,电源模块中,DC电源引脚2、3接地,1引脚接VCC。但是电路中要接蓝色的自锁开关。自锁开关在电路中起到电源的开关作用,其中3引脚要可接电源插口引脚,5引脚接到电路的VCC。

图3-3 DC电源插口图

3.2.2 按键模块

按键模块用于射频门禁密码锁的密码输入。按键是与单片机芯片进行人机交互时的最基本的一种方式。矩阵键盘原理图如图3-4所示,本系统采用的键盘是4×4矩阵键盘,排版精简美观,这样可以减少单片机与按键接口之间IO线的数量,当按键挺多时,功能比较复杂时,就可采用这种办法。

它由4根行线和4根列线组成,按键位于行列的交叉点上,当一个键被按下时,对应的行线和列线相连[10]。与独立式按键相比,矩阵键盘可节省很多I/O口线。在按键事件的程序处理过程中,首先得确认哪个程序段有按键按下,要想实现确认机制,就得执行等待按键。

矩阵键盘的实现,采用的是行列扫描原理,就是将其高4位全部输出为低电平,那么其低4位就是全部输出高电平,当有按键动作发生时,其低4位不会全部由低电平变为高电平,通过接收到的数据值,可以判断出哪一列有按键被按下了,相反,当高4位全部输出为高电平,低4位全部输出为低电平时,再根据接收数据时高4位不会全部都由高变低电平,这样可以判断哪一行是有被按下的。通过这种方式,行列都知道了,就可以判断具体操作哪个按键。

在矩阵键盘模块编码时,需要注意一个细节,就是当有按键事件触发时,得加入延时delay。因为单片机键盘是机械式的,按键按下时,这个过程会产生小震动,这可能会让处理器认为改按键被多次按下,从而导致误判。所以为了避免这样的情况,加入延时跳过震动这个过程,可以让键盘在输入时更准确稳定。

图3-4 矩阵按键原理图

3.2.3 射频模块

如图3-5是本课题的射频模块原理图,用的是RC522射频元器件。MFRC522是一种高度集成的读写器或读卡器,具备高速的非接触式通信。该射频设备如通过SPI的串口外围接口和芯片进行通信的话,其通信速率可达10Mbits每秒,且还支持IIC协议和UART协议。MFRC522读卡器中,其内部发射器部件可驱动读卡或写入天线,接收器部分可提供应答器信号的解调和解码电路。

MFRC522发送模块采用先进的调制和解调的原理,完全集成了在13.56MHz下所有类型的被动非接触式通信方式和协议[11]。这样就实现了各种主机的接口,以满足不同客户的需求。

本课题中的射频模块的读卡器读取到的数据通过串行口传输到单片机中,单片机对接收到的卡号进行校验,如校验成功便执行显示操作和驱动部分的控制。

图3-5 射频模块原理图

3.2.4 警报模块

警报模块一般都是用蜂鸣器,其特殊的声音可很快引人注意。蜂鸣器是一种电子讯响器,被广泛地用于各种电子产品中,如定时器、打印机、电子玩具、电脑等。蜂鸣器主要有电磁式及压电式两种类型,电磁式蜂鸣器,其组成结构有振荡器、振东膜片、外壳,有的还有电磁线圈及磁铁。而压电式蜂鸣器的组成结构主要有压电蜂鸣片,多谐振荡器及阻抗匹配器再加上外壳[12]。

蜂鸣器的驱动电路一般都包含有:蜂鸣器、三极管和限流电阻。如图3-6蜂鸣警报电路图,当输出高电平时,Q1会截止,这个时候集电极没有电流,蜂鸣器处于静音状态;当输出低电平时,Q1导通,蜂鸣器鸣叫。如果对用户的信息验证不成功的时候,其蜂鸣器发出四声连续短促的鸣叫。

图3-6 蜂鸣警报电路图

3.2.5 红外模块

红外遥控是如今使用的较为广泛的一种遥控技术。因为红外遥控装置优点较多,如体积小巧、性能强大、功耗低微、成本低廉等,被广泛应用于众多领域中,比如彩电、音响设备、空调、投影仪及诸多玩具中,都采用了红外遥控技术,而在一些安防门禁行业中,也采用了红外遥控开锁,更加智能便捷。

红外传输不易受到外部环境影响,其传输媒介是红外线。红外通信是运用波长为950nm附近的近红外光来传输数据的[14]。所以其传输距离较远,且能携带较大的信号量。红外一体接收电路图如图3-7所示,本模块中红外模块电路用的是红外一体接收器,具有集成放大器和红外接口,所有接收、输出和兼容TTL电平信号的工作都可以在一个单元内完成,无需其他外部元件。

图3-7 红外一体接收电路图

本设计使用的红外遥控器,红外遥控器键位图如下图3-8所示,该红外遥控器遥控距离可达7-10米,小巧耐用。按键位已经在上面标识,其中除了0-9数字键外,*键控制关锁,#为确认键,ABCD键为管理员模式中的键位,A键为切换下一个,B键可删除卡的ID号,C键可储存卡的ID号,D键为修改密码。可通过红外遥控器上的按钮在有效的距离内对门禁锁进行控制。

图3-8 红外遥控器键位图

5 产品制作及程序调试

5.1 焊接过程

焊接前先得仔细参照原理图,一些细节在纸上规划好,然后根据自己规划好的方式按如下步骤进行焊接:

(1)首先确认单片机芯片在覆铜板的位置进行焊接。

(2)焊接LCD显示模块的的相关管脚,对着单片机的管脚连接。

(3)将众多按键排列好进行焊接。

(4)焊接射频RC522模块电路。

(5)焊接蜂鸟器警报电路。

(6)焊接继电器部分电路。

(7)焊接接地及高电平。

在焊接过程中,需要注意以下三点:

锡焊不难,每个步骤需要耐心细心。一焊接前的准备:先将海绵稍微打湿,清洁一下烙铁头上的污渍,再将待焊元器件引脚插入洞洞板上固定好,防止其挪动。二加热锡焊:烙铁头加热到能熔锡的温度后,先在烙铁头上沾上一些松香,把锡放在待焊接处,用烙铁头熔锡锡成型后赶紧拿开让其冷却。如果要拆下焊好的元器件,则准备好吸锡器,将加热的烙铁头放在待取下的元器件锡处,溶化后用吸锡器赶紧吸出,看是否可取下。三清理焊接面:有时候要焊接的部位焊锡可能过多,这个时候可以将烙铁头上的焊锡在沾水的小棉花垫抹掉,如果焊点的焊锡少且不够圆润的话,可以用烙铁头再对该焊点进行补焊。实物焊接成果如下图5-1所示。

图5-1 实物焊接成果图

5.2 程序调试

5.2.1 KEIL软件介绍

Keil软件是如今最常用的编译器,其功能丰富,使用便捷,可支持浮点、多维数组等,且可生成对应汇编码。KeiluVision5IDE是keil公司13年发布的产品,本设计就是在UV5上编写调试的。

5.2.1 代码调试

运用C语言对系统进行编写,并借助Keil4编译环境对系统代码进行相应的调试,进一步形成可操作的程序文件[15]。在调试的时候,可以用断点或是单步运行的方式,来检查程序中的内存情况,程序的运行结果是否达到想要的要求,有无一些如循环、内存分配、软件算法之类的错误等。

在单步调试或者断点调试后,为了确定定时的精度是否准确、确定CPU的实时响应情况等问题,还需要进行连续调试。当遇到bug时,需要先摸清程序的整体逻辑,在输出值的地方加上打印,一步步分析下去,静下心来总能找到bug所在,最后根据实际需求合理解决。当整个程序功能无误,调试完后,就可将程序烧写进52单片机中。插上电源看各功能是否能实现,功能都实现则调试完成。

5.3 成品功能测试

本设计经过硬件调试焊接,软件编程调试烧录后,进入最终的成品功能测试阶段。成品预计实现功能为:键盘输入密码开关锁,密码初始密码为六个零,输入的密码若正确,则锁打开,显示open。开锁屏显图和矩阵键盘分布图如下图5-2所示:

图5-2 开锁屏显图(左)及矩阵键盘分布图(右)

本设计还具有管理者模式,键盘输入131420密码即可进入管理者模式,管理者模式中可以加入和删除门禁卡ID号,总共能存入6张卡号,按A(切换下一个)、B(删除)、C(保存)键可以进行相应的操作。门禁卡号管理员模式图如下图5-3所示:

图5-3 门禁卡号管理员模式图

还有一组管理员密码,可以进行密码修改。键盘输入131421即可进入密码修改模式,初始化密码效果图如图5-4(左)所示。旧密码输入无误后进行新密码设置,得输入两遍,重置成功则会提示ResetPasswordOK。密码修改成功图如下图5-4(右)所示:

图5-4 初始化密码效果图(左)及密码修改成果图(右)

 原理图

PCB图

如果学弟学妹们在毕设方面有任何问题,随时可以私信我咨询哦,有问必答!学长专注于单片机相关的知识,可以解决单片机设计、嵌入式系统、编程和硬件等方面的难题。 愿毕业生有力,陪迷茫着前行!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3