历史上的今天
返回首页

历史上的今天

今天是:2025年04月11日(星期五)

正在发生

2018年04月11日 | 基于红外模块的单片机电子密码锁安全性论证

2018-04-11 来源:eefocus

1 密码锁的安全性论述
1.1 课题背景
    随着科技发展与生活水平的提高,人们的安全意识越来越强。传统的机械锁仍在大量使用,但是在安全性能要求较高的场合,传统的机械锁由于其成本高、制造难度大、安全系数低等缺点,已不能满足需求。
    电子密码锁是由输入密码来控制电路或芯片工作,继而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。近年来,红外遥控技术在各个领域已得到广泛应用,将其应用到电子锁领域,则形成了红外控制开启的电子锁。
1.2 设计目标与意义
    以AT89S52单片机作为主控芯片,设计合理的外围电路,从而构成电子密码锁系统,并对主控芯片编程实现以下功能:
    (1)输入正确密码后开锁。用户按开锁键进入开锁模式,正确键入6位密码,实现开锁。
    (2)用户可随时更改开锁密码。用户按SET键,进入密码设置模式,可设置6位新密码。但要求先正确输入当前密码,然后输入新密码,以防用户误操作,需再次输入新密码进行确定。
    (3)提示输入密码位数。设计有LCD显示电路,当用户通过键盘或是遥控器输入密码时,不显示输入具体数值,而是显示“*”,如此即方便了用户输入,同时增加了保密性。
    (4)防盗报警。当用户输入错误密码时,会提示输入错误。当用户连续3次输入密码错误时,会自动声光报警,以增加防盗安全系数。
    (5)遥控功能。实现一定距离的遥控操作开锁,在车库仓库等应用广泛,用户不需要下车,只需遥控操作,键入正确密码开锁。

2 密码锁安全系统总体方案设计
    根据系统设计目标要求,其系统框图如图1所示。

54



3 红外遥控作用
    遥控编码脉冲信号通常包括3大部分,即引导码、系统码和功能码。
    (1)引导码,也称引导脉冲,一般由高电平1和低电平0的脉冲组成,二者的宽度之比可为1:1,占9 ms,也可为2:1,占13.5 ms(宽度为9 ms的高电平和宽度为4.5 ms的低电平组成),也可能有其他组成情况。引导码的主要作用类似于穿行通信中的同步脉冲,用来标志遥控编码脉冲信号的开始,使遥控接收器能由此判断出所接收的信号是干扰还是系统的遥控代码。
    (2)系统码,也称用户码、识别码、设备码、安全码,用来指示遥控系统的种类,以区别其它遥控系统,防止各遥控系统的误动作。这种码是由生产厂商自行规定,出厂时已设置好。这是不同遥控器不能通用的主要原因。
    (3)功能码,也称键位数据码。它与键盘的键位相对应,由它传送所需要的遥控信息。功能码通常也是由8位原码和8位反码组成。反码的加入是为了能在接收端校对传输过程中是否产生差错。
    下面以LC7461编码芯片为例。LC7461是采用PWM调制的串行二进制码,所发送的一帧数据中含42位码,包含一引导码、13位用户码和8位数据码以及它们的反码。发射码的格式如图2所示。

596


    “1”和“0”的区分取决与脉冲之间的时间:以脉宽为0.565 ms、间隔0.56 ms、周期为1.125 ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”。如图4所示,图中Tm=0.56ms。

+6


  4 遥控模块硬件的安全性设计方案

  4.1 遥控系统的构成

  遥控系统主要由红外遥控发射装置、接收装置、微处理机等组成,如图5所示。

655


4.2 选用芯片介绍
    (1)遥控编码芯片LC7461。



+966


    LC7461是由SANYO公司生产能的遥控专用编码芯片。OSCO和OSC1之间接谐振器。由Ko0~Ko7,KI0~KI3构成键盘的行与列。OUT引脚输出红外发射管控制信号。
    7461产生的遥控编码是连续的42位二进制码组,其中前26位为用户识别利,能区别不同的红外遥控设备,防止不同机种遥控码互相干扰。后16位为8位操作码和8位操作反码用于核对数据是否接收准确。当遥控器上任意一个按键按下超过36 ms时,LC7461芯片的振荡器使芯片激活,将发射一个特定的同步码,对于接收端而言就是一个9 ms的低电平和一个4.5 ms的高电平,使程序知道从这个同步码之后可以开始接收数据。
    (2)一体化红外接收头。
    HS0038接收红外信号频率为38 kHz,周期约26μs,同时将遥控信号的接收、放大、检波、整形集于一身,是红外接收电路一体化的红外接收装置,如图7所示。并能与TTL、COMS电路兼容,简化了接收电路的复杂程度和电路的设计工作。

525


    HS0038为黑色环氧树脂封装,不受日光、荧光灯等光源干扰,内附磁屏蔽,功耗低、灵敏度高。在用小功率发射管发射信号情况下,其接收距离可达35m。HS0038为直立侧面收光型,3个管脚分别是地、+5 V电源、解调信号输出端。


4.3 遥控模块电路设计
    当键盘有键按下时,编码芯片激活,发送相应红外编码信号。由遥控器发送的红外信号,经过红外一体化接收头接收、放大、解调之后,将信号送到单片机P3.2引脚。

+6

 


5 遥控模块软件的安全性设计方案
    (1)HS0038的解调。一体化红外接收头HS0038将接收到的红外信号放大、解调才送给单片机的。接收头接收到的是38 kHz的串行脉冲信号,经过解调之后转换成TTL电平。接收头的解调可简单理解为:在输入脉冲串时输出低电平,否则输出高电平。一体化红外接收头解调前后的信号对比如图10所示,可见解调后信号与编码信号反相。

636


    当按键按下后,经过HS0038解调输出的一帧信号则如图11所示。

4555


    (2)解码。
    7461产生的遥控编码是连续的42位二进制码组,其中前26位为用户识别码,能区别不同的红外遥控设备,防止不同机种遥控码互相干扰。后16位为8位的操作码和8位的操作反码用于核对数据是否接收准确。
    单片机解码是根据一体化红外接收头的解调信号进行的,从上面的分析可知:任意按键按下后,都有9 ms的低电平起始码和4.5 ms的高电平结果码作为引导信号,因此应该在引导码之后才能进行解码。
    如何识别“0”和“1”是解码的关键。根据位定义:“0”、“1”均以0.56 ms的低电平作为起始,两者区别在于高电平的宽度不同,即“0”高电平为0.56 ms,“1”高电平为1.68 ms,因此解码时须根据高电平的宽度来区别“0”和“1”。若从0.56 ms低电平过后,开始延时,0.56 ms之后,检测到的为低电平,则该位为“0”,反之则为“1”。为了保证解码的可靠性,高电平检测延时应该在0.56~1.12ms,否则如果该位为“0”,读到的已是下一位的高电平,因此取(1.12+0.56)/2=0.84ms较可靠,一般取0.84ms即可。


6 密码锁安全系统硬件设计方案
    (1)密码掉电存储模块,如图12所示。

54454


    AT24C02是美国Atmel公司的低功耗CMOS型EEPROM,内含256×8位存储空间。芯片采用I2C总线式进行数据读写的串行器件,占用很少的资源和1/O线,并且支持在线编程,进行数据实时存取十分方便。串行时钟由单片机P3.6引脚提供,通过P3.7引脚对AT24C02进行在线读写。由于该芯片数据掉电不丢失,故用于存放开锁密码。当需要开锁和设置新密码时,均需读取AT24C02中的密码;设置新密码后,在线写AT24C02,覆盖原密码。

445


    (2)开锁电路,如图13所示。开锁电路由三极管、继电器、绿色发光二极管组成,由P2.7引脚控制,低电平有效。按下键盘开锁键进入开锁模式,正确输入6位密码,按下“OK”键之后,单片机对输入密码与设定密码进行对比,对比正确,则P27发出低电平,使三极管Q3导通,从而使得继电器RL吸合,并由继电器控制使得门禁得电打开。此设计中,若是有开锁动作,则绿色LED灯亮。

7 密码锁安全系统软件设计方案
    (1)主程序流程图,如图14所示。

65556


    (2)密码接收子程序流程图,如图15所示。
    若正确接收6位密码,则输入密码存于数组中,返回值为1。若取消操作,返回值为0。
    (3)安全开锁判断子程序流程图如图16所示。

555


    该程序将输入密码进行对比。若密码正确,则返回值为1,表明应该进行开锁动作。密码错误,返回值为0,不进行开锁。有取消动作,则返回3,不进行密码对比。
    (4)更改密码判定子程序流程图如图17所示。
    改程序要求先输入当前密码,当前密码正确后,连续两次输入新密码,两次输入相同时,返回1,表明应该写AT24C02。否则返回0,表明修改密码失败。

8 系统安全性分析论证
    设计采用AT89S52单片机作为主控芯片,结合相应的外围电路,构成电子密码锁系统。该电子密码锁,开发简单、安全性高、成本低,适合办公室、实验室、档案室等场所,其遥控功能更适合应用在车库仓库的安全防盗。在设计完成过程中,先进行Proteus软件仿真,最后进行实物调试,最终达到了预期的设计目标。另外UPS供电还有待解决。电子密码锁安全性能较高,具有较好的市场前景。


推荐阅读

史海拾趣

Free2Move公司的发展小趣事

在电子行业中,Free2Move公司的发展故事虽不直接聚焦于传统电子制造或硬件设计,但其作为出行科技领域的创新者,与电子行业有着紧密的联系,尤其是在汽车电子、物联网(IoT)以及数据服务等方面。以下是五个与Free2Move公司发展相关的事实性故事:

1. 电动汽车生态系统的构建

Free2Move eSolutions,作为Stellantis和Engie EPS的合资企业,致力于电动汽车(EV)产品设计、开发、制造和分销的领先地位。它通过与全球科技企业的合作,如埃森哲,推动电动汽车接入电网,加速出行领域的全面电气化。这一举措不仅促进了电动汽车市场的增长,还带动了电动汽车充电基础设施、电池管理系统等电子相关产业的发展。(参考来源:埃森哲公司官网)

2. 远程信息处理与数据分析的集成

Free2Move与Guidepoint Systems合作,利用远程信息处理技术提升车队管理效率。Guidepoint Air数据监控服务能够接收来自符合条件的Stellantis车辆的数据,包括速度、位置、发动机状态等,为经销商、商业和政府车队提供库存管理和车队管理服务。这种数据驱动的解决方案依赖于先进的电子设备和物联网技术,实现了对车辆运营状态的实时监控和数据分析。(参考来源:百家号)

3. 商业车队解决方案的开发

Free2Move与Samsara的合作是另一个值得注意的案例。两家公司共同开发了一个集成解决方案,使Stellantis原厂远程信息处理设备的数据能够导入Samsara的互联运营云。这一合作让车队客户能够通过一个控制面板访问车辆的GPS定位、发动机工作小时数、燃料使用量和胎压等关键信息,从而提高了车队的运营效率和驾驶员的安全性。这一解决方案的成功实施,依赖于电子传感器、云计算和数据分析技术的深度融合。(参考来源:搜狐网)

4. 共享出行服务的全球扩展

Free2Move在全球范围内提供共享出行服务,包括共享汽车、停车位和充电站等。这一业务模式的成功,离不开电子支付系统、移动应用技术和物联网平台的支持。例如,在中国市场,Free2Move通过与当地合作伙伴的合作,推出了易微享共享汽车服务,为用户提供便捷的出行体验。这一过程中,电子支付、移动应用开发和物联网技术的运用,都是不可或缺的关键因素。(参考来源:雪球)

5. 医疗保健领域的跨界合作

虽然Free2Move的核心业务并非直接面向电子医疗行业,但其品牌名称“Free2Move”被另一家公司在医疗保健领域采用,推出了用于患者运动评估的技术系统。这一跨界合作展示了Free2Move品牌在不同领域的广泛影响力和创新能力。尽管这一故事并不直接涉及Free2Move公司的传统业务,但它反映了电子技术在不同行业间的渗透和融合趋势,以及品牌价值的多元化应用。(参考来源:爱迪斯通(北京)科技有限公司官网)

以上五个故事,从不同角度展示了Free2Move公司在电子行业中的发展和影响,体现了其在技术创新、数据服务、市场拓展等方面的综合实力。

无锡友达公司的发展小趣事

无锡友达深知技术创新的重要性,因此不断加大对研发团队的投入。公司拥有一支经验丰富、技术实力雄厚的研发团队,以及一流的成套设计工具和测试设备。这些团队和工具为公司开发具有自主知识产权的产品提供了有力保障。在数模混合信号处理领域,无锡友达拥有自己的系统设计体系和核心技术,产品研发技术和量产能力处于国内前列。

晨晶电子(Chenjing Electronics)公司的发展小趣事

随着国内市场的不断饱和,晨晶电子积极寻求海外市场的发展机遇。公司凭借优质的产品和服务,成功打开了国际市场的大门。通过与国外客户的深入合作,晨晶电子的产品逐渐走向世界,其品牌影响力也日益增强。同时,公司还积极参与国际电子行业的交流与合作,不断提升自身的国际竞争力。

Danaher Corporation公司的发展小趣事

自上世纪80年代起,丹纳赫集团通过一系列的战略并购,逐渐扩大其在电子行业的影响力。这些并购不仅为丹纳赫集团带来了先进的技术和产品,还增强了其在全球市场的竞争力。其中,对Leica显微系统公司的收购标志着丹纳赫集团正式涉足生命科学业务,为其在电子显微镜和生命科学仪器领域的发展奠定了基础。

Hisetec Electronic Co Ltd公司的发展小趣事

背景:在21世纪初,电子产品市场迅速增长,智能手机和平板电脑等移动设备成为新宠。Hisetec Electronic Co Ltd公司凭借其在微电子封装技术的深厚积累,成功研发出一种高密度、低功耗的封装解决方案,大幅提升了手机芯片的能效比。

发展:该技术迅速被市场认可,多家知名手机制造商如三星、苹果等纷纷采用,Hisetec公司因此订单激增,市场份额大幅提升。公司不仅扩大了生产规模,还进一步加大了研发投入,不断推出新的封装技术,巩固了其在电子封装领域的领先地位。

Hong Kong X'Tals Ltd公司的发展小趣事
由于环境温度和元件参数的变化,实际定时时间可能会有所偏差。在设计时需要考虑这一因素,并留出适当的裕量。

问答坊 | AI 解惑

如何打造行业领军企业

效益是企业赖以生存的前提,创新是企业发展的动力,创新活动,是市场拉动和技术推动两者的汇聚点。在过去的计划经济时代,重庆川仪和当时很多国营企业一样,技术开发严重脱离市场、脱离生产,看似研发成果不断,但真正形成产品并赚回真金白银的却不 ...…

查看全部问答>

初始化网卡问题

EBOOT中的 CS8900: MAC Address: 11:11:11:11:11:11 ERROR: Probe: EISA Number Error. ERROR: InitEthDevice: Failed to initialize Ethernet controller. ERROR: OEMPlatformInit: Failed to initialize Ethernet controller. 这个错误一般 ...…

查看全部问答>

关于6410访问SPI总线的问题,请高手指教

小弟把三星的SPI总线驱动编译进了内核,(开发板提供了源码但是没有加入内核)。然后用WriteFile函数发送测试数据,可以看到SPI口输出正常,但是用ReadFile读取SPI口时,一直读回0. SPI的读取时序如下图,我先用 WriteFile(hSPI, &cBuffer_out, 1, ...…

查看全部问答>

FPGA时序分析之Gated Clock 1

FPGA设计一条原则是尽量使用同步逻辑,即尽量整个设计中使用一个clock,而且该clock尽量走全局时钟线,也就是不要在clock path上加上逻辑,不要用“受控时钟”。但是在有些情况下,“受控时钟”难以避免,例如在用FPGA进行验证ASIC设计时,因为ASIC ...…

查看全部问答>

LM3S8962学习(二) -- 按键与中断

读按键的值,可以通过函数GPIOPinRead来完成   如何实现中断呢?主要有以下几个步骤需要做   1. 先定义一个LED和一个KEY #define LED GPIO_PIN_0#define KEY GPIO_PIN_0   2. 在startup_rvmdk.S 文件中增加PORT_E的中断服务 ...…

查看全部问答>

st32怎样测正负信号?

我需要测小于零的信号,我看过手册,是不是在参考电压端口用一个正负的参考电源?可STM32内部只有一个1.2v的正电源,可怎样找到一个负电源啊?别的单片机一般这样解决办法是采用的双端输入,STM32有没有类视的设置啊?请大家给一个解决方案…

查看全部问答>

【求助】请帮忙选个MOS管做开关管

要求条件是:通过电压为5V电流最大值是2A,有着方面得经验得DX帮忙啊!!!! 先谢谢了啊!!!! 把你们经常用的型号告诉我好吗???…

查看全部问答>

我的车库门摇控器上的LSD2262 芯片坏了...

请问贵网站的LSD2262 芯片能替换上去吗..!!!直接取下焊上就能用吗!!!先谢谢!!!我是菜鸟…

查看全部问答>

深圳证券信息公司招聘高级ARM硬件工程师

深圳证券信息:高级ARM硬件工程师 任职要求: 1、本科以上学历,年龄不限,电子相关专业,5年以上工作经验。 2、精通ARM微控制器架构体系及外围电路设计,熟悉各种协议如DDR2/3、SDIO、URAT等,精通数字和模拟电路,熟悉各类元件性能及设计。 3 ...…

查看全部问答>

人人都爱易电源——转发有礼!

人人都爱易电源——转发有礼! 活动主题:人人都爱易电源——转发有礼!活动时间:10月11日—28日 活动链接:https://bbs.eeworld.com.cn/thread-352431-1-1.html…

查看全部问答>