\doxysection{rs\+\_\+message.\+h}
\hypertarget{rs__message_8h_source}{}\label{rs__message_8h_source}\index{E:/.WORK/STM32/Diod\_Test/diode\_tester/Core/Modbus/Inc/rs\_message.h@{E:/.WORK/STM32/Diod\_Test/diode\_tester/Core/Modbus/Inc/rs\_message.h}}
\mbox{\hyperlink{rs__message_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00001}00001\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00002}00002\ \textcolor{comment}{*******************************************************************************}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00003}00003\ \textcolor{comment}{*\ @file\ rs\_message.h}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Библиотека\ обмена\ сообщениями\ по\ RS-\/интерфейсу}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00005}00005\ \textcolor{comment}{*******************************************************************************}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00006}00006\ \textcolor{comment}{@defgroup\ RS\_TOOLS\ RS\ Tools}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00007}00007\ \textcolor{comment}{@brief\ \ \ \ Всякое\ для\ работы\ по\ UART/RS}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00008}00008\ \textcolor{comment}{@\{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00009}00009\ \textcolor{comment}{*******************************************************************************}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00010}00010\ \textcolor{comment}{*\ @details}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00011}00011\ \textcolor{comment}{Универсальная\ библиотека\ для\ работы\ с\ последовательными\ протоколами\ (Modbus,\ Custom)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00012}00012\ \textcolor{comment}{через\ UART\ в\ режиме\ прерываний\ с\ поддержкой\ таймаутов.}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00013}00013\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00014}00014\ \textcolor{comment}{@section\ posibility\ Основные\ возможности:}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00015}00015\ \textcolor{comment}{-\/\ Прием/передача\ в\ прерываниях}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00016}00016\ \textcolor{comment}{-\/\ Обработка\ IDLE\ линии\ для\ определения\ конца\ фрейма}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00017}00017\ \textcolor{comment}{-\/\ Таймауты\ приема\ через\ TIM}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00018}00018\ \textcolor{comment}{-\/\ Гибкая\ настройка\ размера\ сообщений}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00019}00019\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00020}00020\ \textcolor{comment}{@section\ usage\ Использование:}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00021}00021\ \textcolor{comment}{1.\ Определить\ структуру\ сообщения\ и\ размеры\ буфера}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00022}00022\ \textcolor{comment}{2.\ Реализовать\ weak-\/функции\ обработки\ сообщений}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00023}00023\ \textcolor{comment}{3.\ Добавить\ вызовы\ RS\_UART\_Handler/RS\_TIM\_Handler\ в\ прерывания}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00024}00024\ \textcolor{comment}{4.\ Инициализировать\ через\ RS\_Init()\ и\ запустить\ прием\ RS\_Receive\_IT()}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00025}00025\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00026}00026\ \textcolor{comment}{@section\ features\ Особенности:}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00027}00027\ \textcolor{comment}{-\/\ Буфер:\ RS\_Buffer[MSG\_SIZE\_MAX]\ Общий\ для\ приема/передачи}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00028}00028\ \textcolor{comment}{-\/\ Состояния:\ отслеживается\ через\ флаги\ в\ RS\_HandleTypeDef}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00029}00029\ \textcolor{comment}{-\/\ Таймауты:\ контролируют\ максимальное\ время\ ожидания\ фрейма}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00030}00030\ \textcolor{comment}{******************************************************************************/}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00031}00031\ \textcolor{preprocessor}{\#ifndef\ \_\_RS\_LIB\_H\_}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00032}00032\ \textcolor{preprocessor}{\#define\ \_\_RS\_LIB\_H\_}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00033}00033\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00034}00034\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{modbus__core_8h}{modbus\_core.h}}"{}}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00035}00035\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00036}00036\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00037}00037\ \textcolor{comment}{////////////////////////////-\/-\/-\/DEFINES-\/-\/-\/////////////////////////////}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00038}00038\ \textcolor{comment}{/*\ Check\ that\ all\ defines\ required\ by\ RS\ are\ defined\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00039}00039\ \textcolor{preprocessor}{\#ifndef\ MSG\_SIZE\_MAX}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00040}00040\ \textcolor{preprocessor}{\#error\ Define\ MSG\_SIZE\_MAX\ (Maximum\ size\ of\ message).\ This\ is\ necessary\ to\ create\ buffer\ for\ UART.}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00041}00041\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00042}00042\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00043}00043\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00044}00044\ \textcolor{comment}{\ \ *\ @cond\ Заглушки\ и\ внутренний\ недокументированный\ стаф}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00045}00045\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00046}00046\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00047}00047\ \textcolor{comment}{/*\ Clear\ message-\/uart\ buffer\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00048}00048\ \textcolor{preprocessor}{\#define\ RS\_Clear\_Buff(\_buff\_)\ \ \ \ \ \ \ for(int\ i=0;\ i<MSG\_SIZE\_MAX;i++)\ \ \_buff\_[i]\ =\ NULL}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00049}00049\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00050}00050\ \textcolor{comment}{/*\ Set/Reset\ flags\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00051}00051\ \textcolor{preprocessor}{\#define\ RS\_Set\_Free(\_hRS\_)\ \ \ \ \ \ \ \ \ \ \_hRS\_-\/>f.RS\_Busy\ =\ 0}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00052}00052\ \textcolor{preprocessor}{\#define\ RS\_Set\_Busy(\_hRS\_)\ \ \ \ \ \ \ \ \ \ \_hRS\_-\/>f.RS\_Busy\ =\ 1}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00053}00053\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00054}00054\ \textcolor{preprocessor}{\#define\ RS\_Set\_RX\_Flags(\_hRS\_)\ \ \ \ \ \ \ \ \ \ \_hRS\_-\/>f.RX\_Busy\ =\ 1;\ \_hRS\_-\/>f.RX\_Done\ =\ 0;}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00055}00055\ \textcolor{preprocessor}{\#define\ RS\_Set\_RX\_Active\_Flags(\_hRS\_)\ \ \ \_hRS\_-\/>f.RX\_Ongoing\ =\ 1}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00056}00056\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00057}00057\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00058}00058\ \textcolor{preprocessor}{\#define\ RS\_Set\_TX\_Flags(\_hRS\_)\ \ \ \ \ \ \ \ \ \ \_hRS\_-\/>f.TX\_Busy\ =\ 1;\ \_hRS\_-\/>f.TX\_Done\ =\ 0}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00059}00059\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00060}00060\ \textcolor{preprocessor}{\#define\ RS\_Reset\_RX\_Active\_Flags(\_hRS\_)\ \_hRS\_-\/>f.RX\_Ongoing\ =\ 0;\ \_hRS\_-\/>f.RX\_Continue\ =\ 0;}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00061}00061\ \textcolor{preprocessor}{\#define\ RS\_Reset\_RX\_Flags(\_hRS\_)\ \ \ \ \ \ \ \ RS\_Reset\_RX\_Active\_Flags(\_hRS\_);\ \_hRS\_-\/>f.RX\_Busy\ =\ 0;\ \_hRS\_-\/>f.RX\_Done\ =\ 0;}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00062}00062\ \textcolor{preprocessor}{\#define\ RS\_Reset\_TX\_Flags(\_hRS\_)\ \ \ \ \ \ \ \ \_hRS\_-\/>f.TX\_Busy\ =\ 0;\ \_hRS\_-\/>f.TX\_Done\ =\ 0}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00063}00063\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00064}00064\ \textcolor{preprocessor}{\#define\ RS\_Set\_RX\_End\_Flag(\_hRS\_)\ \ \ \_hRS\_-\/>f.RX\_Done\ =\ 1;}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00065}00065\ \textcolor{preprocessor}{\#define\ RS\_Set\_TX\_End\_Flag(\_hRS\_)\ \ \ \_hRS\_-\/>f.TX\_Done\ =\ 1}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00066}00066\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00067}00067\ \textcolor{preprocessor}{\#define\ RS\_Set\_RX\_End(\_hRS\_)\ \ \ \ \ \ \ \ RS\_Reset\_RX\_Flags(\_hRS\_);\ RS\_Set\_RX\_End\_Flag(\_hRS\_)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00068}00068\ \textcolor{preprocessor}{\#define\ RS\_Set\_TX\_End(\_hRS\_)\ \ \ \ \ \ \ \ RS\_Reset\_TX\_Flags(\_hRS\_);\ RS\_Set\_TX\_End\_Flag(\_hRS\_)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00069}00069\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00070}00070\ \textcolor{comment}{/*\ Clear\ all\ RS\ stuff\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00071}00071\ \textcolor{preprocessor}{\#define\ RS\_Clear\_All(\_hRS\_)\ \ \ \ \ \ \ \ \ RS\_Clear\_Buff(\_hRS\_-\/>pBufferPtr);\ RS\_Reset\_RX\_Flags(\_hRS\_);\ RS\_Reset\_TX\_Flags(\_hRS\_);}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00072}00072\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00073}00073\ \textcolor{comment}{//\#define\ MB\_Is\_RX\_Busy(\_hRS\_)\ \ \ \ \ \ \ \ ((\_hRS\_-\/>huart-\/>gState\&HAL\_USART\_STATE\_BUSY\_RX)\ ==\ HAL\_USART\_STATE\_BUSY\_RX)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00074}00074\ \textcolor{comment}{//\#define\ MB\_Is\_TX\_Busy(\_hRS\_)\ \ \ \ \ \ \ \ ((\_hRS\_-\/>huart-\/>gState\&HAL\_USART\_STATE\_BUSY\_RX)\ ==\ HAL\_USART\_STATE\_BUSY\_TX)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00075}00075\ \textcolor{preprocessor}{\#define\ RS\_Is\_RX\_Busy(\_hRS\_)\ \ \ \ \ \ \ \ (\_hRS\_-\/>f.RX\_Busy\ ==\ 1)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00076}00076\ \textcolor{preprocessor}{\#define\ RS\_Is\_TX\_Busy(\_hRS\_)\ \ \ \ \ \ \ \ (\_hRS\_-\/>f.TX\_Busy\ ==\ 1)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00077}00077\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00078}00078\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00079}00079\ \textcolor{preprocessor}{\#ifndef\ RS\_USER\_VARS\_NUMB}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00080}00080\ \textcolor{preprocessor}{\#define\ RS\_USER\_VARS\_NUMB\ 0}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00081}00081\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00082}00082\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00083}00083\ \textcolor{preprocessor}{\#ifndef\ local\_time}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00084}00084\ \textcolor{preprocessor}{\#define\ local\_time()\ uwTick}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00085}00085\ \textcolor{preprocessor}{\#endif}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00086}00086\ \textcolor{comment}{/**\ @endcond\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00087}00087\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00088}00088\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00089}00089\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00090}00090\ \textcolor{comment}{\ \ *\ @addtogroup\ RS\_DEBUG\ Tools\ for\ debug\ RS/UART/TIM}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00091}00091\ \textcolor{comment}{\ \ *\ @ingroup\ RS\_TOOLS}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00092}00092\ \textcolor{comment}{\ \ *\ @brief\ Дефайны\ для\ отладки\ периферии}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00093}00093\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00094}00094\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00095}00095\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00096}00096\ \textcolor{preprocessor}{\#ifndef\ RS\_USER\_VARS\_NUMB}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00097}\mbox{\hyperlink{group___r_s___d_e_b_u_g_ga00f6ba164717bd919fa6e9b25e1bbc21}{00097}}\ \textcolor{preprocessor}{\#define\ RS\_USER\_VARS\_NUMB\ 0\ }\textcolor{comment}{///<\ Количество\ переменных\ в\ @ref\ TrackerTypeDef}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00098}00098\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00099}00099\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00100}00100\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00101}00101\ \textcolor{comment}{\ \ *\ @brief\ Тип\ структуры\ для\ счетчиков-\/переменных}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00102}00102\ \textcolor{comment}{\ \ *\ @param\ num\_user\_vars\ Есть\ возмоность\ добавления\ num\_user\_vars\ количества\ пользовательскиъх\ переменных}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00103}00103\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00104}\mbox{\hyperlink{group___r_s___d_e_b_u_g_ga50ccb119acf302969b7fdcb58f2130e4}{00104}}\ \textcolor{preprocessor}{\#define\ TrackerTypeDef(num\_user\_vars)\ void\ *}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00105}00105\ \textcolor{comment}{/**\ @brief\ Инкрементировать\ переменную\ -\/\ успешных\ событий\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00106}\mbox{\hyperlink{group___r_s___d_e_b_u_g_ga23de0006aa08984cfeddb6aa5e512fa1}{00106}}\ \textcolor{preprocessor}{\#define\ TrackerCnt\_Ok(\_cntstruct\_)}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00107}00107\ \textcolor{comment}{/**\ @brief\ Инкрементировать\ переменную\ -\/\ ошибок\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00108}\mbox{\hyperlink{group___r_s___d_e_b_u_g_ga49af29ab3927cad105c1d2b018a767e9}{00108}}\ \textcolor{preprocessor}{\#define\ TrackerCnt\_Err(\_cntstruct\_)}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00109}00109\ \textcolor{comment}{/**\ @brief\ Инкрементировать\ переменную\ -\/\ предупреждений\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00110}\mbox{\hyperlink{group___r_s___d_e_b_u_g_ga8017fb05a56a1b667244f1f786fa9c57}{00110}}\ \textcolor{preprocessor}{\#define\ TrackerCnt\_Warn(\_cntstruct\_)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00111}00111\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00112}00112\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00113}00113\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00114}00114\ \textcolor{preprocessor}{\#ifndef\ printf\_rs}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00115}00115\ \textcolor{comment}{/**\ @brief\ Printf\ обычных\ событий\ RS/UART/TIM\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00116}\mbox{\hyperlink{group___r_s___d_e_b_u_g_ga30a03e8d8912be85a203c829b581f999}{00116}}\ \textcolor{preprocessor}{\#define\ printf\_rs(...)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00117}00117\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00118}00118\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00119}00119\ \textcolor{preprocessor}{\#ifndef\ printf\_rs\_err}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00120}00120\ \textcolor{comment}{/**\ @brief\ Printf\ ошибок\ RS/UART/TIM\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00121}\mbox{\hyperlink{group___r_s___d_e_b_u_g_ga830a5ed90667bf50ab8c409dcadb2a39}{00121}}\ \textcolor{preprocessor}{\#define\ printf\_rs\_err(...)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00122}00122\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00123}00123\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00124}00124\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00125}00125\ \textcolor{preprocessor}{\#ifndef\ RS\_TIM\_Handler\_ENTER}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00126}00126\ \textcolor{comment}{/**\ @brief\ Действия\ при\ заходе\ в\ прерывания\ таймера\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00127}\mbox{\hyperlink{group___r_s___d_e_b_u_g_gab9d308969f924234bc879a93ffb80473}{00127}}\ \textcolor{preprocessor}{\#define\ RS\_TIM\_Handler\_ENTER()\ \ }}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00128}00128\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00129}00129\ \textcolor{preprocessor}{\#ifndef\ RS\_TIM\_Handler\_EXIT}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00130}00130\ \textcolor{comment}{/**\ @brief\ Действия\ при\ выходе\ из\ прерывания\ таймера\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00131}\mbox{\hyperlink{group___r_s___d_e_b_u_g_gaa026e9bf8672373cfe265f96ea0f6061}{00131}}\ \textcolor{preprocessor}{\#define\ RS\_TIM\_Handler\_EXIT()\ \ }}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00132}00132\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00133}00133\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00134}00134\ \textcolor{preprocessor}{\#ifndef\ RS\_UART\_Handler\_ENTER}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00135}00135\ \textcolor{comment}{/**\ @brief\ Действия\ при\ заходе\ в\ прерывания\ UART\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00136}\mbox{\hyperlink{group___r_s___d_e_b_u_g_ga8c401e4d5d440001c1d879984107bb79}{00136}}\ \textcolor{preprocessor}{\#define\ RS\_UART\_Handler\_ENTER()\ \ }}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00137}00137\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00138}00138\ \textcolor{preprocessor}{\#ifndef\ RS\_UART\_Handler\_EXIT}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00139}00139\ \textcolor{comment}{/**\ @brief\ Действия\ при\ выходе\ из\ прерывания\ UART\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00140}\mbox{\hyperlink{group___r_s___d_e_b_u_g_gade69fd26928788dd6f0278fcd15885ff}{00140}}\ \textcolor{preprocessor}{\#define\ RS\_UART\_Handler\_EXIT()\ \ }}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00141}00141\ \textcolor{preprocessor}{\#endif}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00142}00142\ \textcolor{comment}{/**\ RS\_TOOLS}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00143}00143\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00144}00144\ \textcolor{comment}{\ \ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00145}00145\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00146}00146\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00147}00147\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00148}00148\ \textcolor{comment}{//\ направление\ передачи\ rs485}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00149}00149\ \textcolor{preprocessor}{\#ifndef\ RS\_EnableReceive}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00150}\mbox{\hyperlink{group___r_s___t_o_o_l_s_gae0f359f0af89adf45bac275a3f5ee34d}{00150}}\ \textcolor{preprocessor}{\#define\ RS\_EnableReceive()\ \ }\textcolor{comment}{///<\ Функция\ изменения\ направления\ передачи\ на\ ПРИЕМ\ для\ RS-\/485}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00151}00151\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00152}00152\ \textcolor{preprocessor}{\#ifndef\ RS\_EnableTransmit}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00153}\mbox{\hyperlink{group___r_s___t_o_o_l_s_gaeddade966945ed376bb152151b493d6f}{00153}}\ \textcolor{preprocessor}{\#define\ RS\_EnableTransmit()\ }\textcolor{comment}{///<\ Функция\ изменения\ направления\ передачи\ на\ ПЕРЕДАЧУ\ для\ RS-\/485}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00154}00154\ \textcolor{preprocessor}{\#endif}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00155}00155\ \textcolor{comment}{////////////////////////////-\/-\/-\/DEFINES-\/-\/-\/////////////////////////////}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00156}00156\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00157}00157\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00158}00158\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00159}00159\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00160}00160\ \textcolor{comment}{///////////////////////-\/-\/-\/STRUCTURES\ \&\ ENUMS-\/-\/-\///////////////////////}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00161}00161\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/ENUMERATIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00162}00162\ \textcolor{comment}{/**\ @brief\ Enums\ for\ respond\ CMD\ about\ RS\ status\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00163}\mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{00163}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}\ \ \ \ \textcolor{comment}{//\ RS\_StatusTypeDef}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00164}00164\ \{}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00165}00165\ \ \ \textcolor{comment}{/*\ IN-\/CODE\ STATUS\ (start\ from\ 0x01,\ and\ goes\ up)*/}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00166}00166\ \ \ \textcolor{comment}{/*0x01*/}\ \ RS\_OK\ =\ 0x01,}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00167}00167\ \ \ \textcolor{comment}{/*0x02*/}\ \ RS\_ERR,\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00168}00168\ \ \ \textcolor{comment}{/*0x03*/}\ \ RS\_ABORTED,\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00169}00169\ \ \ \textcolor{comment}{/*0x04*/}\ \ RS\_BUSY,\ \ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00170}00170\ \ \ \textcolor{comment}{/*0x05*/}\ \ RS\_SKIP,\ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00171}00171\ \ \ \textcolor{comment}{/*0x06*/}\ \ RS\_TIMEOUT,\ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00172}00172\ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00173}00173\ \ \ \textcolor{comment}{/*0x07*/}\ \ RS\_COLLECT\_MSG\_ERR,}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00174}00174\ \ \ \textcolor{comment}{/*0x08*/}\ \ RS\_PARSE\_MSG\_ERR,}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00175}00175\ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00176}00176\ \ \ \textcolor{comment}{//\ reserved\ values}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00177}00177\ \textcolor{comment}{//\ \ /*0x00*/\ \ RS\_UNKNOWN\_ERR\ =\ \ \ \ \ \ \ \ 0x00,\ ///<\ reserved\ for\ case,\ if\ no\ one\ error\ founded\ (nothing\ changed\ response\ from\ zero)}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00178}00178\ \}\mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}};}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00179}00179\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00180}00180\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00181}\mbox{\hyperlink{group___r_s___t_o_o_l_s_ga9560ee688d4bcdd90a47c110be4ecf92}{00181}}\ \textcolor{preprocessor}{\#define\ RS\_MASTER\_MODE\_START\ \ \ 0x3\ }\textcolor{comment}{///<\ Начало\ режимов\ мастера\ (до\ него\ -\/\ режим\ слейв)}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00182}00182\ \textcolor{comment}{/**\ @brief\ Enums\ for\ RS\ Modes\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00183}\mbox{\hyperlink{group___r_s___t_o_o_l_s_ga13e1c056947b06c7dc29b90d22f683a7}{00183}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}\ \ \textcolor{comment}{//\ RS\_ModeTypeDef}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00184}00184\ \{}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00185}\mbox{\hyperlink{group___r_s___t_o_o_l_s_gga13e1c056947b06c7dc29b90d22f683a7aee8cfd8ce9edacc055a195ed454a49dc}{00185}}\ \ \ \mbox{\hyperlink{group___r_s___t_o_o_l_s_gga13e1c056947b06c7dc29b90d22f683a7aee8cfd8ce9edacc055a195ed454a49dc}{RS\_SLAVE\_ALWAYS\_WAIT}}\ \ \ \ =\ 0x01,\ \ \ \textcolor{comment}{///<\ Слейв\ в\ постоянном\ ожидании}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00186}\mbox{\hyperlink{group___r_s___t_o_o_l_s_gga13e1c056947b06c7dc29b90d22f683a7ad118e897a520ddc9c77a905684079550}{00186}}\ \ \ \mbox{\hyperlink{group___r_s___t_o_o_l_s_gga13e1c056947b06c7dc29b90d22f683a7ad118e897a520ddc9c77a905684079550}{RS\_RESERVED}}\ \ \ \ \ \ \ \ \ \ \ \ \ =\ 0x02,\ \ \ \textcolor{comment}{///<\ резерв}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00187}\mbox{\hyperlink{group___r_s___t_o_o_l_s_gga13e1c056947b06c7dc29b90d22f683a7a15953c59b7f547b318edab14070873c5}{00187}}\ \ \ \mbox{\hyperlink{group___r_s___t_o_o_l_s_gga13e1c056947b06c7dc29b90d22f683a7a15953c59b7f547b318edab14070873c5}{RS\_MASTER\_REQUEST}}\ \ \ \ \ \ \ =\ 0x03,\ \ \ \textcolor{comment}{///<\ Мастер\ с\ ручным\ запросом}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00188}00188\ \ \ \textcolor{comment}{//RS\_MASTER\_POLLING\ \ \ \ \ \ \ =\ 0x04,\ \ \ ///<\ Мастер\ с\ опросом\ в\ фоновом\ режиме}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00189}00189\ \}\mbox{\hyperlink{group___r_s___t_o_o_l_s_ga13e1c056947b06c7dc29b90d22f683a7}{RS\_ModeTypeDef}};}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00190}00190\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00191}00191\ \textcolor{comment}{/**\ @brief\ Enums\ for\ Abort\ modes\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00192}\mbox{\hyperlink{group___r_s___t_o_o_l_s_gab7c55bd8bb15b0eecc8c525019d4a1cc}{00192}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}\ \ \textcolor{comment}{//\ RS\_AbortTypeDef}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00193}00193\ \{}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00194}\mbox{\hyperlink{group___r_s___t_o_o_l_s_ggab7c55bd8bb15b0eecc8c525019d4a1cca95c6ce0fee466ba98e43213d001ecc16}{00194}}\ \ \ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ggab7c55bd8bb15b0eecc8c525019d4a1cca95c6ce0fee466ba98e43213d001ecc16}{ABORT\_TX}}\ =\ \ \ \ \ \ 0x01,\ \ \ \textcolor{comment}{///<\ Отменить\ передачу}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00195}\mbox{\hyperlink{group___r_s___t_o_o_l_s_ggab7c55bd8bb15b0eecc8c525019d4a1ccaf0519a0ddda6fff97dd61ce0f3320df9}{00195}}\ \ \ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ggab7c55bd8bb15b0eecc8c525019d4a1ccaf0519a0ddda6fff97dd61ce0f3320df9}{ABORT\_RX}}\ =\ \ \ \ \ \ 0x02,\ \ \ \textcolor{comment}{///<\ Отменить\ прием}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00196}\mbox{\hyperlink{group___r_s___t_o_o_l_s_ggab7c55bd8bb15b0eecc8c525019d4a1ccac5554f0ed84242010a53eb518834d8e8}{00196}}\ \ \ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ggab7c55bd8bb15b0eecc8c525019d4a1ccac5554f0ed84242010a53eb518834d8e8}{ABORT\_RX\_TX}}\ =\ \ \ 0x03,\ \ \ \textcolor{comment}{///<\ Отменить\ прием\ и\ передачу}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00197}\mbox{\hyperlink{group___r_s___t_o_o_l_s_ggab7c55bd8bb15b0eecc8c525019d4a1cca5699efe0ab3cdfd4f6ef175ecb809306}{00197}}\ \ \ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ggab7c55bd8bb15b0eecc8c525019d4a1cca5699efe0ab3cdfd4f6ef175ecb809306}{ABORT\_RS}}\ =\ \ \ \ \ \ 0x04,\ \ \ \textcolor{comment}{///<\ Отменить\ любую\ работу\ UART\ в\ целом}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00198}00198\ \}\mbox{\hyperlink{group___r_s___t_o_o_l_s_gab7c55bd8bb15b0eecc8c525019d4a1cc}{RS\_AbortTypeDef}};}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00199}00199\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00200}00200\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/STRUCTURE\ FOR\ HANDLE\ RS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00201}00201\ \textcolor{comment}{/**\ @brief\ Struct\ for\ flags\ RS\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00202}\mbox{\hyperlink{struct_r_s___flags_type_def}{00202}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00203}00203\ \{}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00204}\mbox{\hyperlink{struct_r_s___flags_type_def_a9371c9de732e4669b16cfdc69f4aaca9}{00204}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_a9371c9de732e4669b16cfdc69f4aaca9}{RS\_Busy}}:1;\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ 1\ -\/\ RS\ занят,\ 0\ -\/\ RS\ свободен}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00205}\mbox{\hyperlink{struct_r_s___flags_type_def_adfc04070a08e90f514072fff20efc744}{00205}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_adfc04070a08e90f514072fff20efc744}{RX\_Ongoing}}:1;\ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ 1\ -\/\ Прием\ данных\ в\ активном\ состоянии,\ \ 0\ -\/\ Ожидаем\ начало\ приема\ данных}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00206}00206\ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00207}\mbox{\hyperlink{struct_r_s___flags_type_def_a15cc785cd0a154ab681720eaaf7cd752}{00207}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_a15cc785cd0a154ab681720eaaf7cd752}{RX\_Busy}}:1;\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ 1\ -\/\ Режим\ приема\ активен,\ \ \ \ 0\ -\/\ Прием\ не\ активен}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00208}\mbox{\hyperlink{struct_r_s___flags_type_def_a8bbeaa5f75f0b028bfa4038486a4d683}{00208}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_a8bbeaa5f75f0b028bfa4038486a4d683}{TX\_Busy}}:1;\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ 1\ -\/\ Режим\ передачи\ активен,\ \ 0\ -\/\ Прием\ не\ активен\ \ \ \ \ \ \ }}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00209}00209\ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00210}\mbox{\hyperlink{struct_r_s___flags_type_def_a2af603f95b5a86c881370fad44fba9fe}{00210}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_a2af603f95b5a86c881370fad44fba9fe}{RX\_Done}}:1;\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ 1\ -\/\ Прием\ закончен,\ \ \ \ \ \ \ \ \ \ 0\ -\/\ Прием\ еще\ в\ процессе\ или\ не\ инициализирован}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00211}\mbox{\hyperlink{struct_r_s___flags_type_def_a8a158c34723d093c7922c014e99739f4}{00211}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_a8a158c34723d093c7922c014e99739f4}{TX\_Done}}:1;\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ 1\ -\/\ Передача\ закончена,\ \ \ \ \ \ 0\ -\/\ Передача\ еще\ в\ процессе\ или\ не\ инициализирована\ }}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00212}00212\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00213}00213\ \ \ \textcolor{comment}{//\ Выставление\ следующие\ флагов\ определяет\ пользователь}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00214}\mbox{\hyperlink{struct_r_s___flags_type_def_a1513dc1265334c20a82b55b1090024c8}{00214}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_a1513dc1265334c20a82b55b1090024c8}{RX\_Continue}}:1;\ \ \ \ \ \ \ \ \textcolor{comment}{///<\ 0\ -\/\ Продолжить\ принимать,\ \ \ \ \ \ \ \ 0\ -\/\ Начать\ прием\ сначала}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00215}\mbox{\hyperlink{struct_r_s___flags_type_def_a98c9a17358406818f3017a2997787c3f}{00215}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_a98c9a17358406818f3017a2997787c3f}{MessageHandled}}:1;\ \ \ \ \ \textcolor{comment}{///<\ 1\ -\/\ Обработка\ запроса\ успешна,\ \ \ 0\ -\/\ Обработка\ запроса\ в\ процессе\ или\ ошибка}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00216}\mbox{\hyperlink{struct_r_s___flags_type_def_a5f8d7960b41717c6edb84fc7bfc06d41}{00216}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_a5f8d7960b41717c6edb84fc7bfc06d41}{EchoResponse}}:1;\ \ \ \ \ \ \ \textcolor{comment}{///<\ 1\ -\/\ Ответить\ эхом,\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 0\ -\/\ Ответить\ своим\ сообщением}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00217}\mbox{\hyperlink{struct_r_s___flags_type_def_a63ea1ac11725b29af72afb2942766633}{00217}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_a63ea1ac11725b29af72afb2942766633}{DeferredResponse}}:1;\ \ \ \textcolor{comment}{///<\ 1\ -\/\ Не\ начинать\ передачу\ в\ IT,\ \ \ 0\ -\/\ Ответить\ в\ прерывании}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00218}\mbox{\hyperlink{struct_r_s___flags_type_def_a4f26eda2d03a726d98fa6623f1abb814}{00218}}\ \ \ \textcolor{keywordtype}{unsigned}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def_a4f26eda2d03a726d98fa6623f1abb814}{DataUpdated}}:1;\ \ \ \ \ \ \ \ \textcolor{comment}{///<\ 1\ -\/\ Данные\ были\ обновлены}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00219}00219\ \}\mbox{\hyperlink{struct_r_s___flags_type_def}{RS\_FlagsTypeDef}};}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00220}00220\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00221}00221\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00222}00222\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00223}00223\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00224}00224\ \textcolor{comment}{\ \ *\ @brief\ \ Handle\ for\ RS\ communication.}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00225}00225\ \textcolor{comment}{\ \ *\ @note\ \ \ Prefixes:\ h\ -\/\ handle,\ s\ -\/\ settings,\ f\ -\/\ flag}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00226}00226\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00227}\mbox{\hyperlink{struct_r_s___handle_type_def}{00227}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct\ \ }\textcolor{comment}{//\ RS\_HandleTypeDef}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00228}00228\ \{\ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00229}00229\ \ \ \textcolor{comment}{/*\ MESSAGE\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00230}\mbox{\hyperlink{struct_r_s___handle_type_def_a01e2c95a23aa3eed1f002e2329a10942}{00230}}\ \ \ uint8\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___handle_type_def_a01e2c95a23aa3eed1f002e2329a10942}{ID}};\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ ID\ хендла}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00231}\mbox{\hyperlink{struct_r_s___handle_type_def_a6a3f47a1a3476d6e9df997e1dc9da8c4}{00231}}\ \ \ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ \ \ \ \ \ \ \ \ \ \ \ \ *\mbox{\hyperlink{struct_r_s___handle_type_def_a6a3f47a1a3476d6e9df997e1dc9da8c4}{pMessagePtr}};\ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Указатель\ на\ структуру\ протокола}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00232}\mbox{\hyperlink{struct_r_s___handle_type_def_a1bc8d1ccb57c20cad4f70a04f751a67a}{00232}}\ \ \ uint8\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ *\mbox{\hyperlink{struct_r_s___handle_type_def_a1bc8d1ccb57c20cad4f70a04f751a67a}{pBufferPtr}};\ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Указатеь\ на\ буфер\ UART}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00233}\mbox{\hyperlink{struct_r_s___handle_type_def_a495a29011412451e53459f9e1513814d}{00233}}\ \ \ int32\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___handle_type_def_a495a29011412451e53459f9e1513814d}{RS\_Message\_Size}};\ \ \ \ \ \ \textcolor{comment}{///<\ size\ of\ whole\ message,\ not\ only\ data}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00234}00234\ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00235}00235\ \ \ \textcolor{comment}{/*\ HANDLERS\ and\ SETTINGS\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00236}\mbox{\hyperlink{struct_r_s___handle_type_def_ade93e3a680f5fbc5275f58e20227198b}{00236}}\ \ \ UART\_HandleTypeDef\ \ \ \ \ \ \ \ *\mbox{\hyperlink{struct_r_s___handle_type_def_ade93e3a680f5fbc5275f58e20227198b}{huart}};\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Хендл\ UART}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00237}\mbox{\hyperlink{struct_r_s___handle_type_def_aef8875f7628f280ed88f74eb762e0d99}{00237}}\ \ \ TIM\_HandleTypeDef\ \ \ \ \ \ \ \ \ *\mbox{\hyperlink{struct_r_s___handle_type_def_aef8875f7628f280ed88f74eb762e0d99}{htim}};\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Хендл\ TIM}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00238}\mbox{\hyperlink{struct_r_s___handle_type_def_a82f0ad79cd234cd26076bfcfbc5c1194}{00238}}\ \ \ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga13e1c056947b06c7dc29b90d22f683a7}{RS\_ModeTypeDef}}\ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___handle_type_def_a82f0ad79cd234cd26076bfcfbc5c1194}{sRS\_Mode}};\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Настройка:\ слейв/мастер\ @ref\ RS\_ModeTypeDef}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00239}\mbox{\hyperlink{struct_r_s___handle_type_def_aa6da72b8ad446f76484783ca8af0e565}{00239}}\ \ \ uint16\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___handle_type_def_aa6da72b8ad446f76484783ca8af0e565}{sRS\_Timeout}};\ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Настройка:\ Таймаут\ в\ тиках\ таймера}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00240}\mbox{\hyperlink{struct_r_s___handle_type_def_a6e584c7559c702d3382dbb9aa572b71b}{00240}}\ \ \ void\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (*\mbox{\hyperlink{struct_r_s___handle_type_def_a6e584c7559c702d3382dbb9aa572b71b}{pCallback}})(\textcolor{keywordtype}{void}*,\ \textcolor{keywordtype}{void}*);\ \ \ \textcolor{comment}{///<\ Указатель\ на\ коллбек:\ принят\ ответ\ в\ режиме\ мастер}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00241}00241\ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00242}00242\ \ \ \textcolor{comment}{/*\ FLAGS\ */}\ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00243}\mbox{\hyperlink{struct_r_s___handle_type_def_a6fa98c2955d01e07dc59f73d072bb37e}{00243}}\ \ \ \mbox{\hyperlink{struct_r_s___flags_type_def}{RS\_FlagsTypeDef}}\ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___handle_type_def_a6fa98c2955d01e07dc59f73d072bb37e}{f}};\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Флаги\ для\ контроля\ приема/передачи}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00244}00244\ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00245}00245\ \ \ \textcolor{comment}{/*\ RS\ STATUS\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00246}\mbox{\hyperlink{struct_r_s___handle_type_def_a3b377cb0eabf384a7e715fb030218290}{00246}}\ \ \ uint32\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___handle_type_def_a3b377cb0eabf384a7e715fb030218290}{lastPacketTick}};\ \ \ \ \ \ \ \textcolor{comment}{///<\ Время\ последнего\ принятого\ пакета}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00247}\mbox{\hyperlink{struct_r_s___handle_type_def_a8bbcb263ae7a61790b559bcb55cd9aa9}{00247}}\ \ \ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{struct_r_s___handle_type_def_a8bbcb263ae7a61790b559bcb55cd9aa9}{RS\_STATUS}};\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Статус\ RS}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00248}00248\ \ \ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00249}00249\ \ \ \mbox{\hyperlink{group___r_s___d_e_b_u_g_ga50ccb119acf302969b7fdcb58f2130e4}{TrackerTypeDef}}(\mbox{\hyperlink{group___r_s___d_e_b_u_g_ga00f6ba164717bd919fa6e9b25e1bbc21}{RS\_USER\_VARS\_NUMB}})\ rs\_err;}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00250}00250\ \}\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}};}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00251}00251\ \textcolor{keyword}{extern}\ \mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_gadaef5cb7e494d0fd139199f5b6cbeb86}{hmodbus1}};}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00252}00252\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00253}00253\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00254}00254\ \textcolor{comment}{///////////////////////-\/-\/-\/STRUCTURES\ \&\ ENUMS-\/-\/-\///////////////////////}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00255}00255\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00256}00256\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00257}00257\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00258}00258\ \textcolor{comment}{///////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\////////////////////////////}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00259}00259\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/FUNCTIONS\ FOR\ PROCESSING\ MESSAGE-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00260}00260\ \textcolor{comment}{/*-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/Defined\ by\ users\ purposes-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/*/}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00261}00261\ \textcolor{comment}{/*\ Пользовательская\ функция\ для\ ответа\ на\ запрос\ по\ UART\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00262}00262\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga8b7bcc84cb8192a58fe87b662fbd9690}{RS\_Response}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ *RS\_msg);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00263}00263\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00264}00264\ \textcolor{comment}{/*\ Пользовательская\ функция\ для\ обработки\ принятого\ ответа\ по\ UART\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00265}00265\ \_\_weak\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ RS\_Response\_Callback(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ *RS\_msg);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00266}00266\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00267}00267\ \textcolor{comment}{/*\ Пользовательская\ функция\ для\ сбора\ сообщения\ в\ буфер\ UART\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00268}00268\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga1cd98c55f6f359e3ab93d0f9cf912ab5}{RS\_Collect\_Message}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ *RS\_msg,\ uint8\_t\ *msg\_uart\_buff);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00269}00269\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00270}00270\ \textcolor{comment}{/*\ Пользовательская\ функция\ для\ парса\ сообщения\ из\ буфера\ UART\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00271}00271\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga3500b3fa91d05a94cf8da5cc5ce338f5}{RS\_Parse\_Message}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ *RS\_msg,\ uint8\_t\ *msg\_uart\_buff);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00272}00272\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00273}00273\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00274}00274\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/GENERAL\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00275}00275\ \textcolor{comment}{/*-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/Should\ be\ called\ from\ main\ code-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/*/}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00276}00276\ \textcolor{comment}{/*\ Начать\ прием\ по\ прерываниям\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00277}00277\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga1b59697f4b7fad81f9d5fd9fffebac2f}{RS\_Receive\_IT}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ *RS\_msg);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00278}00278\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00279}00279\ \textcolor{comment}{/*\ Начать\ передачу\ по\ прерываниям\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00280}00280\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga2e69a97a8b6e0b5855116d88c0e17cb9}{RS\_Transmit\_IT}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ *RS\_msg);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00281}00281\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00282}00282\ \textcolor{comment}{/*\ Инициалазация\ структуры\ @ref\ RS\_HandleTypeDef\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00283}00283\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_gaa261bb0d37e7f18f04fb4353aa0f5c45}{RS\_Init}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS,\ UART\_HandleTypeDef\ *huart,\ TIM\_HandleTypeDef\ *htim,\ uint8\_t\ *pRS\_BufferPtr);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00284}00284\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00285}00285\ \textcolor{comment}{/*\ Отменить\ прием/передачу\ RS/UART\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00286}00286\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga1ffe808b3640f253b1783295d6990962}{RS\_Abort}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS,\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_gab7c55bd8bb15b0eecc8c525019d4a1cc}{RS\_AbortTypeDef}}\ AbortMode);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00287}00287\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/GENERAL\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00288}00288\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00289}00289\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00290}00290\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00291}00291\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/CALLBACK/HANDLER\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00292}00292\ \textcolor{comment}{/*\ Обработчик\ для\ начала\ приема\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00293}00293\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_gab43a3b93c85adee5e3c561922d7ea2ef}{RS\_Handle\_Receive\_Start}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ *RS\_msg);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00294}00294\ \textcolor{comment}{/*\ Обработчик\ для\ начала\ передачи\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00295}00295\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga330f6cfcdaab1f239054c0d91be3c5bc}{RS\_Handle\_Transmit\_Start}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS,\ \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\_MsgTypeDef}}\ *RS\_msg);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00296}00296\ \textcolor{comment}{/*\ UART\ TX\ Callback:\ коллбек\ после\ окончания\ передачи\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00297}00297\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga7180b913ba795c07637680982d7f45ac}{RS\_UART\_TxCpltCallback}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00298}00298\ \textcolor{comment}{/*\ Обработчик\ прерывания\ UART\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00299}00299\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_gab27567456df0329130c7fe4fc43c6ee1}{RS\_UART\_Handler}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00300}00300\ \textcolor{comment}{/*\ Обработчик\ прерывания\ TIM\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00301}00301\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga2d356b2a0b4af43460bb2cacb81779ce}{RS\_TIM\_Handler}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00302}00302\ \textcolor{comment}{/*\ Запуск\ таймаута\ приема.\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00303}00303\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_gac3a7bbc060a4250c160d51f0a0ca6cf8}{RS\_Timeout\_Start}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00304}00304\ \textcolor{comment}{/*\ Остановка\ таймаута\ приема.\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00305}00305\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga1de0a597d043b64d0a19bc393cc1b3fd}{RS\_Timeout\_Stop}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00306}00306\ \textcolor{comment}{/*\ Обновление\ (сброс)\ таймаута\ приема.\ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00307}00307\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\_StatusTypeDef}}\ \mbox{\hyperlink{group___r_s___t_o_o_l_s_gad3d2e8fb9c2879e1ddb967cff6124521}{RS\_Timeout\_Update}}(\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\_HandleTypeDef}}\ *hRS);}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00308}00308\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/CALLBACK/HANDLER\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00309}00309\ \textcolor{comment}{///////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\////////////////////////////}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00310}00310\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00311}00311\ \textcolor{comment}{/**\ RS\_TOOLS}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00312}00312\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00313}00313\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00314}00314\ }
\DoxyCodeLine{\Hypertarget{rs__message_8h_source_l00315}00315\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ \_\_RS\_LIB\_H\_}}

\end{DoxyCode}
