0020基于C51单片机WIFI遥控防盗电子密码锁 原理图PCB设计proteus仿真

2021年4月22日 0 条评论 2.27k 次阅读 1 人点赞

【前言】

     hello 大家好,今天给大家讲一讲基于51单片机的电子密码锁,密码锁现在已经在我们生活中越来越普及,功能也越来越强大,今天钛叔讲的密码锁是基于WIFI模块的简易遥控密码锁。

     本次设计采用的MCU仍然是基于51内核的单片机STC12C5A60S2,整个设计可以分为六部分——主控、显示、电源、报警、继电器以及WIFI模块。通过WIFI开启/关闭密码锁,也可以通过WIFI设置新密码,当密码连续输入错误三次即报警。

 

【硬件电路设计】

    下面是该设计的整体原理图和PCB设计概览,原理图模块化分布,每部分都备注有对应的功能名称,便于阅读;PCB设计采用的3D封装的器件,主要是方便配合结构设计。

原理图:

PCB:

(板子上方丝印部分可以用来标标记个人信息)

 

下面详细介绍一些设计注意点哈,抛砖引玉~

1、关于MCU   本设计采用的MCU为STC公司的STC12C5A60S2,该芯片使用经典的MCS-51内核,钛叔相信绝大多数的朋友都熟悉该芯片的基本使用,毕竟这算是入门的第一款单片机了。最小系统如下图所示,很简单,这里不赘述具体原理。另说一句,在我们调试MCU小系统的时候,如果工作异常,无论什么类型芯片,首先第一步就是检查芯片的供电电源是否正常,再之后检测晶振和复位,绝大多数的问题都是出在这三个地方,钛叔记得以前学生时代有一次调试51单片机就始终下不进去程序,电源正常,复位也正常,最后发现就是晶振的谐振电容错焊成了1000pf,导致晶振起振失败,诸如类似的问题都可能导致芯片启动失败,所以大家按照我上述的三个点出发去调试,就一定能够解决问题。

(下载接口钛叔这里采用的XH2.54,大家可以在钛叔的店铺采购下载器,通过XH2.54连接线可以直接相连,避免插错的情况)

另外,钛叔这里也预留了几个扩展IO,可以用来增添一些其他功能。下图中的WIFI切换开关的作用是为了仿真串口直连模块的情况下影响下载程序,所以做了一个拨码开关,当需要下载程序的时候拨到一侧,需要通信的时候拨到另外一侧(这是钛叔最开始使用STC89C52时候设计的,后来使用的STC12C5A60S2加强型的有两路串口,P1.2  P1.3为另外一路,所以大家也可以不加这个拨码开关,直接使用P1.2  P1.3这一路)

 

2、关于电源    如下图所示,钛叔在设计电源接口的时候根据实际使用情况多方面考虑,设计了三种接口方式——排针、WJ128接线端子以及miniUSB,排针可以用在杜邦线供电的情况,接线端子可以用在电源裸线供电的情况(这两种情况供电根据板载丝印正确插入,切记别插反),miniUSB供电的方式比较推荐,可以避免插反烧坏板子情况,钛叔这里之所以采用miniUSB而不是microUSB,主要原因是由于microUSB体积比较小,在开放性板子上面容易多次拔插情况下给搞坏导致接触不良(所谓开放性板子就是无结构件固定的裸板),所以这里钛叔没有采用microUSB。

电源开关部分钛叔采用的是8.5x8.5的自锁开关,这里需要注意就是自锁开关的方向,有部分同学焊接反了导致按下时候为电源关断,弹上来是电源闭合。

钛叔在该设计板上习惯性放了三个MRK点,如果大家有需要量产的需求,且板子比较大不会涉及拼版的情况,就记得放,如果后面是需要拼版的话,可以在最终的大板上放MRK点。

因为板载的WIFI模块需要3.3V供电,所以这里加了一个LDO稳压芯片,采用的是SPX3819,这里需要注意一下ESP8266芯片建议电源的电流达到500mA,所以大家在设计电源时候需要考虑足。

 

3、关于报警     该项目加入了报警功能,报警电路部分原理很简单,大家可以参考下图,一个蜂鸣器加LED就可以实现,这里需要注意两个地方,第一是蜂鸣器建议大家选用有源的,操作简单很多,另外就是电压需要选择对应的,钛叔这里采用的是5V的HNB09A05;第二就是这里的三极管建议大家采用PNP管子,原因是该单片机上电默认为高电平,如果这里采用的NPN管子,上电瞬间就会声光报警(即便程序里边该IO口初始化为低),所以这里我们采用PNP管子来避开这种情况。

 

4、关于继电器    该项目设计了一路继电器,主要是来控制电磁锁的开合。 继电器的型号采用的是惠科的HK4100-DC5V,5V的继电器,使用也很简单,大家可参考下图,继电器可以并联一组LED方便识别继电器的状态。这里同样推荐大家采用PNP的三极管,原因也和上面的蜂鸣器一样,避免单片机刚上电时候误触发。

 

5、关于WIFI模块     该项目中使用的WiFi模块位常用的ESP8266,说到这个模块,钛叔多说两句,这次本来钛叔最开始使用的MCU型号是STC89C52RC的,在调试ESP8266时候,因为模块默认的波特率是115200,而STC89C52RC达不到这个速率,所以给ESP8266重新下载了固件使其工作在9600,就因为重新下载了可修改波特率的固件,然后WIFI模块会不断的复位从而导致掉线,这个问题钛叔尝试了很多方法调试都没办法搞定,最终就只有换MCU,改为加强型的STC12C5A60S2,工作波特率在115200,运用模块默认的固件

此外,钛叔这次使用ESP8266还发现个问题,就是该模块一旦上电工作,其电源3.3V上就会叠加接近200mv的间断性的杂波,这个串扰进来的信号会串到板子其他电源去,包括5V电源,所以如果板子内有对电源敏感的器件,一定要做好隔离,比如心率测量这种模块,受影响非常之大。

 

6、关于PCB布局布线    该芯片的外围比较简单,工作频率也不算高,大家根据器件的原理图位置合理放置就OK,关于GND尽量要保证底层的地完整,不要切割太多,上层的每个GND焊盘附件放置数个过孔,具体的设计大家可以参考我下图。

 

【程序设计】

    钛叔想了一下,文字来描述程序可能有点拘束,该部分后面再录视频给大家讲解。

 

【实物】

 下面是钛叔做出的实物,是不是看着挺漂亮的😄!调试一切OK,功能正常。

 

演示视频:

https://www.bilibili.com/video/BV1yA411L7ut/

购买地址:

https://item.taobao.com/item.htm?ft=t&id=642362276323

资料地址:

链接:https://pan.baidu.com/s/1lbcB4fVSKCkX3SBisxZRRg

提取码:azkn

 

极寒钛

别给思维设限