单片机设计实践|密码锁设计电路讲解
前期几天的一篇推文为《如何利用单片机设计产品》(详情点击这里),文中以设计一款密码锁为例讲了单片机的开发流程,那今天就要实践一下,具体讲解设计过程,希望对初学者起到入门帮助作用,同时也希望大神能给多多指正。
本设计所使用的画图软件为AD9的绿色免安装版本,还没有安装的朋友请点这里。
因为本设计只用了12个IO口,所以我又重新选了一款STC的51单片机:STC15W404AS,该单片机总共16个引脚,其中有14个IO,所以完全够用。
先看单片机的最小系统电路:
该款单片机有内部晶振,所以在该设计中使用内部晶振。
该款单片机虽然有复位引脚但是不需要复位电路,在其手册上有说明,可以把复位引脚当做IO口来用。
晶振情况和复位引脚情况见下图:
在现在程序时勾选“使用内部IRC时钟”就可以选择内部时钟了,并且时钟频率从5.5296M-33.1776M可选;勾选“复位脚用作I/O口”可以把复位引脚当做IO口来用。
电源电路选择5V供电,使用DC三脚插座,再加一个开关控制电源的通断。
使用ISP下载方式,USB/TTL的电平转换芯片选择CH340G。
由于STC单片机在下载程序时需要给单片机断电再重新上电,所以在单片机的供电引脚加了一个跳线,以实现单片机的断电功能。所以就不用买下载器了。
采用NPN三极管驱动蜂鸣器,三极管作为开关来用时要将负载接在集电极上,即所谓的射极跟随,这样可以提高驱动能力(三极管用作开关详情点这里)。图中的10K电阻起到下拉的作用,即将基极电位拉倒低电平防止误动作(上下拉电阻详情点这里)。
继电器也采用NPN三极管来驱动,一定要注意的是,线圈上的续流二极管一定不要忘记(三极管驱动继电器详情点这里)。
按键采用四腿机械式按键,图中的电阻是上拉电阻,在无按键发生时该电阻可以将单片机的IO口上拉倒高电平,当按键按下时单片机的IO口为低电平(上拉电阻详情点这里)。
用了5个IO口驱动了5个LED,采用的是灌电流的方式,单片机有拉电流和灌电流之分,通常灌电流要大于拉电流(单片机的灌电流和拉电流详情点这里)。
本设计中要使用4位数码管,为了节省IO口,使用了两片74HC595,74HC595是8位的移位寄存器带锁存功能,只需要三个IO口即可。改天专门介绍一下这款芯片。
以上就是单片机密码锁的硬件设计,讲的不太清楚的地方欢迎大家在QQ群(143586739)里讨论,或者加我个人微信(liuzhx2000)讨论。
通过这边文章你可以学到:
本设计内容虽然简单,但都是基础的内容,希望能帮到刚入门的朋友,也希望大神门一起讨论交流。下次会教大家如何把原理图画成PCB。
中间我会穿插介绍一些常用的芯片、元器件等,希望大家时刻关注该公众号。