\doxysubsubsubsection{API for Device Identifications }
\hypertarget{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i}{}\label{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i}\index{API for Device Identifications@{API for Device Identifications}}


API для чтения идентификторов из ответа в режиме мастер  


Collaboration diagram for API for Device Identifications\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i}
\end{center}
\end{figure}
\doxysubsubsubsubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \mbox{\hyperlink{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga16b90d4a74a249514161aa4576724d1c}{MB\+\_\+\+Resp\+Get\+\_\+\+Number\+Of\+Objects}} (\mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}modbus\+\_\+msg)
\begin{DoxyCompactList}\small\item\em Получить количество объектов в сообщении \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga0dc4119c008af34d5997eab339c437be}{MB\+\_\+\+Resp\+Get\+\_\+\+Object\+By\+Id}} (\mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}modbus\+\_\+msg, uint8\+\_\+t obj\+\_\+id, char \texorpdfstring{$\ast$}{*}obj\+\_\+data, uint8\+\_\+t \texorpdfstring{$\ast$}{*}obj\+\_\+length)
\begin{DoxyCompactList}\small\item\em Найти объект по ID в сообщении \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga3fc5fc5abfe4f8767ccee5c11ea3d5d5}{MB\+\_\+\+Resp\+Get\+\_\+\+Object\+By\+Index}} (\mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}modbus\+\_\+msg, int index, uint8\+\_\+t \texorpdfstring{$\ast$}{*}obj\+\_\+id, char \texorpdfstring{$\ast$}{*}obj\+\_\+data, uint8\+\_\+t \texorpdfstring{$\ast$}{*}obj\+\_\+length)
\begin{DoxyCompactList}\small\item\em Получить объект по индексу в сообщении \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsubsubsubsection{Detailed Description}
API для чтения идентификторов из ответа в режиме мастер 

Примеры использования\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{\textcolor{comment}{//\ Пример\ 1:\ Получить\ VendorName\ (ID\ =\ 0x00)}}
\DoxyCodeLine{uint8\_t\ length;}
\DoxyCodeLine{\textcolor{keywordtype}{char}\ vendor\_name[64];}
\DoxyCodeLine{\textcolor{keywordflow}{if}(\mbox{\hyperlink{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga0dc4119c008af34d5997eab339c437be}{MB\_RespGet\_ObjectById}}(modbus\_msg,\ 0x00,\ vendor\_name,\ \&length))}
\DoxyCodeLine{\{}
\DoxyCodeLine{\ \ \textcolor{comment}{//\ получено}}
\DoxyCodeLine{\}}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{comment}{//\ Пример\ 2:\ Перебрать\ все\ объекты\ в\ сообщении}}
\DoxyCodeLine{uint8\_t\ obj\_id,\ obj\_length;}
\DoxyCodeLine{\textcolor{keywordtype}{char}\ obj\_data[256];}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{keywordtype}{int}\ obj\_count\ =\ \mbox{\hyperlink{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga16b90d4a74a249514161aa4576724d1c}{MB\_RespGet\_NumberOfObjects}}(modbus\_msg);}
\DoxyCodeLine{printf(\textcolor{stringliteral}{"{}Total\ objects:\ \%d\(\backslash\)n"{}},\ obj\_count);}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{keywordflow}{for}(\textcolor{keywordtype}{int}\ i\ =\ 0;\ i\ <\ obj\_count;\ i++)}
\DoxyCodeLine{\{}
\DoxyCodeLine{\ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga3fc5fc5abfe4f8767ccee5c11ea3d5d5}{MB\_RespGet\_ObjectByIndex}}(modbus\_msg,\ i,\ \&obj\_id,\ obj\_data,\ \&obj\_length))}
\DoxyCodeLine{\ \ \{}
\DoxyCodeLine{\ \ \ \ \textcolor{comment}{//\ получено}}
\DoxyCodeLine{\ \ \}}
\DoxyCodeLine{\}}

\end{DoxyCode}
 

\label{doc-func-members}
\Hypertarget{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_doc-func-members}
\doxysubsubsubsubsection{Function Documentation}
\Hypertarget{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga16b90d4a74a249514161aa4576724d1c}\index{API for Device Identifications@{API for Device Identifications}!MB\_RespGet\_NumberOfObjects@{MB\_RespGet\_NumberOfObjects}}
\index{MB\_RespGet\_NumberOfObjects@{MB\_RespGet\_NumberOfObjects}!API for Device Identifications@{API for Device Identifications}}
\doxysubsubsubsubsubsection{\texorpdfstring{MB\_RespGet\_NumberOfObjects()}{MB\_RespGet\_NumberOfObjects()}}
{\footnotesize\ttfamily \label{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga16b90d4a74a249514161aa4576724d1c} 
int MB\+\_\+\+Resp\+Get\+\_\+\+Number\+Of\+Objects (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}}]{modbus\+\_\+msg}{}\end{DoxyParamCaption})}



Получить количество объектов в сообщении 


\begin{DoxyParams}{Parameters}
{\em modbus\+\_\+msg} & Указатель на структуру сообщения \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
int Количество объектов 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{modbus__master_8c_source_l00170}{170}} of file \mbox{\hyperlink{modbus__master_8c_source}{modbus\+\_\+master.\+c}}.

\Hypertarget{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga0dc4119c008af34d5997eab339c437be}\index{API for Device Identifications@{API for Device Identifications}!MB\_RespGet\_ObjectById@{MB\_RespGet\_ObjectById}}
\index{MB\_RespGet\_ObjectById@{MB\_RespGet\_ObjectById}!API for Device Identifications@{API for Device Identifications}}
\doxysubsubsubsubsubsection{\texorpdfstring{MB\_RespGet\_ObjectById()}{MB\_RespGet\_ObjectById()}}
{\footnotesize\ttfamily \label{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga0dc4119c008af34d5997eab339c437be} 
int MB\+\_\+\+Resp\+Get\+\_\+\+Object\+By\+Id (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}}]{modbus\+\_\+msg}{, }\item[{uint8\+\_\+t}]{obj\+\_\+id}{, }\item[{char \texorpdfstring{$\ast$}{*}}]{obj\+\_\+data}{, }\item[{uint8\+\_\+t \texorpdfstring{$\ast$}{*}}]{obj\+\_\+length}{}\end{DoxyParamCaption})}



Найти объект по ID в сообщении 


\begin{DoxyParams}{Parameters}
{\em modbus\+\_\+msg} & Указатель на структуру сообщения \\
\hline
{\em obj\+\_\+id} & ID искомого объекта \\
\hline
{\em obj\+\_\+data} & Буфер для данных объекта (может быть NULL) \\
\hline
{\em obj\+\_\+length} & Указатель для длины объекта \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
int Найден ли объект (1 -\/ да, 0 -\/ нет) 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{modbus__master_8c_source_l00193}{193}} of file \mbox{\hyperlink{modbus__master_8c_source}{modbus\+\_\+master.\+c}}.

\Hypertarget{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga3fc5fc5abfe4f8767ccee5c11ea3d5d5}\index{API for Device Identifications@{API for Device Identifications}!MB\_RespGet\_ObjectByIndex@{MB\_RespGet\_ObjectByIndex}}
\index{MB\_RespGet\_ObjectByIndex@{MB\_RespGet\_ObjectByIndex}!API for Device Identifications@{API for Device Identifications}}
\doxysubsubsubsubsubsection{\texorpdfstring{MB\_RespGet\_ObjectByIndex()}{MB\_RespGet\_ObjectByIndex()}}
{\footnotesize\ttfamily \label{group___m_o_d_b_u_s___r_e_q___d_e_f_i_d___a_p_i_ga3fc5fc5abfe4f8767ccee5c11ea3d5d5} 
int MB\+\_\+\+Resp\+Get\+\_\+\+Object\+By\+Index (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}}]{modbus\+\_\+msg}{, }\item[{int}]{index}{, }\item[{uint8\+\_\+t \texorpdfstring{$\ast$}{*}}]{obj\+\_\+id}{, }\item[{char \texorpdfstring{$\ast$}{*}}]{obj\+\_\+data}{, }\item[{uint8\+\_\+t \texorpdfstring{$\ast$}{*}}]{obj\+\_\+length}{}\end{DoxyParamCaption})}



Получить объект по индексу в сообщении 


\begin{DoxyParams}{Parameters}
{\em modbus\+\_\+msg} & Указатель на структуру сообщения \\
\hline
{\em index} & Индекс объекта (0..N-\/1) \\
\hline
{\em obj\+\_\+id} & Указатель для ID объекта \\
\hline
{\em obj\+\_\+data} & Буфер для данных объекта \\
\hline
{\em obj\+\_\+length} & Указатель для длины объекта \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
int Успешность получения (1 -\/ получен, 0 -\/ не найден) 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{modbus__master_8c_source_l00244}{244}} of file \mbox{\hyperlink{modbus__master_8c_source}{modbus\+\_\+master.\+c}}.

