\doxysubsection{Modbus Internal Tools }
\hypertarget{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l}{}\label{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l}\index{Modbus Internal Tools@{Modbus Internal Tools}}


Внутренние штуки библиотеки  


Collaboration diagram for Modbus Internal Tools\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l}
\end{center}
\end{figure}
\doxysubsubsubsection*{Topics}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group___m_o_d_b_u_s___c_o_i_l_s}{Coils Tools}}
\begin{DoxyCompactList}\small\item\em Функции для работы с коилами \end{DoxyCompactList}\item 
\mbox{\hyperlink{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s}{Modbus Message Tools}}
\begin{DoxyCompactList}\small\item\em Определения протокола модбас \end{DoxyCompactList}\item 
\mbox{\hyperlink{group___m_o_d_b_u_s___c_m_d___p_r_o_c_e_s_s___f_u_n_c_t_i_o_n_s}{Internal Process Functions}}
\begin{DoxyCompactList}\small\item\em Функции обработки запросов модбас \end{DoxyCompactList}\item 
\mbox{\hyperlink{group___m_o_d_b_u_s___d_e_v_i_d}{Device Identifications Tools}}
\begin{DoxyCompactList}\small\item\em Функции для работы с идентификаторами устройства \end{DoxyCompactList}\item 
\mbox{\hyperlink{group___m_o_d_b_u_s___d_i_a_g}{Diagnostics Tools}}
\begin{DoxyCompactList}\small\item\em Функции для работы с диагностикой \end{DoxyCompactList}\item 
\mbox{\hyperlink{group___m_o_d_b_u_s___i_n_s}{Input Register Tools}}
\begin{DoxyCompactList}\small\item\em Функции для работы с входными регистрами \end{DoxyCompactList}\item 
\mbox{\hyperlink{group___m_o_d_b_u_s___h_o_l_d}{Holding Registers Tools}}
\begin{DoxyCompactList}\small\item\em Функции для работы с регистрами хранения \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_gaa9bf5702da5f1816f1fa5509b04283dd}{Register\+Type\+\_\+\+Holding}}~0
\item 
\#define \mbox{\hyperlink{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_ga15d77285b100f198575359d0bcbf8342}{Register\+Type\+\_\+\+Input}}~1
\item 
\#define \mbox{\hyperlink{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_ga56e27a21e4cc0af673a714b4a822f62e}{Register\+Type\+\_\+\+Discrete}}~2
\end{DoxyCompactItemize}


\doxysubsubsection{Detailed Description}
Внутренние штуки библиотеки 

Базовые определения для реализации Modbus RTU устройства\+:
\begin{DoxyItemize}
\item Структуры сообщений Modbus Коды функций и исключений Константы размеров полей Вспомогательные макросы
\end{DoxyItemize}\hypertarget{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_msg}{}\doxysubsubsection{\texorpdfstring{Структура сообщения\+:}{Структура сообщения\+:}}\label{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_msg}
\mbox{[}ADDR\mbox{]}\mbox{[}FUNC\mbox{]}\mbox{[}DATA...\mbox{]}\mbox{[}CRC\mbox{]}
\begin{DoxyItemize}
\item Адрес\+: 1 байт
\item Функция\+: 1 байт ~\newline

\item Данные\+: переменной длины
\item CRC\+: 2 байта 
\end{DoxyItemize}

\label{doc-define-members}
\Hypertarget{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_doc-define-members}
\doxysubsubsection{Macro Definition Documentation}
\Hypertarget{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_gaa9bf5702da5f1816f1fa5509b04283dd}\index{Modbus Internal Tools@{Modbus Internal Tools}!RegisterType\_Holding@{RegisterType\_Holding}}
\index{RegisterType\_Holding@{RegisterType\_Holding}!Modbus Internal Tools@{Modbus Internal Tools}}
\doxysubsubsubsection{\texorpdfstring{RegisterType\_Holding}{RegisterType\_Holding}}
{\footnotesize\ttfamily \label{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_gaa9bf5702da5f1816f1fa5509b04283dd} 
\#define Register\+Type\+\_\+\+Holding~0}



Definition at line \mbox{\hyperlink{modbus__core_8h_source_l00259}{259}} of file \mbox{\hyperlink{modbus__core_8h_source}{modbus\+\_\+core.\+h}}.

\Hypertarget{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_ga15d77285b100f198575359d0bcbf8342}\index{Modbus Internal Tools@{Modbus Internal Tools}!RegisterType\_Input@{RegisterType\_Input}}
\index{RegisterType\_Input@{RegisterType\_Input}!Modbus Internal Tools@{Modbus Internal Tools}}
\doxysubsubsubsection{\texorpdfstring{RegisterType\_Input}{RegisterType\_Input}}
{\footnotesize\ttfamily \label{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_ga15d77285b100f198575359d0bcbf8342} 
\#define Register\+Type\+\_\+\+Input~1}



Definition at line \mbox{\hyperlink{modbus__core_8h_source_l00260}{260}} of file \mbox{\hyperlink{modbus__core_8h_source}{modbus\+\_\+core.\+h}}.

\Hypertarget{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_ga56e27a21e4cc0af673a714b4a822f62e}\index{Modbus Internal Tools@{Modbus Internal Tools}!RegisterType\_Discrete@{RegisterType\_Discrete}}
\index{RegisterType\_Discrete@{RegisterType\_Discrete}!Modbus Internal Tools@{Modbus Internal Tools}}
\doxysubsubsubsection{\texorpdfstring{RegisterType\_Discrete}{RegisterType\_Discrete}}
{\footnotesize\ttfamily \label{group___m_o_d_b_u_s___i_n_t_e_r_n_a_l_ga56e27a21e4cc0af673a714b4a822f62e} 
\#define Register\+Type\+\_\+\+Discrete~2}



Definition at line \mbox{\hyperlink{modbus__core_8h_source_l00261}{261}} of file \mbox{\hyperlink{modbus__core_8h_source}{modbus\+\_\+core.\+h}}.

\input{group___m_o_d_b_u_s___c_o_i_l_s}
\input{group___m_o_d_b_u_s___m_e_s_s_a_g_e___d_e_f_i_n_e_s}
\input{group___m_o_d_b_u_s___c_m_d___p_r_o_c_e_s_s___f_u_n_c_t_i_o_n_s}
\input{group___m_o_d_b_u_s___d_e_v_i_d}
\input{group___m_o_d_b_u_s___d_i_a_g}
\input{group___m_o_d_b_u_s___i_n_s}
\input{group___m_o_d_b_u_s___h_o_l_d}
