采用STCl2C2052的无电源电子锁系统方案设计
通过R4的电流较大,这时放大器TLV2522输出经两个反向驱动后送给单片机的P3.3,此时为“O”,利用此信号产生中断信号,停止开锁、闭锁操作,以此起到对电机的保护作用。
2 软件系统设计
系统软件由控制部分主程序、数据接收程序、电机驱动程序、手持部分主程序、数据发送程序组成。控制部分与手持部分传送开门、关门信号和钥匙密码信号,其中钥匙密码信号用1l位二进制数,具有较好的安全性。
2.1 数据“0”,“1”传送方法
采用异步FSK通讯方式,使用信号的不同频率来区分“0”和“1”,如图6所示。
当信号频率为20 kHz时,代表传输为“O”;当信号频率为10 kHz时,代表传输为“1”。当晶振为12 MHz时,机器周期大约为1μs。在接收部分,定时器/计数器1用来记录机器周期的个数。当记录的机器周期个数在30~70之间时,可以确定接收到的是“O”(O的标准个数为50个);当记录的机器周期个数在80~120之间时,确定接收到的是“1”(1的标准个数为100个),其他情况按错误处理。
2.2 通信协议设计
在传送的信息中,一部分是开锁、闭锁控制命令信号,另一部分是钥匙密码信息。控制部分接收到钥匙密码信息,经验证与本机的密码一致后可以执行开锁、闭锁操作。采用异步通信方式,定义协议格式为起始位、钥匙密码信息位、开/关位、校验位。其中,起始位为1位;钥匙密码信息为11位;开/关位为1位;校验位为4位。当起始位为“0时,表示一帧数据的开始,加上此后连续的16位为一帧数据。钥匙信息共有2048种组合,开/关位为“1”,代表开锁操作;开/关位为“0”,代表闭锁操作;校验位由11钥匙信息位和1为开/关位共12位(由高到低4位为1组)经2次异或操作得到。
2.3 程序设计
手持部分主程序完成系统初始化、读取按键,形成数帧,启动发送等任务。使用定时中断T1,完成数据的发送过程。当为数据“0”时,定时器初值为65 535-50=65 485=FFCO(H);当为数据“1”时,定时器初值为65535-100=FF9B(H),逐次发送各位,直到将一帧数据发送结束。手持部分主程序和T1中断程序流程如图7和图8所示。
控制部分采用定时器T0和外部中断O实现,初始化设置定时器为内部计数方式,计数初值为0。当手持部分信号到达控制部分时,单片机的外部中断O产生中断,在中断程序中读取计数器的计数值t。当30≤t≤70时,接收到的位为“0”;当80≤t≤120时,接收到的位为“1”。将接收的各位组合起来恢复发送的一帧数据,经检验处理正确无误后进行开锁或闭锁操作。
3 结语
电子锁系统的数据线和电源线采用一线制连接,使用方便;钥匙密码以加密的方式写入存储器中,具有很高的安全性;不需要现场提供电源,解决了传统电子锁需要现场提供电源的问题。电子锁系统已在胜利油田孤岛采油厂、东辛采油厂注水井的安全保护和东营移动通信公司通信线路地井的防盗装置上得到了应用,具有较好的实用推广价值。
系统 方案设计 电子 电源 STCl2C2052 采用 相关文章:
- Linux嵌入式系统开发平台选型探讨(11-09)
- VxWorks实时操作系统下MPC8260ATM驱动的实现(11-11)
- VXWORKS内核分析(11-11)
- Linux内核解读入门(11-09)
- linux文件系统基础(02-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)