65 #define MODBUS_PROTOCOL_TURNAROUND_TIMEOUT ( (F32)0.15f )
68 #define MODBUS_SYMBOL_TIME ( (F32)11.0f / (F32)9600.0f )
71 #define MODBUS_PROTOCOL_FRAME_TIMEOUT ( ( (F32)3.5f * (F32)11.0f ) / (F32)9600.0f )
74 #define MODBUS_PROTOCOL_SYMBOL_TIMEOUT ( ( (F32)1.5f * (F32)11.0f ) / (F32)9600.0f )
int BOOL
Boolean datatype definition.
Definition: Defines.h:124
unsigned long long U64
Binary 64-Bit unsigned integer datatype defenition.
Definition: Defines.h:213
unsigned char U8
Binary 8-Bit unsigned integer datatype defenition.
Definition: Defines.h:183
void VOID
Datatypesess datatype definition.
Definition: Defines.h:105
unsigned long U32
Binary 32-Bit unsigned integer datatype defenition.
Definition: Defines.h:203
unsigned short U16
Binary 16-Bit unsigned integer datatype defenition.
Definition: Defines.h:193
char C8
ASCII 8-Bit char datatype defenition.
Definition: Defines.h:156
Communication protocol MODBUS over UART class header file.
MODBUS request FIFO class header file.
MODBUS request PDU class header file.
MODBUS response PDU class header file.
Communication protocol base class header file.
MODBUS request PDU class.
Definition: MODBUS_Request_PDU.h:54
MODBUS responce PDU class.
Definition: MODBUS_Response_PDU.h:54
Definition: Protocol_Base.h:57
Communication protocol MODBUS RTU over UART class.
Definition: Protocol_MODBUS_Over_UART.h:82
VOID Show_System_Ready_Message_Disable()
Disable system ready message method.
Definition: Protocol_MODBUS_Over_UART.cpp:209
U64 u64_Last_Symbol_Timestamp
Definition: Protocol_MODBUS_Over_UART.h:799
VOID Done()
MODBUS finalisation method.
Definition: Protocol_MODBUS_Over_UART.cpp:122
TProtocol_MODBUS_Over_UART()
Class constructor method.
Definition: Protocol_MODBUS_Over_UART.cpp:83
U32 u32_Functional_Code_0x15_Request_Counter
Functional code 0x15 request counter.
Definition: Protocol_MODBUS_Over_UART.h:920
virtual BOOL Set_Address(U8 u8_Address)
Set node address method.
Definition: Protocol_MODBUS_Over_UART.cpp:4822
U32 u32_Functional_Code_0x08_0x06_Request_Counter
Functional code 0x08 0x06 request counter.
Definition: Protocol_MODBUS_Over_UART.h:860
U32 u32_Functional_Code_0x2B_Request_Counter
Functional code 0x2B request counter.
Definition: Protocol_MODBUS_Over_UART.h:932
BOOL Get_ConOpSys_Parameter_Index_By_MODBUS_Register(U16 u16_Modbus_Address, U32 *u32_Parameter_ID)
The method returns the conOpSys parameter index by modbus register.
Definition: Protocol_MODBUS_Over_UART.cpp:1268
BOOL Write_Single_Register()
Write single register request processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:3271
BOOL Diagnostic()
Diagnostics request processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:3309
U32 u32_Functional_Code_0x03_Request_Counter
Functional code 0x03 request counter.
Definition: Protocol_MODBUS_Over_UART.h:824
U8 u8_MODBUS_Address
Actual MODBUS address.
Definition: Protocol_MODBUS_Over_UART.h:794
TMODBUS_State fsm_MODBUS_State
Modbus FSM state.
Definition: Protocol_MODBUS_Over_UART.h:802
U32 u32_Functional_Code_0x08_0x03_Request_Counter
Functional code 0x08 0x03 request counter.
Definition: Protocol_MODBUS_Over_UART.h:851
U32 u32_Functional_Code_0x08_0x00_Request_Counter
Functional code 0x08 0x00 request counter.
Definition: Protocol_MODBUS_Over_UART.h:842
U32 u32_Functional_Code_0x06_Request_Counter
Functional code 0x06 request counter.
Definition: Protocol_MODBUS_Over_UART.h:833
U32 u32_Functional_Code_0x08_0x01_Request_Counter
Functional code 0x08 0x01 request counter.
Definition: Protocol_MODBUS_Over_UART.h:845
TMODBUS_Response_PDU object_Response_PDU
Responce PDU object.
Definition: Protocol_MODBUS_Over_UART.h:791
U32 u32_Functional_Code_0x08_0x09_Request_Counter
Functional code 0x08 0x09 request counter.
Definition: Protocol_MODBUS_Over_UART.h:869
U32 u32_Functional_Code_0x08_0x0C_Request_Counter
Functional code 0x08 0x0C request counter.
Definition: Protocol_MODBUS_Over_UART.h:878
U32 u32_Functional_Code_0x08_0x0B_Request_Counter
Functional code 0x08 0x0B request counter.
Definition: Protocol_MODBUS_Over_UART.h:875
BOOL Read_Holding_Registers()
Read holding registers inputs request processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:1926
VOID Transmit_System_Ready_Message()
Transmit boot ready message method.
Definition: Protocol_MODBUS_Over_UART.cpp:313
BOOL Report_Server_ID()
Report server ID processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:4012
BOOL Read_FIFO_Queue()
Read FIFO queue processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:4318
U32 u32_Functional_Code_0x04_Request_Counter
Functional code 0x04 request counter.
Definition: Protocol_MODBUS_Over_UART.h:827
virtual VOID Enter_Terminal_Mode()
Enter in terminal operation mode method.
Definition: Protocol_MODBUS_Over_UART.cpp:130
BOOL Write_File_Record()
Write file record processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:4052
U32 u32_Functional_Code_0x2B_0x0C_Request_Counter
Functional code 0x2B 0x0C request counter.
Definition: Protocol_MODBUS_Over_UART.h:935
U32 u32_Functional_Code_0x05_Request_Counter
Functional code 0x05 request counter.
Definition: Protocol_MODBUS_Over_UART.h:830
U32 u32_Functional_Code_0x18_Request_Counter
Functional code 0x18 request counter.
Definition: Protocol_MODBUS_Over_UART.h:929
BOOL Encapsulated_Interface_Transport()
Encapsulated interface transport processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:4337
U32 u32_Functional_Code_0x08_0x11_Request_Counter
Functional code 0x08 0x11 request counter.
Definition: Protocol_MODBUS_Over_UART.h:893
virtual VOID Enter_Protocol_Mode()
Enter in protocol operation mode method.
Definition: Protocol_MODBUS_Over_UART.cpp:141
U32 u32_Functional_Code_0x0F_Request_Counter
Functional code 0x0F request counter.
Definition: Protocol_MODBUS_Over_UART.h:908
BOOL Write_Single_Coil()
Write single coil request processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:3154
BOOL Read_Discrete_Inputs()
Read discrete inputs request processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:1710
U32 u32_Functional_Code_0x02_Request_Counter
Functional code 0x02 request counter.
Definition: Protocol_MODBUS_Over_UART.h:821
virtual VOID Execute()
MODBUS cyclic processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:509
U32 u32_Functional_Code_0x08_0x02_Request_Counter
Functional code 0x08 0x02 request counter.
Definition: Protocol_MODBUS_Over_UART.h:848
~TProtocol_MODBUS_Over_UART()
Class destructor method.
Definition: Protocol_MODBUS_Over_UART.cpp:102
VOID Init()
MODBUS initialisation method.
Definition: Protocol_MODBUS_Over_UART.cpp:110
U32 u32_Functional_Code_0x0B_Request_Counter
Functional code 0x0B request counter.
Definition: Protocol_MODBUS_Over_UART.h:902
U32 u32_Functional_Code_0x10_Request_Counter
Functional code 0x10 request counter.
Definition: Protocol_MODBUS_Over_UART.h:911
U32 u32_RX_Buffer_Index
RX buffer index.
Definition: Protocol_MODBUS_Over_UART.h:783
TMODBUS_Event_Log_Record struct_Event_Log[64]
Event log buffer.
Definition: Protocol_MODBUS_Over_UART.h:805
U32 u32_Functional_Code_0x17_Request_Counter
Functional code 0x17 request counter.
Definition: Protocol_MODBUS_Over_UART.h:926
virtual BOOL Is_Protocol_Mode()
Return protocol operatuin mode status method.
Definition: Protocol_MODBUS_Over_UART.cpp:164
BOOL Get_ConOpSys_Parameter_Index_By_MODBUS_Input(U16 u16_MODBUS_RTU_Input, U32 *u32_Parameter_ID)
The method returns the conOpSys parameter index by modbus coil.
Definition: Protocol_MODBUS_Over_UART.cpp:1427
VOID Show_System_Ready_Message_Enable()
Enable system ready message method.
Definition: Protocol_MODBUS_Over_UART.cpp:198
virtual VOID Communication_Data_Receive(U8 u8_Receive_Value)
Communication data receive method.
Definition: Protocol_MODBUS_Over_UART.cpp:221
VOID Show_System_Welcome_Message_Disable()
Disable show system welcome message method.
Definition: Protocol_MODBUS_Over_UART.cpp:187
U8 u8_RX_Buffer[256]
RX buffer.
Definition: Protocol_MODBUS_Over_UART.h:780
BOOL CANopen_General_Reference()
CANopen generala reference processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:4406
U32 u32_Functional_Code_0x08_0x13_Request_Counter
Functional code 0x08 0x13 request counter.
Definition: Protocol_MODBUS_Over_UART.h:899
U32 u32_MODBUS_Baudrate
Actual MODBUS baudrate.
Definition: Protocol_MODBUS_Over_UART.h:797
BOOL Write_Multiple_Registers()
Write multiple registers processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:3599
virtual VOID Receive_String(C8 *c8_String)
Receiveed string processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:280
U32 u32_Functional_Code_0x16_Request_Counter
Functional code 0x16 request counter.
Definition: Protocol_MODBUS_Over_UART.h:923
U32 u32_Functional_Code_0x08_0x04_Request_Counter
Functional code 0x08 0x04 request counter.
Definition: Protocol_MODBUS_Over_UART.h:854
BOOL Read_Device_Identefication()
Read device identification processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:4425
U32 u32_Slave_Read_Input_Register_Error_Counter
Slave read input register error counter.
Definition: Protocol_MODBUS_Over_UART.h:815
BOOL Get_Communication_Event_Log()
Get communication log request processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:3364
BOOL Read_Coils()
Read coils request processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:1506
BOOL Read_File_Record()
Read file record processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:4033
U32 u32_Functional_Code_0x08_Request_Counter
Functional code 0x08 request counter.
Definition: Protocol_MODBUS_Over_UART.h:839
virtual BOOL Is_Terminal_Mode()
Return terminal operation mode status method.
Definition: Protocol_MODBUS_Over_UART.cpp:152
U32 u32_Functional_Code_0x08_0x07_Request_Counter
Functional code 0x08 0x07 request counter.
Definition: Protocol_MODBUS_Over_UART.h:863
U32 u32_Functional_Code_0x08_0x05_Request_Counter
Functional code 0x08 0x05 request counter.
Definition: Protocol_MODBUS_Over_UART.h:857
BOOL Get_Communication_Event_Counter()
Get communication event counter request processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:3330
U32 u32_Functional_Code_0x11_Request_Counter
Functional code 0x11 request counter.
Definition: Protocol_MODBUS_Over_UART.h:914
TMODBUS_State
MODBUS FSM state definition.
Definition: Protocol_MODBUS_Over_UART.h:132
@ enum_Processing
Frame processing state.
Definition: Protocol_MODBUS_Over_UART.h:144
@ enum_Idle
Idle state.
Definition: Protocol_MODBUS_Over_UART.h:138
@ enum_Init
Init state.
Definition: Protocol_MODBUS_Over_UART.h:135
@ enum_Transmitting
Frame transmitting state.
Definition: Protocol_MODBUS_Over_UART.h:147
@ enum_Receiving
Frame receiving state.
Definition: Protocol_MODBUS_Over_UART.h:141
BOOL Write_Multiple_Coils()
Write multiple coils request processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:3441
BOOL Read_Input_Register()
Read input register request processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:2439
VOID Log_Slave_Read_Input_Register_Error()
Log slave read input registers error processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:4444
TMODBUS_Request_PDU object_Request_PDU
Request PDU object.
Definition: Protocol_MODBUS_Over_UART.h:788
U32 u32_Functional_Code_0x2B_0x0D_Request_Counter
Functional code 0x2B 0x0D request counter.
Definition: Protocol_MODBUS_Over_UART.h:938
U32 u32_Functional_Code_0x08_0x10_Request_Counter
Functional code 0x08 0x10 request counter.
Definition: Protocol_MODBUS_Over_UART.h:890
U32 u32_Functional_Code_0x08_0x0A_Request_Counter
Functional code 0x08 0x0A request counter.
Definition: Protocol_MODBUS_Over_UART.h:872
U32 u32_Functional_Code_0x08_0x12_Request_Counter
Functional code 0x08 0x12 request counter.
Definition: Protocol_MODBUS_Over_UART.h:896
VOID Show_System_Welcome_Message_Enable()
Enable show system welcome message method.
Definition: Protocol_MODBUS_Over_UART.cpp:176
virtual VOID Send_Information(TProtocol_Base *object_Protocol)
Method sends default driver information over specified communication channel.
Definition: Protocol_MODBUS_Over_UART.cpp:4556
U32 u32_Communication_Event_Counter
Communication event counter.
Definition: Protocol_MODBUS_Over_UART.h:812
U32 u32_Functional_Code_0x08_0x08_Request_Counter
Functional code 0x08 0x08 request counter.
Definition: Protocol_MODBUS_Over_UART.h:866
VOID Transmit_Boot_Welcome_Message()
Transmit boot welcome message method.
Definition: Protocol_MODBUS_Over_UART.cpp:302
BOOL Mask_Write_Register()
Mask write register processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:4071
BOOL Read_Write_Multiple_Registers()
Read mask register processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:4090
U32 u32_Functional_Code_0x14_Request_Counter
Functional code 0x14 request counter.
Definition: Protocol_MODBUS_Over_UART.h:917
U32 u32_Functional_Code_0x08_0x0E_Request_Counter
Functional code 0x08 0x0E request counter.
Definition: Protocol_MODBUS_Over_UART.h:884
BOOL Read_Exception_Status()
Read exception status request method.
Definition: Protocol_MODBUS_Over_UART.cpp:3290
U32 u32_Functional_Code_0x01_Request_Counter
Functional code 0x01 request counter.
Definition: Protocol_MODBUS_Over_UART.h:818
U32 u32_Functional_Code_0x07_Request_Counter
Functional code 0x07 request counter.
Definition: Protocol_MODBUS_Over_UART.h:836
U32 u32_Functional_Code_0x0C_Request_Counter
Functional code 0x0C request counter.
Definition: Protocol_MODBUS_Over_UART.h:905
BOOL Get_ConOpSys_Parameter_Index_By_MODBUS_Coil(U16 u16_MODBUS_RTU_Coil, U32 *u32_Parameter_ID)
The method returns the conOpSys parameter index by modbus coil.
Definition: Protocol_MODBUS_Over_UART.cpp:1347
virtual VOID Execute_1ms()
MODBUS 1ms cyclic processing method.
Definition: Protocol_MODBUS_Over_UART.cpp:324
U32 u32_Functional_Code_0x08_0x0D_Request_Counter
Functional code 0x08 0x0D request counter.
Definition: Protocol_MODBUS_Over_UART.h:881
U32 u32_Functional_Code_0x08_0x0F_Request_Counter
Functional code 0x08 0x0F request counter.
Definition: Protocol_MODBUS_Over_UART.h:887
Definition: Protocol_MODBUS_Over_UART.h:425
BOOL bool_Empty
Log event empty flag.
Definition: Protocol_MODBUS_Over_UART.h:428
U8 u8_Event_Field
Log event code.
Definition: Protocol_MODBUS_Over_UART.h:431
MODBUS RTU coil mapping entry struct.
Definition: Protocol_MODBUS_Over_UART.h:108
U16 u16_MODBUS_RTU_Coil_Address
MODBUS RTU address.
Definition: Protocol_MODBUS_Over_UART.h:114
U32 u32_Parameter_ID
ConOpSys parameter ID.
Definition: Protocol_MODBUS_Over_UART.h:111
MODBUS RTU input mapping entry struct.
Definition: Protocol_MODBUS_Over_UART.h:120
U32 u32_Parameter_ID
ConOpSys parameter ID.
Definition: Protocol_MODBUS_Over_UART.h:123
U16 u16_MODBUS_RTU_Input_Address
MODBUS RTU address.
Definition: Protocol_MODBUS_Over_UART.h:126
MODBUS RTU register mapping entry struct.
Definition: Protocol_MODBUS_Over_UART.h:96
U16 u16_MODBUS_RTU_Address
MODBUS RTU address.
Definition: Protocol_MODBUS_Over_UART.h:102
U32 u32_Parameter_ID
ConOpSys parameter ID.
Definition: Protocol_MODBUS_Over_UART.h:99