#代码部分
首先注意一点Python版的modbus要获取modbus值必须先装【环境包】
pip install serial
# serial为串口包,需要打开串口,也就是usb
pip install crcmod
# crcmod 用来crc校验的
pip install modbus_tk
# modbus_tk 就是满足modbus协议的Python包
import crcmod
from binascii import unhexlify
import modbus_tk
import time
import serial
from modbus_tk import modbus_rtu
from modbus_tk import defines as cst
import logging
def crc16Add(read):
try:
crc16 = crcmod.mkCrcFun(0x18005, rev=True, initCrc=0xFFFF, xorOut=0x0000)
readcrcout = hex(crc16(unhexlify(read))).upper()
str_list = list(readcrcout)
if len(str_list) == 5:
str_list.insert(2, '0') # 位数不足补0,在列表中下标为2的加入元素0
crc_data = "".join(str_list)
read = read.strip() + crc_data[4:] + crc_data[2:4]
return read
except