当前位置:首页 > 基于51单片机的电子密码锁 - 毕业论文 - 图文
金陵科技学院学士学位论文 第3章 硬件设计
3、硬件设计
3.1 单片机主控制模块(含晶振、复位基本工作电路)
图3.1 主控制模块
3.2 键盘输入模块
本设计中采用3*4矩阵键盘,与AT89C51的P1口相连,提供按键输入,如图3.2:
图3.2 键盘输入模块 表3.1 按键功能 按 键 1-9键 * 键 # 键
9
键 名 数 字 键 重 设 密 码 键 确认键 功 能 说 明 输 入 密 码 设 定 新 密 码 确认密码输入完毕 金陵科技学院学士学位论文 第3章 硬件设计
3.3 显示模块
图3.3 显示模块
此设计中,使用了四个共阴极数码管,使用动态显示技术控制数码管。其4个位选信号与P2.0-P2.3相连,当其中某位为低电平时表示选中该位;8段段选信号与P0口相连,当其中某段为高电平时导通该段,特殊的,由于AT89C51的P0口的驱动能力较弱,不足以驱动数码管点亮,故在此又引入上拉电阻以驱动数码管。
关于上拉电阻有如下介绍:
1、当TTL电路驱动CMOS电路时,如果电路输出的高电平低于CMOS电路的最低高电平(一般为3.5V), 这时就需要在TTL的输出端接上拉电阻,以提高输出高电平的值。 2、OC门电路必须加上拉电阻,以提高输出的高电平值。
3、为加大输出引脚的驱动能力,有的单片机管脚上也常使用上拉电阻。 4、在CMOS芯片上,为了防止静电造成损坏,不用的管脚不能悬空,一般接上拉电阻产生降低输入阻抗, 提供泄荷通路。
5、芯片的管脚加上拉电阻来提高输出电平,从而提高芯片输入信号的噪声容限增强抗干扰能力。
6、提高总线的抗电磁干扰能力。管脚悬空就比较容易接受外界的电磁干扰 。 7、长线传输中电阻不匹配容易引起反射波干扰,加上下拉电阻是电阻匹配,有效的抑制反射波干扰。
10
金陵科技学院学士学位论文 第3章 硬件设计
3.4 报警模块
图3.4 报警模块
报警模块由蜂鸣器、PNP三极管和单片机组成。选择一只压电式蜂鸣器,压电式蜂鸣器工作时约需要100mA驱动电流。特殊的,此处为加强驱动能力,选用三极管来放大电流驱动蜂鸣器。当89C51的P3.0口输出为低电平时,三极管导通,蜂鸣器产生蜂鸣音,89C51输出为高电平时,蜂鸣器不发声。
3.5 开锁模块
图3.5 开锁模块
此处以继电器的动作来模拟锁的开闭。同样,为了增强驱动能力添加了PNP三极管以放大电流,当P3.1口为低电平时,三极管导通,此时继电器动作(锁开),灯亮;二极管具有续流作用以保护器件安全。
11
金陵科技学院学士学位论文 第4章 软件设计
4、软件设计
4.1 系统程序设计流程图
开始 初始化 A 旧密码输入 新密码输入 存入缓存区 N 再次输入密码 重新输入 模式选择 B 识别按键 手动清除 N 密码输入 Y 密码比较 开门 完成返回 图3.6 流程图
4.2 系统程序设计
重要端口定义说明: sbit buzzer=P3^0; sbit relay=P3^1;
uchar code table[2]={0x40,0x00 }; //共阴极数码管编码 显示‘-’和 熄灭 uchar keyword[4]={1,1,1,1}; uchar keycmp[4];
uchar key=0,num=0,flg=0;
报警子程序:(通过控制buzzer端口的高低电平来控制三极管的通断,从而控制蜂鸣器) void alarm() { num=0; buzzer=0; delay(100); buzzer=1; }
12
共分享92篇相关文档