另外还有接地与接电源未标出:
GND:接地。
VCC:接+5V电压。
图6  掉电存储电路
2.5 开锁电路及报警电路设计
本设计用继电器驱动电磁锁构成开锁电路如图7。单片机通过P0.4发出信号给继电器,使继电器常闭开关断开,常开开关闭合,使电磁锁通电,实现开锁动作[5]。在此通过发光二极管的亮灭,来表示电磁锁是否打开。
电磁锁通常需要12V、24V或许更高。而单片机的工作电压是5V,这样就不能直接驱动电磁锁,通过继电器控制旁路开关,可以控制电磁锁电路的导通。既安全又简便。
 
图7  密码锁驱动电路
本设计采用蜂鸣器进行报警。通过NPN型小功率三极管进行放大,以提高报警声音。如图8所示:
 
图8  蜂鸣器电路图
3. 软件程序设计
3.1 主程序介绍
本设计程序分为两部分:主机接收程序如图9、遥控发射程序如图10。
主机接收程序由主程序、键盘扫描程序、红外接收程序、LCD显示程序、E2PROM读写程序以及各功能按键程序等。
遥控发射程序由主程序、键盘扫描程序、红外发射程序、初始化程序。
主机接收程序执行时,首先进行初始化操作,然后进行检测键盘是否锁定,如果锁定,检测用户是否按下管理员按键进行键盘解锁。如果未锁定,进行键盘扫描,同时接收红外发射数据,检测用户是否按下输入密码按键,进行密码录入。程序中设有几个功能按键,删除、复位、修改密码、管理员、输入、确认吹冰个按键。当用户按下相应功能按键进入相应功能模式。若用户按下删除按键,程序会删除用户上次输入的字符,进行重新录入。当用户在除键盘锁定状态下,任意时刻按下复位,程序都会跳转并进入欢迎界面。当进入修改密码模式,首先对用户进行管理员权限检测,若是管理员,则要求输入旧密码,输入正确,提示输入新密码,实现密码的修改。当进入输入密码模式时,启动定时中断,对用户录入密码进行计时,如果超出规定时间,按输入错误密码进行报警。当输入正确时进行开锁,错误时进行报警。并对错误次数进行计算,超过3次,进行键盘锁定。当键盘锁定后,程序不在进行所有按键的扫描,只对管理员按键进行扫描,判断用户是否进入管理员模式,进行解锁。
 图9  主机接收程序流程图
红外发射程序执行时,首先进行初始化操作,然后对键盘进行逐行扫描,若有按键按下,并判断按键号,将按键号通过红外发射编码协议进行编码、调制,然后通过红外发射管发射出去。
 
图10  遥控发射程序流程图
3.2 掉电存储编程原则
当比较密码的时候,需要读AT24C02程序,将存储在芯片内的数据读到单片机RAM中,然后和输入的密码相比较。当修改密码的时候,需要把输入的密码保存到AT24C02中。
AT24C02支持I²C,总线数据传送遵守I²C协议。主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据(发送或接收)的模式,由于A0、A1和A2可以组成000~111八种情况,即通过器件地址输入端A0、A1和A2可以实现将最多8个AT24C02器件连接到总线上,通过进行不同的配置进行选择器件[6]。由于本次设计只需要一片AT24C02,所以程序不需要考虑识别从机。
单片机与AT24C02之间数据传递时,应按I²C协议进行起始、终止信号及应答信号的传送如图11。I²C总线规定: 
SCL 线是高电平时,SDA 线从高电平向低电平转变时,这个情况表示起始条件;
SCL 线是高电平时,SDA 线由低电平向高电平转变时,这个情况表示停止条件。
上一篇:51单片机电话远程控制系统设计+源码+流程图
下一篇:地铁隧道及站台无线覆盖方案

认知无线电网络中基于双...

基于TCP/IP技术的转向架振动测试系统设计

STC89C52单片机智能车红外避障控制设计

基于PM2.5浓度的健康出行路径规划及实现

基于涡旋电磁波的新型雷达成像技术研究

基于相关滤波器的长期跟踪算法研究

变分模态分解方法研究及...

谷度酒庄消费者回访调查问卷表

辩护律师的作证义务和保...

国内外无刷直流电动机研究现状

《醉青春》导演作品阐述

拉力采集上位机软件开发任务书

浅谈新形势下妇产科护理...

高校网球场馆运营管理初探【1805字】

中国古代秘书擅权的发展和恶变

浅谈传统人文精神茬大學...

多元化刑事简易程序构建探讨【9365字】