当前位置:首页 > 能力拓展训练 - 电子密码锁设计
武汉理工大学《能力拓展训练》说明书
由于本人的单片机实验箱自带一片STC90C516RD+单片机,故本次设计直接使用STC90C516RD+单片机作为本设计的控制核心。这个型号的单片机用户应用程序空间达到了61K,用户应用程序存储空间非常大,因此不用考虑使用外部存储。其引脚图如图2所示。
图2 STC90C516RD+引脚图
3.2键盘检测电路
键盘模块是系统的人机交流模块,主要为用户提供进行密码输入、设置、确认、删除的功能。该设置功能模块中包括了0~9对应的数字按键,每一个数字对应一个按键,以及设置、确认、删除键,用户开机后可以点击数字键进行密码键入,通过删除键修改密码,确认无误后可以点击确认键进行确认提交,系统通过对比做出相应响应,同时用户原密码正确输入后可以点击设置键进行密码重设,并点击确认键进行提交新密码,当然期间可以通过删除键进行修改新密码,直到最后的提交,重设密码完成!
由于按键比较多,为了节省I/O口的资源,本系统采用4*4矩阵键盘。又因为变成扫描、定时扫描的键盘工作方式过多的占用CPU时间,本系统为了不过多的占用CPU的时间,
5
武汉理工大学《能力拓展训练》说明书
采用中断扫描方式。采用外部中断1处理键盘扫描程序,具体工作思路为先给P1口赋值0xf0,这样不论那个按键被按下均会产生一个低电平,通过四路输入与门后同样产生一个低电平,从而产生一个下降沿(程序中设定外部中断1为下降沿产生中断模式),四输入与门的输出端与P3.3相连,其他部分见图3。
图3 键盘检测电路
3.3 LED显示电路
LED显示电路非常简单,单片机P2.6口接LED阴极。当密码正确时,单片机P2.6脚
输出低电平驱动LED发光。具体电路请参见附录总电路图。
3.4 数码管显示电路
本次设计要求使用LED显示用户密码输入。题设已经要相应要求,所以本设计采用四位共阴极的LED七段数码管。如图4所示为4位7段共阴极数码管的引脚图。由于所有的段选并联到同一个 I/O上,因此,如果是所有的4位7段LED都选通后,4位7段LED将会显示相同的字符。要使各个位的7段LED显示不同的字符,就必须采用动态扫描方法来轮流点亮每一位7段LED,即在每一瞬间只选通一位7段LED显示单独的字符,在此段点亮时间内,段选控制I/O口输出要显示的相应字符的段选码,而位选控制I/O口则输出位选信号,向要显示的位送出选通电平(共阴极送出低电平),使得该位显示相应字符。这样可以使4位7段LED轮流点亮,使得每位分时显示该位相应的字符。由于人眼的视觉暂留时间为0.1秒,当每位显示的间隔未超过33ms时,并在显示时保持直到下一位显示,则人眼的视觉暂留效果使眼睛看上去就像是4位7段LED都同时点亮。设计时要注意每位显示的时间间隔,由于一位7段
6
武汉理工大学《能力拓展训练》说明书
LED的熄灭时间不能超过 100ms,也就是说点亮其它位所用的时间不能超过100ms,这样当有N位的7段LED用来显示时,每一位间隔的时间t就必须符合式子:t≦100ms/(N-1),本设计中N=4,则由式子可以算出t≦33ms,也就是每一位的时间间隔不能超过33ms。当然时间可以设得稍微短一些。
图4 四位七段共阴极数码管引脚图
如图5所示为本显示电路4位7段LED数码管显示模块电路图。A、B、C、D、E、F、G依次接P0.0--P0.6,DP接P0.7管脚,同时P1口接入上拉电阻,在P1口没有输出时将P1口电平拉高。1--4为数码管位选的输入,依次接P2.0--P2.3管脚,具体电路如下。
7
武汉理工大学《能力拓展训练》说明书
图5 数码管显示电路
3.5 24C02密码存储电路
24C02是电可擦除的PROM,采用256*8-bit的组织结构以及两线串行接口,电压可允许低至1.8V,待机电流和工作电流分别为1uA和1mA,24C02具有页写能力,每页为8字节。其擦写寿命长达100万次,数据可保存100年,完全满足本次设计要求。其具有两线串行接口,完全兼容I2C,本次设计就是采用I2C对24C02进行操作。其引脚图如图6所示。
图6 24C02引脚图
本次设计A0、A1、A2、WP均接地,SCL接P2.4,SDA接P2.5,如图7所示。
8
共分享92篇相关文档