Files
UKSI_TEST/AllLibs/Modbus/Doc/latex/modbus_8h_source.tex
2025-12-16 17:57:59 +03:00

151 lines
19 KiB
TeX
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
\doxysection{modbus.\+h}
\hypertarget{modbus_8h_source}{}\label{modbus_8h_source}\index{E:/.WORK/STM32/Diod\_Test/diode\_tester/Core/Modbus/Inc/modbus.h@{E:/.WORK/STM32/Diod\_Test/diode\_tester/Core/Modbus/Inc/modbus.h}}
\mbox{\hyperlink{modbus_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00001}00001\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00002}00002\ \textcolor{comment}{*******************************************************************************}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00003}00003\ \textcolor{comment}{*\ @file\ modbus.h}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Главный\ заголовочный\ файл\ Modbus\ библиотеки}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00005}00005\ \textcolor{comment}{*******************************************************************************}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00006}00006\ \textcolor{comment}{@addtogroup\ MODBUS\ Modbus\ tools}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00007}00007\ \textcolor{comment}{@brief\ Библиотека\ реализующая\ протокол\ Modbus}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00008}00008\ \textcolor{comment}{*******************************************************************************}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00009}00009\ \textcolor{comment}{@addtogroup\ MODBUS\_FUNCTIONS\ Main\ API\ for\ Modbus\ Library}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00010}00010\ \textcolor{comment}{@ingroup\ \ \ \ MODBUS}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00011}00011\ \textcolor{comment}{@brief\ Публичные\ функции\ библиотеки}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00012}00012\ \textcolor{comment}{@\{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00013}00013\ \textcolor{comment}{*******************************************************************************}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00014}00014\ \textcolor{comment}{*\ @details}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00015}00015\ \textcolor{comment}{Объединяющий\ файл\ для\ подключения\ всей\ функциональности\ Modbus.}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00016}00016\ \textcolor{comment}{Подключает\ все\ необходимые\ модули:}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00017}00017\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00018}00018\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00019}00019\ \textcolor{comment}{@section\ Start\ Инструкция\ по\ подключению}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00020}00020\ \textcolor{comment}{Для\ корректной\ работы\ надо:}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00021}00021\ \textcolor{comment}{-\/\ Подключить\ обработчики\ RS\_UART\_Handler(),\ RS\_TIM\_Handler(),\ в\ соответствубщие\ }}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00022}00022\ \textcolor{comment}{\ \ низкоуровневые\ прерывания\ UART\_IRQHandler,\ TIM\_IRQHandler\ вместо\ HAL'овского\ обработчика}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00023}00023\ \textcolor{comment}{\ }}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00024}00024\ \textcolor{comment}{-\/\ В\ modbus\_config.h\ настроить\ дефайны\ для\ нужной\ работы\ UART}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00025}00025\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00026}00026\ \textcolor{comment}{-\/\ Инициализировать\ хендл\ мобдас.\ По\ умолчанию\ глобально\ создается\ hmodbus1}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00027}00027\ \textcolor{comment}{-\/\ После\ для\ запуска\ Modbus:}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00028}00028\ \textcolor{comment}{\ \ @code}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00029}00029\ \textcolor{comment}{\ \ //-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/Слейв\ модбас-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\///}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00030}00030\ \textcolor{comment}{\ \ \#include\ "{}modbus.h"{}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00031}00031\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00032}00032\ \textcolor{comment}{\ \ MODBUS\_FirstInit(\&hmodbus1,\ \&huart1,\ \&htim3);}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00033}00033\ \textcolor{comment}{\ \ MODBUS\_Config(\&hmodbus1,\ MODBUS\_DEVICE\_ID,\ MODBUS\_TIMEOUT,\ MODBUS\_MODE\_SLAVE);}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00034}00034\ \textcolor{comment}{\ \ MODBUS\_SlaveStart(\&hmodbus1,\ NULL);}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00035}00035\ \textcolor{comment}{\ \ @endcode}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00036}00036\ \textcolor{comment}{\ \ @code}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00037}00037\ \textcolor{comment}{\ \ //-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/Мастер\ модбас-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\///}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00038}00038\ \textcolor{comment}{\ \ \#include\ "{}modbus.h"{}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00039}00039\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00040}00040\ \textcolor{comment}{\ \ MODBUS\_FirstInit(\&hmodbus1,\ \&huart1,\ \&htim3);}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00041}00041\ \textcolor{comment}{\ \ MODBUS\_Config(\&hmodbus1,\ 0,\ MODBUS\_TIMEOUT,\ MODBUS\_MODE\_MASTER);}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00042}00042\ \textcolor{comment}{\ \ //\ Запрос\ на\ 1\ ID,\ считать\ холдинг\ регистры\ с\ 0\ адреса\ 10\ штук}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00043}00043\ \textcolor{comment}{\ \ RS\_MsgTypeDef\ msg\ =\ MB\_REQUEST\_READ\_HOLDING\_REGS(1,\ 0,\ 10);}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00044}00044\ \textcolor{comment}{\ \ MODBUS\_MasterRequest(\&hmodbus1,\ \&msg,\ \&callback\_func);}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00045}00045\ \textcolor{comment}{\ \ }}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00046}00046\ \textcolor{comment}{\ \ void\ callback\_func(RS\_HandleTypeDef\ *hmodbus,\ RS\_MsgTypeDef\ *modbus\_msg)\ }}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00047}00047\ \textcolor{comment}{\ \ \{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00048}00048\ \textcolor{comment}{\ \ \ \ //\ MB\_RespGet\_...\ Чтобы\ достать\ нужные\ данные\ из\ ответа}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00049}00049\ \textcolor{comment}{\ \ \ \ if(hmodbus-\/>RS\_STATUS\ ==\ RS\_OK)}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00050}00050\ \textcolor{comment}{\ \ \ \ \{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00051}00051\ \textcolor{comment}{\ \ \ \ \ \ for(int\ addr\ =\ MODBUS\_MSG.Addr;\ addr\ <\ MODBUS\_MSG.Addr\ +\ MODBUS\_MSG.Qnt;\ addr++)}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00052}00052\ \textcolor{comment}{\ \ \ \ \ \ \{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00053}00053\ \textcolor{comment}{\ \ \ \ \ \ \ \ uint16\_t\ value;}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00054}00054\ \textcolor{comment}{\ \ \ \ \ \ \ \ if(MB\_RespGet\_RegisterValue(\&MODBUS\_MSG,\ addr,\ \&value))}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00055}00055\ \textcolor{comment}{\ \ \ \ \ \ \ \ \{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00056}00056\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ read\_hold[i]\ =\ value;}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00057}00057\ \textcolor{comment}{\ \ \ \ \ \ \ \ \}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00058}00058\ \textcolor{comment}{\ \ \ \ \ \ \}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00059}00059\ \textcolor{comment}{\ \ \ \ \}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00060}00060\ \textcolor{comment}{\ \ \}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00061}00061\ \textcolor{comment}{\ \ @endcode}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00062}00062\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00063}00063\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00064}00064\ \textcolor{comment}{@section\ modules\ Подключаемые\ модули:}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00065}00065\ \textcolor{comment}{-\/\ rs\_message.h\ -\/\ работа\ с\ uart}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00066}00066\ \textcolor{comment}{-\/\ modbus\_core.h\ -\/\ базовые\ определения}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00067}00067\ \textcolor{comment}{-\/\ modbus\_coils.h\ -\/\ работа\ с\ дискретными\ выходами}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00068}00068\ \textcolor{comment}{-\/\ modbus\_holdregs.h\ -\/\ работа\ с\ регистрами\ хранения\ \ }}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00069}00069\ \textcolor{comment}{-\/\ modbus\_inputregs.h\ -\/\ работа\ с\ входными\ регистрами}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00070}00070\ \textcolor{comment}{-\/\ modbus\_devid.h\ -\/\ идентификация\ устройства}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00071}00071\ \textcolor{comment}{-\/\ modbus\_diag.h\ -\/\ диагностика\ modbus}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00072}00072\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00073}00073\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00074}00074\ \textcolor{comment}{@section\ data\ Структура\ данных\ Modbus}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00075}00075\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00076}00076\ \textcolor{comment}{\#\#\#\#\ Holding/Input\ Registers:}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00077}00077\ \textcolor{comment}{-\/\ Регистры\ \ 16-\/битные\ слова.\ Доступ\ к\ регистрам\ осуществляется\ через\ указатель.\ \ }}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00078}00078\ \textcolor{comment}{Таким\ образом,\ сами\ регистры\ могут\ представлять\ собой\ как\ массив\ так\ и\ структуру.}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00079}00079\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00080}00080\ \textcolor{comment}{\#\#\#\#\ Coils:}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00081}00081\ \textcolor{comment}{-\/\ Coils\ \ это\ биты,\ упакованные\ в\ 16-\/битные\ слова.\ Доступ\ к\ коилам\ осуществляется\ через\ указатель.\ \ }}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00082}00082\ \textcolor{comment}{Таким\ образом,\ сами\ коилы\ могут\ представлять\ собой\ как\ массив\ так\ и\ структуру.}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00083}00083\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00084}00084\ \textcolor{comment}{******************************************************************************/}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00085}00085\ \textcolor{preprocessor}{\#ifndef\ \_\_MODBUS\_H\_}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00086}00086\ \textcolor{preprocessor}{\#define\ \_\_MODBUS\_H\_}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00087}00087\ \ }
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00088}00088\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{rs__message_8h}{rs\_message.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00089}00089\ \textcolor{preprocessor}{\#ifdef\ MODBUS\_ENABLE\_MASTER}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00090}00090\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{modbus__master_8h}{modbus\_master.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00091}00091\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00092}00092\ \textcolor{preprocessor}{\#ifdef\ MODBUS\_ENABLE\_SLAVE}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00093}00093\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{modbus__slave_8h}{modbus\_slave.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00094}00094\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00095}00095\ \textcolor{preprocessor}{\#ifdef\ MODBUS\_ENABLE\_COILS}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00096}00096\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{modbus__coils_8h}{modbus\_coils.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00097}00097\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00098}00098\ \textcolor{preprocessor}{\#ifdef\ MODBUS\_ENABLE\_HOLDINGS}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00099}00099\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{modbus__holdregs_8h}{modbus\_holdregs.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00100}00100\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00101}00101\ \textcolor{preprocessor}{\#ifdef\ MODBUS\_ENABLE\_INPUTS}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00102}00102\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{modbus__inputregs_8h}{modbus\_inputregs.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00103}00103\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00104}00104\ \textcolor{preprocessor}{\#ifdef\ MODBUS\_ENABLE\_DEVICE\_IDENTIFICATIONS}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00105}00105\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{modbus__devid_8h}{modbus\_devid.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00106}00106\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00107}00107\ \textcolor{preprocessor}{\#ifdef\ MODBUS\_ENABLE\_DIAGNOSTICS}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00108}00108\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{modbus__diag_8h}{modbus\_diag.h}}"{}}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00109}00109\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00110}00110\ }
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00111}00111\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00112}00112\ \textcolor{preprocessor}{\#ifdef\ MODBUS\_ENABLE\_MASTER}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00113}\mbox{\hyperlink{group___m_o_d_b_u_s___f_u_n_c_t_i_o_n_s_gad91eec9c3350f2705f1bbe1856cb0159}{00113}}\ \textcolor{preprocessor}{\#define\ MODBUS\_MODE\_MASTER\ 1\ \ }\textcolor{comment}{///<\ Псевдо-\/enum:\ Режим\ мастер}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00114}00114\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00115}00115\ }
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00116}00116\ \textcolor{preprocessor}{\#ifdef\ MODBUS\_ENABLE\_SLAVE}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00117}\mbox{\hyperlink{group___m_o_d_b_u_s___f_u_n_c_t_i_o_n_s_gac0b3749af91f1007fd0291157b66b305}{00117}}\ \textcolor{preprocessor}{\#define\ MODBUS\_MODE\_SLAVE\ 0\ \ \ }\textcolor{comment}{///<\ Псевдо-\/enum:\ Режим\ слейв}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00118}00118\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00119}00119\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00120}00120\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00121}00121\ \textcolor{comment}{/////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\//////////////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00122}00122\ }
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00123}00123\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00124}00124\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/FUNCTIONS\ FOR\ USER-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00125}00125\ }
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00126}00126\ \textcolor{comment}{/*\ Инициализация\ периферии\ модбас.\ */}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00127}00127\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_o_d_b_u_s___f_u_n_c_t_i_o_n_s_ga9e787c3454aab3293dec6e6795f687f5}{MODBUS\_FirstInit}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hmodbus,\ UART\_HandleTypeDef\ *huart,\ TIM\_HandleTypeDef\ *htim);}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00128}00128\ \textcolor{comment}{/*\ Программная\ конфигурация\ модбас.\ */}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00129}00129\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_o_d_b_u_s___f_u_n_c_t_i_o_n_s_ga460466907693a256487d31f09b16edfe}{MODBUS\_Config}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hmodbus,\ uint8\_t\ ID,\ uint16\_t\ Timeout,\ uint8\_t\ master);}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00130}00130\ \textcolor{comment}{/*\ Запуск\ слейв\ устройства\ */}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00131}00131\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_o_d_b_u_s___f_u_n_c_t_i_o_n_s_ga9a17402983188566254b7096342ba69e}{MODBUS\_SlaveStart}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hmodbus,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ *modbus\_msg);}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00132}00132\ \textcolor{comment}{/*\ Реквест\ мастера\ модбас\ */}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00133}00133\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_o_d_b_u_s___f_u_n_c_t_i_o_n_s_ga19090cabfba2345391e37398125a2f55}{MODBUS\_MasterRequest}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hmodbus,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ *modbus\_msg,\ \textcolor{keywordtype}{void}\ (*pClbk)(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}*,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}*));}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00134}00134\ }
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00135}00135\ \ \ }
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00136}00136\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00137}00137\ \textcolor{comment}{/////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\//////////////////////////////}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00138}00138\ }
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00139}00139\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\_\_MODBUS\_H\_}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00140}00140\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00141}00141\ \textcolor{comment}{/**\ MODBUS\_FUNCTIONS}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00142}00142\ \textcolor{comment}{\ \ *\ @\}\ }}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00143}00143\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{modbus_8h_source_l00144}00144\ \ }
\end{DoxyCode}