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

65 lines
6.0 KiB
TeX
Raw 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{E\+:/.WORK/\+STM32/\+Diod\+\_\+\+Test/diode\+\_\+tester/\+Core/\+Modbus/\+Src/modbus\+\_\+diag.c File Reference}
\hypertarget{modbus__diag_8c}{}\label{modbus__diag_8c}\index{E:/.WORK/STM32/Diod\_Test/diode\_tester/Core/Modbus/Src/modbus\_diag.c@{E:/.WORK/STM32/Diod\_Test/diode\_tester/Core/Modbus/Src/modbus\_diag.c}}
Реализация диагностики устройства Modbus.
{\ttfamily \#include "{}modbus\+\_\+diag.\+h"{}}\newline
Include dependency graph for modbus\+\_\+diag.\+c\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{modbus__diag_8c__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
void \mbox{\hyperlink{group___m_o_d_b_u_s___d_i_a_g_ga9b61a6d4139bac318868e93f03cd82c7}{MB\+\_\+\+Diagnostics\+Init}} (void)
\begin{DoxyCompactList}\small\item\em Инициализация диагностических счетчиков \end{DoxyCompactList}\item
int \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_gab1237f28e2db2cd2e8a93b31cd9a61be}{MB\+\_\+\+Diagnostics\+\_\+\+Write\+Bit}} (int bit\+\_\+num, int bit\+\_\+state)
\begin{DoxyCompactList}\small\item\em Выставить бит в регистре диагностике \end{DoxyCompactList}\item
int \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_ga5588ddb15ee2580e7659701e5e671e8f}{MB\+\_\+\+Diagnostics\+\_\+\+Get\+Bit}} (int bit\+\_\+num)
\begin{DoxyCompactList}\small\item\em Прочитать состояние бита диагностического регистра \end{DoxyCompactList}\item
uint8\+\_\+t \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_ga6bbfc53b20b4698a08d79851b5db65f0}{MB\+\_\+\+Process\+\_\+\+Diagnostics}} (\mbox{\hyperlink{struct_r_s___msg_type_def}{RS\+\_\+\+Msg\+Type\+Def}} \texorpdfstring{$\ast$}{*}modbus\+\_\+msg)
\begin{DoxyCompactList}\small\item\em Обработать функцию Diagnostics (Serial Line only) (0x08) \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_gae379458fa9cea50d5e313a68e716cb83}{MB\+\_\+\+Diagnostics\+\_\+\+Bus\+Message\+Cnt}} (void)
\begin{DoxyCompactList}\small\item\em Увеличивает счетчик сообщений на шине \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_ga10f9e4dd9f3dda4bb0f66c323d6b29d7}{MB\+\_\+\+Diagnostics\+\_\+\+Communication\+Error\+Cnt}} (void)
\begin{DoxyCompactList}\small\item\em Увеличивает счетчик ошибок связи \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_ga82e0bf0c4452c25bf3f05a20abb7cc74}{MB\+\_\+\+Diagnostics\+\_\+\+Exception\+Error\+Cnt}} (void)
\begin{DoxyCompactList}\small\item\em Увеличивает счетчик исключений \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_gaff7c464d7d66399232770bac78b653a4}{MB\+\_\+\+Diagnostics\+\_\+\+Character\+Overrun\+Cnt}} (void)
\begin{DoxyCompactList}\small\item\em Увеличивает счетчик переполнения символов \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_ga22a48a04ef64f74b5974c4fdb1445936}{MB\+\_\+\+Diagnostics\+\_\+\+Slave\+Message\+Cnt}} (void)
\begin{DoxyCompactList}\small\item\em Увеличивает счетчик отсутствия ответов \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_gabf80c0e24a0ed3736338218c003d001d}{MB\+\_\+\+Diagnostics\+\_\+\+Slave\+No\+Response\+Cnt}} (void)
\begin{DoxyCompactList}\small\item\em Увеличивает счетчик отсутствия ответов \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_ga2585ebac184f7fa56059c81419c614b9}{MB\+\_\+\+Diagnostics\+\_\+\+Slave\+NAKCnt}} (void)
\begin{DoxyCompactList}\small\item\em Увеличивает счетчик NAK ответов \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_ga4baad1102ba3f09cf3cc121b8d548ddb}{MB\+\_\+\+Diagnostics\+\_\+\+Slave\+Busy\+Cnt}} (void)
\begin{DoxyCompactList}\small\item\em Увеличивает счетчик занятости устройства \end{DoxyCompactList}\item
\mbox{\hyperlink{group___m_o_d_b_u_s___d_i_a_g_ga9d139168bb88bfa1ba1597eeff9ebf6a}{MB\+\_\+\+Device\+Mode\+Type\+Def}} \mbox{\hyperlink{group___m_o_d_b_u_s___d_a_t_a___a_c_c_e_s_s___f_u_n_c_t_i_o_n_s_gae7b613f24e9e3d9d95a789c404a3a485}{MB\+\_\+\+Get\+Device\+Mode}} (void)
\begin{DoxyCompactList}\small\item\em Получение текущего режима устройства \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Variables}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{struct_m_b___diagnostics_info_type_def}{MB\+\_\+\+Diagnostics\+Info\+Type\+Def}} \mbox{\hyperlink{group___m_o_d_b_u_s___d_i_a_g_ga4ba6111ac80e342396f9703239323936}{MB\+\_\+\+DIAG}} = \{0\}
\begin{DoxyCompactList}\small\item\em Глобальная структура диагностики \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
Реализация диагностики устройства Modbus.
Модуль обработки запросов диагностической информации (0x08)\+:
\begin{DoxyItemize}
\item Полная поддержка всех подфункций диагностики согласно спецификации Modbus
\item Выставление любого бита в Diagnostics Register
\item Сбор статистики работы устройства
\item Управление режимами работы (Normal/\+Listen Only)
\end{DoxyItemize}
Definition in file \mbox{\hyperlink{modbus__diag_8c_source}{modbus\+\_\+diag.\+c}}.