又一次突然遇到用python处理modbus通信而需要crc16校验的问题,当时在百度上没找到,在google上找到了一个外国人开发的python包,结果安装好了之后发现校验的不正确(可能是使用的模式串不一样,xcrc16的模式串为0xa001),后来事情过去了就写了一个包弥补一下,xcrc16 的意思是 extend crc->xcrc ,也是我的第一个开源项目,如果大家使用程序遇到什么情况也麻烦通知我下,我会第一时间进行维护。
介绍:
xcrc16 模块是为了解决crc16校验问题而写
目前只有16位校验,测试支持python2.7及3.2
使用方法
import xcrc16
xcrc16.crc16([0x05,0x01,0x00,0x00,0x00,0x0a])
数据流的形式
import xcrc16
xcrc16.crc16('\x05\x01\x00\x00\x00\x0a')
Linux下的安装方法:
解压
tar xjvf xcrc16.tar.bz2 /unzip xcrc16.zip
进入目录安装
cd xcrc16
python setup.py install
安装如果失败时候请确保你使用root权限执行
项目地址 : http://git.oschina.net/quanwei9958/XCRC16