作者: 时间:2009-06-09 来源: | |
以往个人资料保存、部门文件档案多用机械锁,需携带多把钥匙,使用极不方便,钥匙丢失后安全性差。随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。为满足人们对门锁的使用要求、增加其安全性,电子密码锁应运而生,它具有防试探按键输入,智能控制上锁、开锁、报警、修改密码等多种功能。鉴于以往单片机的内部程序存储器不能由单片机自身修改,要完成修改密码功能,多采用片外串行E2PROM实现。STC89系列单片机,高速、低功耗、新增在系统/在应用可编程(ISP,IAP)功能,使不具有E2PROM的单片机具有了E2PROM的功能,可以在线对现场历史数据的存储功能,适用于一些需经常改变数据的应用产品(如计费器、门禁系统等)及需远距离改变设备参数的产品(遥控设备等)。采用STC89C52单片机设计的电子密码锁,利用内部E2PROM资源,不需要外接程序存储器就能完成修改密码等多种功能,并且保密性高、成本低、简单易行,符合住宅、部门办公安全要求。 1 设计思路及软硬件实现 电子密码锁工作时分为两种工作状态,分别是正常状态和锁定状态。锁定状态时,输出锁定信号,供外部执行机构使用,实现上锁功能;正常状态时,锁定信号消失,供外部执行机构使用,实现开锁功能,并允许用户进行密码修改。 电子密码锁设计分硬件和软件部分。硬件电路见图1,包括稳压、晶振、复位、3×4键盘、指示灯、报警和电机驱动电路。软件编程思路如图2所示。 2.1 STC89C52RC单片机内部E2PROM 在STC89C52单片机中有2 kB的E2PROM存储器,分8个扇区,每个扇区512 B,擦写次数可达10万次以上,写人数据有效保存时间可达100年。片内DataFlash(E2PROM)地址如表1所示。 2.2 相关特殊功能寄存器 与使用STC89C52RC单片机内部E2PROM有关的特殊功能寄存器见表2。 2.2.1 ISP CONTR控制寄存器 ISP_CONTR控制寄存器的功能见表3。 ISPEN:功能允许位。0禁止改变FLASH内容;1允许改变内容。 SWBS:软件选择从用户区启动还是从ISP启动。0从用户区启动;1从ISP启动。 SWRST:软件复位操作。0不操作;1产生软件系统复位,硬件自动清零。 读、写、擦除扇区时间由控制寄存器设置。 2.2.2 ISP_TRIG命令触发寄存器 在ISP_CONTR最高位ISPEN=1时,对ISP_TRIG先写46H,再写B9H,读写E2PROM的命令才会生效。 2.2.3 ISP_CMD命令寄存器 ISP_CMD对读写或擦除FLASH进行控制,其功能见表4。 使用单片机内部FLASH E2PROM写入数据或擦除数据时,需要用专门的存储器存放处理的数据和地址,ISP_DATA用来存放数据,ISP_ADDRH用来存放地址高字节,ISP_ADDRL用来存放地址低字节。 3 结 语 |
用户283097 2010-5-8 14:00