EDN China > 设计实例 > 嵌入式系统 > MCU(单片机应用) > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

(多图) 基于单片机的现场无电源电子密码锁设计

现代电子技术 马秀军 孙士明 吴娟 谢星周?? 2010年07月21日 ?? 收藏0

  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所示。

手持部分主程序和T1中断程序流程

  控制部分采用定时器T0和外部中断O实现,初始化设置定时器为内部计数方式,计数初值为0。当手持部分信号到达控制部分时,单片机的外部中断O产生中断,在中断程序中读取计数器的计数值t。当30≤t≤70时,接收到的位为“0”;当80≤t≤120时,接收到的位为“1”。将接收的各位组合起来恢复发送的一帧数据,经检验处理正确无误后进行开锁或闭锁操作。

  3 结语

  电子锁系统的数据线和电源线采用一线制连接,使用方便;钥匙密码以加密的方式写入存储器中,具有很高的安全性;不需要现场提供电源,解决了传统电子锁需要现场提供电源的问题。电子锁系统已在胜利油田孤岛采油厂、东辛采油厂注水井的安全保护和东营移动通信公司通信线路地井的防盗装置上得到了应用,具有较好的实用推广价值。


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

单片机? 电子密码锁? 采油井? 电机?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈