20#ifdef MODBUS_ENABLE_INPUTS
42 *(pInRegs) = WriteVal;
68 *Exception = Exception_tmp;
102 for (i = 0; i<modbus_msg->
Qnt; i++)
104 if(*((int16_t *)pInRegs) > 0)
105 modbus_msg->
MbData[i] = (*pInRegs++);
107 modbus_msg->
MbData[i] = (*pInRegs++);
MB_ExceptionTypeDef MB_DefineRegistersAddress(uint16_t **pRegs, uint16_t Addr, uint16_t Qnt, uint8_t RegisterType)
Define Address Origin for Input/Holding Registers.
uint8_t MB_Process_Read_Input_Regs(RS_MsgTypeDef *modbus_msg)
Обработать функцию Read Input Registers (04 - 0x04).
uint16_t MB_Input_Read_Global(uint16_t Addr, MB_ExceptionTypeDef *Exception)
Считать входной регистр по глобальному адресу.
MB_ExceptionTypeDef MB_Input_Write_Global(uint16_t Addr, uint16_t WriteVal)
Записать входной регистр по глобальному адресу.
MB_ExceptionTypeDef
Enum for modbus exception codes.
Structure for modbus messsage.
uint16_t Qnt
Quantity of modbus data.
MB_ExceptionTypeDef Except_Code
Exception Code for the command.
uint8_t ByteCnt
Quantity of bytes of data in message to transmit/receive.
uint16_t MbData[DATA_SIZE]
Modbus Data.
uint16_t Addr
Modbus Address of data.