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.