Modbus 0.3
Библиотека Modbus для STM
Loading...
Searching...
No Matches
__modbus_compat.h
Go to the documentation of this file.
1/**
2*******************************************************************************
3* @file __modbus_compat.h
4* @brief Модуль для совместимости библиотеки MODBUS.
5*******************************************************************************
6* @details Файл содержит API старых функций, а также заглушки для отключенных модулей:
7******************************************************************************/
8#include "modbus_core.h"
9
10
11/** @addtogroup MODBUS_LEGACY_API Legacy API
12 * @ingroup MODBUS_FUNCTIONS
13 * @brief Старые API функций, сохранённые для обратной совместимости.
14 * @note Не используйте эти функции в новом коде. Они могут быть удалены в будущих версиях.
15 * Вместо них используйте функции из основных групп MODBUS API.
16 * @{
17 */
18
19
20
21/** MODBUS_LEGACY_API
22 * @}
23 */
24
25/** @cond Заглушки отключенных модулей */
26
27#ifndef MODBUS_ENABLE_COILS
28 #define MB_Coil_Write_Global(Addr, WriteVal) ET_ILLEGAL_FUNCTION
29 #define MB_Coil_Read_Global(Addr, Exception) 0
30 #define MB_Process_Read_Coils(modbus_msg) 0
31 #define MB_Process_Write_Single_Coil(modbus_msg) 0
32 #define MB_Process_Write_Miltuple_Coils(modbus_msg) 0
33#endif
34
35#ifndef MODBUS_ENABLE_HOLDINGS
36 #define MB_Holding_Write_Global(Addr, WriteVal) ET_ILLEGAL_FUNCTION
37 #define MB_Holding_Read_Global(Addr, Exception) 0
38 #define MB_Process_Read_Hold_Regs(modbus_msg) 0
39 #define MB_Process_Write_Single_Reg(modbus_msg) 0
40 #define MB_Process_Write_Miltuple_Regs(modbus_msg) 0
41#endif
42
43#ifndef MODBUS_ENABLE_INPUTS
44 #define MB_Input_Write_Global(Addr, WriteVal) ET_ILLEGAL_FUNCTION
45 #define MB_Input_Read_Global(Addr, Exception) 0
46 #define MB_Process_Read_Input_Regs(modbus_msg) 0
47#endif
48
49#ifndef MODBUS_ENABLE_DEVICE_IDENTIFICATIONS
50 #define MB_WriteSingleObjectToMessage(mbdata, ind, obj)
51 #define MB_WriteObjectsToMessage(modbus_msg, maxidofobj)
52 #define MB_Process_Read_Device_Identifications(modbus_msg) 0
53 #define MB_DeviceInentificationInit()
54#endif
55
56
57#ifndef MODBUS_ENABLE_DIAGNOSTICS
58 #define MB_DiagnosticsInit()
59 #define MB_Diagnostics_WriteBit(bit_num, bit_state) 0
60 #define MB_Diagnostics_GetBit(bit_num) 0
61 #define MB_Process_Diagnostics(modbus_msg) 0
62 #define MB_Diagnostics_BusMessageCnt()
63 #define MB_Diagnostics_CommunicationErrorCnt()
64 #define MB_Diagnostics_ExceptionErrorCnt()
65 #define MB_Diagnostics_CharacterOverrunCnt()
66 #define MB_Diagnostics_SlaveMessageCnt()
67 #define MB_Diagnostics_SlaveNoResponseCnt()
68 #define MB_Diagnostics_SlaveNAKCnt()
69 #define MB_Diagnostics_SlaveBusyCnt()
70 #define MB_GetDeviceMode(void) MODBUS_NORMAL_MODE
71#endif
72
73
74
75#ifndef MODBUS_ENABLE_MASTER
76 #define MB_RespGet_RegisterValue(modbus_msg, reg_addr, reg_value) 0
77 #define MB_RespGet_CoilState(modbus_msg, coil_addr, coil_state) 0
78 #define MB_RespGet_NumberOfObjects(modbus_msg) 0
79 #define MB_RespGet_ObjectById(modbus_msg, obj_id, obj_data, obj_length) 0
80 #define MB_RespGet_ObjectByIndex(modbus_msg, index, obj_id, obj_data, obj_length) 0
81 #define MB_RespGet_Diagnostic(modbus_msg, data) 0
82 #define MB_REQUEST_READ_COILS(slave_addr, start_addr, quantity) {0}
83 #define MB_REQUEST_READ_DISCRETE_INPUTS(slave_addr, start_addr, quantity) {0}
84 #define MB_REQUEST_READ_HOLDING_REGS(slave_addr, start_addr, quantity) {0}
85 #define MB_REQUEST_READ_INPUT_REGS(slave_addr, start_addr, quantity) {0}
86 #define MB_REQUEST_WRITE_SINGLE_COIL(slave_addr, coil_addr, value) {0}
87 #define MB_REQUEST_WRITE_SINGLE_REG(slave_addr, reg_addr, value) {0}
88 #define MB_REQUEST_WRITE_MULTIPLE_COILS(slave_addr, start_addr, quantity, coils_data) {0}
89 #define MB_REQUEST_WRITE_MULTIPLE_REGS(slave_addr, start_addr, quantity, regs_data) {0}
90 #define MB_REQUEST_DIAGNOSTIC_QUERY(slave_addr, sub_function, data) {0}
91 #define MB_REQUEST_RETURN_QUERY_DATA(slave_addr) {0}
92 #define MB_REQUEST_RESTART_COMMUNICATIONS(slave_addr, data) {0}
93 #define MB_REQUEST_RETURN_DIAGNOSTIC_REGISTER(slave_addr) {0}
94 #define MB_REQUEST_FORCE_LISTEN_ONLY_MODE(slave_addr) {0}
95 #define MB_REQUEST_CLEAR_COUNTERS_AND_DIAGNOSTIC_REGISTER(slave_addr) {0}
96 #define MB_REQUEST_RETURN_BUS_MESSAGE_COUNT(slave_addr) {0}
97 #define MB_REQUEST_RETURN_BUS_COMMUNICATION_ERROR_COUNT(slave_addr) {0}
98 #define MB_REQUEST_RETURN_SLAVE_EXCEPTION_ERROR_COUNT(slave_addr) {0}
99 #define MB_REQUEST_RETURN_SLAVE_MESSAGE_COUNT(slave_addr) {0}
100 #define MB_REQUEST_RETURN_SLAVE_NO_RESPONSE_COUNT(slave_addr) {0}
101 #define MB_REQUEST_RETURN_SLAVE_NAK_COUNT(slave_addr) {0}
102 #define MB_REQUEST_RETURN_SLAVE_BUSY_COUNT(slave_addr) {0}
103 #define MB_REQUEST_RETURN_BUS_CHARACTER_OVERRUN_COUNT(slave_addr) {0}
104 #define MB_REQUEST_READ_DEVICE_ID_BASIC(slave_addr) {0}
105 #define MB_REQUEST_READ_DEVICE_ID_REGULAR(slave_addr) {0}
106 #define MB_REQUEST_READ_DEVICE_ID_EXTENDED(slave_addr) {0}
107 #define MB_REQUEST_READ_DEVICE_ID_SPECIFIC(slave_addr, object_id) {0}
108 #define MB_Master_Collect_Message(hmodbus, modbus_msg, modbus_uart_buff) RS_ERR
109 #define MB_Master_Parse_Message(hmodbus, modbus_msg, modbus_uart_buff) RS_ERR
110#endif
111
112#ifndef MODBUS_ENABLE_SLAVE
113 #define MB_Slave_Response(hmodbus, modbus_msg) RS_ERR
114 #define MB_Slave_Collect_Message(hmodbus, modbus_msg, modbus_uart_buff) RS_ERR
115 #define MB_Slave_Parse_Message(hmodbus, modbus_msg, modbus_uart_buff) RS_ERR
116#endif
117
118/** @endcond */
Ядро Modbus протокола - определения и структуры