\doxysection{E\+:/.WORK/\+STM32/\+Diod\+\_\+\+Test/diode\+\_\+tester/\+Core/\+Modbus/\+Src/modbus\+\_\+slave.c File Reference} \hypertarget{modbus__slave_8c}{}\label{modbus__slave_8c}\index{E:/.WORK/STM32/Diod\_Test/diode\_tester/Core/Modbus/Src/modbus\_slave.c@{E:/.WORK/STM32/Diod\_Test/diode\_tester/Core/Modbus/Src/modbus\_slave.c}} Модуль для реализации слейв MODBUS. {\ttfamily \#include "{}modbus.\+h"{}}\newline Include dependency graph for modbus\+\_\+slave.\+c\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{modbus__slave_8c__incl} \end{center} \end{figure} \doxysubsubsection*{Functions} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\+\_\+\+Status\+Type\+Def}} \mbox{\hyperlink{group___m_o_d_b_u_s___s_l_a_v_e_gacb44db7ef6ef32b08f4ffe0178eabee8}{MB\+\_\+\+Slave\+\_\+\+Response}} (\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\+\_\+\+Handle\+Type\+Def}} \texorpdfstring{$\ast$}{*}hmodbus, \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}modbus\+\_\+msg) \begin{DoxyCompactList}\small\item\em Ответ на сообщение в режиме слейва. \end{DoxyCompactList}\item \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\+\_\+\+Status\+Type\+Def}} \mbox{\hyperlink{group___m_o_d_b_u_s___s_l_a_v_e_ga1c73cfdcbe7bc6076f62a4ec9c211eee}{MB\+\_\+\+Slave\+\_\+\+Collect\+\_\+\+Message}} (\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\+\_\+\+Handle\+Type\+Def}} \texorpdfstring{$\ast$}{*}hmodbus, \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}modbus\+\_\+msg, uint8\+\_\+t \texorpdfstring{$\ast$}{*}modbus\+\_\+uart\+\_\+buff) \begin{DoxyCompactList}\small\item\em Сбор сообщения в буфер UART в режиме слейв (фрейм слейва из msg -\/\texorpdfstring{$>$}{>} uart). \end{DoxyCompactList}\item static int \mbox{\hyperlink{modbus__slave_8c_a79e3f84b9daba8a42c8ca6026133acc5}{MB\+\_\+\+Define\+\_\+\+Size\+\_\+of\+\_\+\+Function}} (\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\+\_\+\+Handle\+Type\+Def}} \texorpdfstring{$\ast$}{*}hmodbus, \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}modbus\+\_\+msg) \begin{DoxyCompactList}\small\item\em Определить размер модбас запроса (СЛЕЙВ версия). \end{DoxyCompactList}\item \mbox{\hyperlink{group___r_s___t_o_o_l_s_ga727154b368397b4796aa892de12a2289}{RS\+\_\+\+Status\+Type\+Def}} \mbox{\hyperlink{group___m_o_d_b_u_s___s_l_a_v_e_gadc281b1044c4ae345d10db6497846cef}{MB\+\_\+\+Slave\+\_\+\+Parse\+\_\+\+Message}} (\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\+\_\+\+Handle\+Type\+Def}} \texorpdfstring{$\ast$}{*}hmodbus, \mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}modbus\+\_\+msg, uint8\+\_\+t \texorpdfstring{$\ast$}{*}modbus\+\_\+uart\+\_\+buff) \begin{DoxyCompactList}\small\item\em Парс сообщения в режиме слейв (фрейм мастера из uart -\/\texorpdfstring{$>$}{>} msg). \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsection{Detailed Description} Модуль для реализации слейв MODBUS. Файл содержит реализацию функций для работы Modbus в режиме слейва.\hypertarget{modbus__slave_8c_slave}{}\doxysubsection{\texorpdfstring{Функции и макросы}{Функции и макросы}}\label{modbus__slave_8c_slave} \begin{DoxyItemize} \item \doxylink{group___m_o_d_b_u_s___s_l_a_v_e_gacb44db7ef6ef32b08f4ffe0178eabee8}{MB\+\_\+\+Slave\+\_\+\+Response()} — Ответ на запрос \item \doxylink{group___m_o_d_b_u_s___s_l_a_v_e_ga1c73cfdcbe7bc6076f62a4ec9c211eee}{MB\+\_\+\+Slave\+\_\+\+Collect\+\_\+\+Message()} — Сбор сообщения в режиме слейва. \item \doxylink{group___m_o_d_b_u_s___s_l_a_v_e_gadc281b1044c4ae345d10db6497846cef}{MB\+\_\+\+Slave\+\_\+\+Parse\+\_\+\+Message()} — Парс сообщения в режиме слейва. \end{DoxyItemize} Definition in file \mbox{\hyperlink{modbus__slave_8c_source}{modbus\+\_\+slave.\+c}}. \label{doc-func-members} \Hypertarget{modbus__slave_8c_doc-func-members} \doxysubsection{Function Documentation} \Hypertarget{modbus__slave_8c_a79e3f84b9daba8a42c8ca6026133acc5}\index{modbus\_slave.c@{modbus\_slave.c}!MB\_Define\_Size\_of\_Function@{MB\_Define\_Size\_of\_Function}} \index{MB\_Define\_Size\_of\_Function@{MB\_Define\_Size\_of\_Function}!modbus\_slave.c@{modbus\_slave.c}} \doxysubsubsection{\texorpdfstring{MB\_Define\_Size\_of\_Function()}{MB\_Define\_Size\_of\_Function()}} {\footnotesize\ttfamily \label{modbus__slave_8c_a79e3f84b9daba8a42c8ca6026133acc5} int MB\+\_\+\+Define\+\_\+\+Size\+\_\+of\+\_\+\+Function (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{struct_r_s___handle_type_def}{RS\+\_\+\+Handle\+Type\+Def}} \texorpdfstring{$\ast$}{*}}]{hmodbus}{, }\item[{\mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}}]{modbus\+\_\+msg}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} Определить размер модбас запроса (СЛЕЙВ версия). \begin{DoxyParams}{Parameters} {\em h\+RS} & Указатель на хендлер RS. \\ \hline {\em rx\+\_\+data\+\_\+size} & Указатель на переменную для записи кол-\/ва байт для принятия. \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} RS\+\_\+\+RES Статус о корректности рассчета кол-\/ва байт для принятия. \end{DoxyReturn} Определение сколько байтов надо принять по протоколу. Definition at line \mbox{\hyperlink{modbus__slave_8c_source_l00294}{294}} of file \mbox{\hyperlink{modbus__slave_8c_source}{modbus\+\_\+slave.\+c}}.