36 lines
768 B
Python
36 lines
768 B
Python
#!/usr/bin/env python
|
|
# -*- coding: utf-8 -*-
|
|
"""
|
|
Modbus TestKit: Implementation of Modbus protocol in python
|
|
|
|
(C)2009 - Luc Jean - luc.jean@gmail.com
|
|
(C)2009 - Apidev - http://www.apidev.fr
|
|
|
|
This is distributed under GNU LGPL license, see license.txt
|
|
"""
|
|
|
|
#modbus exception codes
|
|
ILLEGAL_FUNCTION = 1
|
|
ILLEGAL_DATA_ADDRESS = 2
|
|
ILLEGAL_DATA_VALUE = 3
|
|
SLAVE_DEVICE_FAILURE = 4
|
|
COMMAND_ACKNOWLEDGE = 5
|
|
SLAVE_DEVICE_BUSY = 6
|
|
MEMORY_PARITY_ERROR = 8
|
|
|
|
#supported modbus functions
|
|
READ_COILS = 1
|
|
READ_DISCRETE_INPUTS = 2
|
|
READ_HOLDING_REGISTERS = 3
|
|
READ_INPUT_REGISTERS = 4
|
|
WRITE_SINGLE_COIL = 5
|
|
WRITE_SINGLE_REGISTER = 6
|
|
WRITE_MULTIPLE_COILS = 15
|
|
WRITE_MULTIPLE_REGISTERS = 16
|
|
|
|
#supported block types
|
|
COILS = 1
|
|
DISCRETE_INPUTS = 2
|
|
HOLDING_REGISTERS = 3
|
|
ANALOG_INPUTS = 4
|