基于单片机的红外遥控电子密码锁的软件设计 下载本文

龙源期刊网 http://www.qikan.com.cn

基于单片机的红外遥控电子密码锁的软件设计

作者:朱利洋

来源:《商情》2015年第43期

采用单片机STC89C52作为核心元件,利用红外线遥控原理及单片机串行发射、接收功能而设计的一款拥有遥控开锁功能的电子密码锁,该电路主要是由红外线编码电路、声光提示报警电路、红外线解码开锁电路、显示及键盘电路组成。系统能够完成开锁、超次锁定、出错报警、修改用户密码等一些基本的密码锁功能,同时能实现声光提示、遥控等功能。 单片机红外遥控电子密码锁 一、系统构成框图

本系统使用单片机STC89C52作为设计的核心元件,同时利用红外线遥控原理及单片机串行发射、接收功能设计的一款具有遥控开锁功能和本机开锁的电子密码锁,遥控距离范围0.4-7m。同时有加密、修改密码和较强的抗干扰能力。当密码输入出错时能立即报警。系统的组成框图如图1。 图2主程序流程图

系统的主程序流程如下,开始先将LCD1602初始化,随后定时器初始化,液晶屏显示欢迎界面。接下来通过红外遥控按键操作,如果有按键按下则显示屏显示相关的信息同时对按键信息进行处理,如此的循环,主程序流程图如图2所示。 三、红外接收流程图

本系统接收红外信号流程是,首先判断是否有高脉冲出现,如果说没有出现则该流程就结束,如果出现,就检测该脉冲的宽度,通过判断其是否是引导码,如果不是,则该流程就结束,如果是就接收前16位地址及地址反码,接着就接收后16位数据码和数据,最后转换键值,并流程结束。主要流程图如图3所示。 四、I2C总线数据读写流程图

I2C写操作流程:先启动I2C总线,发送控制字(写)信号,然后发送字节地址,接着通过调用单字节写入子程序,判断是否写完,如果没有写完,则重新循环到调用单子节写入子程序步骤,如果是写完了,就进行下一步发送停止信号,延时等待内部写入最后返回,流程结束。其流程图如图4所示。