智能门禁系统监控面板软件的设计(13)
时间:2025-04-25
时间:2025-04-25
论文主要研究了基于MODBUS总线技术的智能门禁系统监控面板软件的设计思想与实现方法,同时对整个系统的组成及硬件实现也作了简单介绍。系统采用了MIFAREI射频卡原理,基于MODBUS总线技术,使用了Keil uVision2开发工具。软件采用了模块化的设计方法,使用C语言结合串口通信技术完成了监控面板软件的设计。
2.1.3错误检测方法
标准的MODBUS串行网络采用两种错误检测方法。帧检测分为LRC校验和CRC校验,它们都是在消息发送前由主设备产生的,从设备在接收过程中检测每个字符和整个消息帧。用户要给主设备配置一预先定义的超时时间间隔,这个时间间隔要足够长,以使任何从设备都能作为正常反应。如果从设备测到一传输错误,消息将不会接收,也不会向主设备作出回应。这样超时事件将触发主设备来处理错误。发往不存在的从设备的地址也会产生超时。
(1) LRC检测
使用ASCll模式,消息包括了一基于LRC方法的错误检测域。LRC域检测了消息域中除开始的冒号及结束的回车换行号外的内容。LRC域是一个包含一个sbit二进制值的字节。LRC值由传输设备来计算并放到消息帧中,接收设备在接收消息的过程中计算LRC,并将它和接收到消息中LRC域中的值比较,如果两值不相等,说明有误。LRC方法是将消息中的sbit的字节连续累加,丢弃了进位。
(2) CRC检测
使用RTU模式传送数据时,消息中包括了一个基于CRC错误检测域。CRC域检测了整个消息的内容。CRC域是两个字节,16位的二进制值。它由传输设备按CRC计算后加入到消息中。接收设备重新计算收到消息的CRC,并与接收到的CRC中的值比较,如果两值相同,则正确,如果不同,则有误。
CRC-16(循环冗余错误校验)校验方法是:先调入一值是全‘l’的16位寄存器,然后将消息中连续的8位字节各当前寄存器中的值进行处理。仅每个字节的8位数据位对CRC有效,起始位和停止位以及奇偶校验位均无效。CRC产生过程中,每个8位字符都单独和寄存器的值相异或,结果向最低有效位方向移动,最高有效位以O填充,异或后寄存器的值的LSB(最低有效位)被提取出来检测,如果LSB为1,寄存器单独和预置值异或,如果LSB为O,则不进行。整个过程要重复8次。在最后一位(第8位)完成后,下一个8位字节又单独和寄存器的当前值异或,最终寄存器中的值,就是消息中所有的字节都执行之后的CRC的值。 [9]
2.2 MIFARE1射频卡原理
2.2.1 MIFARE1卡结构及功能组成
MIFARE1非接触式IC卡的核心是Philips公司的MIFARE1 IC S50(-01,-02,-03,-04)系列微模块(微芯片)。它所具有的独特的MIFARE RF(射频)非接触式接口标准已被定为国际标准:1S0/IEC14443 TYPEA标准。目前许多较大的IC卡