From 1005dc0c8aa5fae3d13c951f454d9f8fa6fae182 Mon Sep 17 00:00:00 2001 From: Razvalyaev Date: Mon, 2 Jun 2025 16:35:37 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=BE=D0=B4=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D1=8B=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD?= =?UTF-8?q?=D1=82=D1=8B=20=D0=B4=D0=BB=D1=8F=20modbus.c?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Modbus/modbus.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Modbus/modbus.c b/Modbus/modbus.c index 35e641b..55970c1 100644 --- a/Modbus/modbus.c +++ b/Modbus/modbus.c @@ -6,7 +6,7 @@ * @details Файл содержит реализацию функций работы с Modbus, включая: * - доступ к coils и registers; * - обработку команд протокола; -* - взаимодействие с RS-каналом (UART); +* - взаимодействие с RS (UART); * - инициализацию. * * @section Функции и макросы @@ -30,11 +30,11 @@ * - MB_Write_Miltuple_Coils() * - MB_Write_Miltuple_Regs() * -* ### Функции для работы с RS-каналом: +* ### Функции для работы с RS (UART): * - RS_Parse_Message() / RS_Collect_Message() — Парсинг и сборка сообщения. * - RS_Response() — Отправка ответа. * - RS_Define_Size_of_RX_Message() — Определение размера принимаемого сообщения. -* - RS_Init() — Инициализация RS-подсистемы и handler. +* - RS_Init() — Инициализация UART. * * ### Инициализация: * - MODBUS_FirstInit() — Инициализация модуля Modbus. @@ -51,7 +51,7 @@ * * @section Инструкция по подключению * Для корректной работы надо подключить обработчики RS_UART_Handler(), RS_TIM_Handler(), -* в соответствубщие низкоуровневые прерываниф UART_IRQHandler, TIM_IRQHandler. После HAL'овского обработчика +* в соответствубщие низкоуровневые прерывания UART_IRQHandler, TIM_IRQHandler. После HAL'овского обработчика * * Также необходимо в modbus_config.h настроить дефайны для нужной работы UART * После для запуска Modbus: @@ -221,10 +221,10 @@ MB_ExceptionTypeDef MB_DefineRegistersAddress(uint16_t **pRegs, uint16_t Addr, u if(RegisterType == RegisterType_Holding) { - // Устаки для тестера + // Default holding registers if(MB_Check_Address_For_Arr(Addr, Qnt, R_HOLDING_ADDR, R_HOLDING_QNT) == NO_ERRORS) { - *pRegs = MB_Set_Register_Ptr(&MB_DATA.HoldRegs, Addr); // начало регистров хранения/входных + *pRegs = MB_Set_Register_Ptr(&MB_DATA.HoldRegs, Addr); // указатель на выбранный по Addr регистр } // if address doesnt match any array - return illegal data address response else @@ -234,10 +234,10 @@ MB_ExceptionTypeDef MB_DefineRegistersAddress(uint16_t **pRegs, uint16_t Addr, u } else if(RegisterType == RegisterType_Input) { - // Измеренные параметры диода + // Default input registers if(MB_Check_Address_For_Arr(Addr, Qnt, R_INPUT_ADDR, R_INPUT_QNT) == NO_ERRORS) { - *pRegs = MB_Set_Register_Ptr(&MB_DATA.InRegs, Addr); // начало регистров хранения/входных + *pRegs = MB_Set_Register_Ptr(&MB_DATA.InRegs, Addr); // указатель на выбранный по Addr регистр } // if address doesnt match any array - return illegal data address response else @@ -272,10 +272,10 @@ MB_ExceptionTypeDef MB_DefineCoilsAddress(uint16_t **pCoils, uint16_t Addr, uint return ILLEGAL_DATA_VALUE; // return exception code } - // tester settings coils + // Default coils if(MB_Check_Address_For_Arr(Addr, Qnt, C_CONTROL_ADDR, C_CONTROL_QNT) == NO_ERRORS) { - *pCoils = MB_Set_Coil_Reg_Ptr(&MB_DATA.Coils, Addr); + *pCoils = MB_Set_Coil_Reg_Ptr(&MB_DATA.Coils, Addr); // указатель на выбранный по Addr массив коилов } // if address doesnt match any array - return illegal data address response else