Modbus 0.3
Библиотека Modbus для STM
Loading...
Searching...
No Matches
modbus_holdregs.c File Reference

Реализация работы с регистрами хранения Modbus. More...

#include "modbus_inputregs.h"
Include dependency graph for modbus_holdregs.c:

Go to the source code of this file.

Functions

MB_ExceptionTypeDef MB_Holding_Write_Global (uint16_t Addr, uint16_t WriteVal)
 Записать регистр хранения по глобальному адресу.
uint16_t MB_Holding_Read_Global (uint16_t Addr, MB_ExceptionTypeDef *Exception)
 Считать регистр хранения по глобальному адресу.
uint8_t MB_Process_Read_Hold_Regs (RS_MsgTypeDef *modbus_msg)
 Обработать функцию Read Holding Registers (03 - 0x03).
uint8_t MB_Process_Write_Single_Reg (RS_MsgTypeDef *modbus_msg)
 Обработать функцию Write Single Register (06 - 0x06).
uint8_t MB_Process_Write_Miltuple_Regs (RS_MsgTypeDef *modbus_msg)
 Обработать функцию Write Multiple Registers (16 - 0x10).

Detailed Description

Реализация работы с регистрами хранения Modbus.

Модуль для доступа к регистрам внутри программы:

  • Функции для доступа к регистрам хранения по глобальным адресам

Модуль обработки команд для holding registers (регистров хранения):

  • Чтение множественных регистров (0x03) - копирование данных в буфер ответа
  • Запись одиночного регистра (0x06) - прямая запись значения
  • Запись множественных регистров (0x10) - пакетная запись из буфера

Валидация данных:

  • Проверка соответствия количества байт и регистров
  • Валидация адресов через MB_DefineRegistersAddress()
  • Обработка исключений при некорректных запросах

Definition in file modbus_holdregs.c.