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

200 lines
17 KiB
HTML
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.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.14.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Modbus: E:/.WORK/STM32/Diod_Test/diode_tester/Core/Modbus/Src/modbus_diag.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js"></script>
<script type="text/javascript" src="darkmode_toggle.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">Modbus<span id="projectnumber">&#160;0.3</span>
</div>
<div id="projectbrief">Библиотека Modbus для STM</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.14.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('modbus__diag_8c.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">modbus_diag.c File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Реализация диагностики устройства Modbus.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="modbus__diag_8h_source.html">modbus_diag.h</a>&quot;</code><br />
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for modbus_diag.c:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="modbus__diag_8c__incl.png" border="0" usemap="#a_e_1_2_8_w_o_r_k_2_s_t_m32_2_diod___test_2diode__tester_2_core_2_modbus_2_src_2modbus__diag_8c" loading="lazy" alt=""/></div>
<map name="a_e_1_2_8_w_o_r_k_2_s_t_m32_2_diod___test_2diode__tester_2_core_2_modbus_2_src_2modbus__diag_8c" id="a_e_1_2_8_w_o_r_k_2_s_t_m32_2_diod___test_2diode__tester_2_core_2_modbus_2_src_2modbus__diag_8c">
<area shape="rect" title="Реализация диагностики устройства Modbus." alt="" coords="141,5,328,64"/>
<area shape="rect" href="modbus__diag_8h.html" title="Диагностика устройства Modbus." alt="" coords="180,112,290,139"/>
<area shape="poly" title=" " alt="" coords="238,64,238,96,232,96,232,64"/>
<area shape="rect" href="modbus__core_8h.html" title="Ядро Modbus протокола &#45; определения и структуры" alt="" coords="180,187,290,213"/>
<area shape="poly" title=" " alt="" coords="238,139,238,171,232,171,232,139"/>
<area shape="rect" href="modbus__config_8h.html" title="Конфигурационные параметры Modbus устройства" alt="" coords="5,336,126,363"/>
<area shape="poly" title=" " alt="" coords="179,205,145,210,109,221,77,238,50,263,45,276,44,291,53,321,48,323,39,292,39,275,46,260,73,233,107,216,144,205,179,200"/>
<area shape="rect" href="modbus__data_8h.html" title="Определения структур данных Modbus устройства" alt="" coords="180,261,290,288"/>
<area shape="poly" title=" " alt="" coords="238,214,238,246,232,246,232,214"/>
<area shape="rect" href="____crc__algs_8h_source.html" title=" " alt="" coords="60,261,156,288"/>
<area shape="poly" title=" " alt="" coords="214,216,145,256,142,251,211,212"/>
<area shape="rect" href="____modbus__compat_8h.html" title="Модуль для совместимости библиотеки MODBUS." alt="" coords="314,261,457,288"/>
<area shape="poly" title=" " alt="" coords="255,211,339,252,337,257,253,216"/>
<area shape="rect" title=" " alt="" coords="7,411,124,437"/>
<area shape="poly" title=" " alt="" coords="68,363,68,395,63,395,63,363"/>
<area shape="rect" title=" " alt="" coords="203,336,267,363"/>
<area shape="poly" title=" " alt="" coords="238,289,238,320,232,320,232,289"/>
<area shape="poly" title=" " alt="" coords="103,290,83,324,78,321,98,287"/>
<area shape="poly" title=" " alt="" coords="365,263,281,222,283,218,367,258"/>
</map>
</div>
</div>
<p><a href="modbus__diag_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga9b61a6d4139bac318868e93f03cd82c7" id="r_ga9b61a6d4139bac318868e93f03cd82c7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_o_d_b_u_s___d_i_a_g.html#ga9b61a6d4139bac318868e93f03cd82c7">MB_DiagnosticsInit</a> (void)</td></tr>
<tr class="memdesc:ga9b61a6d4139bac318868e93f03cd82c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Инициализация диагностических счетчиков <br /></td></tr>
<tr class="memitem:gab1237f28e2db2cd2e8a93b31cd9a61be" id="r_gab1237f28e2db2cd2e8a93b31cd9a61be"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#gab1237f28e2db2cd2e8a93b31cd9a61be">MB_Diagnostics_WriteBit</a> (int bit_num, int bit_state)</td></tr>
<tr class="memdesc:gab1237f28e2db2cd2e8a93b31cd9a61be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Выставить бит в регистре диагностике <br /></td></tr>
<tr class="memitem:ga5588ddb15ee2580e7659701e5e671e8f" id="r_ga5588ddb15ee2580e7659701e5e671e8f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#ga5588ddb15ee2580e7659701e5e671e8f">MB_Diagnostics_GetBit</a> (int bit_num)</td></tr>
<tr class="memdesc:ga5588ddb15ee2580e7659701e5e671e8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Прочитать состояние бита диагностического регистра <br /></td></tr>
<tr class="memitem:ga6bbfc53b20b4698a08d79851b5db65f0" id="r_ga6bbfc53b20b4698a08d79851b5db65f0"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#ga6bbfc53b20b4698a08d79851b5db65f0">MB_Process_Diagnostics</a> (<a class="el" href="struct_r_s___msg_type_def.html">RS_MsgTypeDef</a> *modbus_msg)</td></tr>
<tr class="memdesc:ga6bbfc53b20b4698a08d79851b5db65f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Обработать функцию Diagnostics (Serial Line only) (0x08) <br /></td></tr>
<tr class="memitem:gae379458fa9cea50d5e313a68e716cb83" id="r_gae379458fa9cea50d5e313a68e716cb83"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#gae379458fa9cea50d5e313a68e716cb83">MB_Diagnostics_BusMessageCnt</a> (void)</td></tr>
<tr class="memdesc:gae379458fa9cea50d5e313a68e716cb83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Увеличивает счетчик сообщений на шине <br /></td></tr>
<tr class="memitem:ga10f9e4dd9f3dda4bb0f66c323d6b29d7" id="r_ga10f9e4dd9f3dda4bb0f66c323d6b29d7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#ga10f9e4dd9f3dda4bb0f66c323d6b29d7">MB_Diagnostics_CommunicationErrorCnt</a> (void)</td></tr>
<tr class="memdesc:ga10f9e4dd9f3dda4bb0f66c323d6b29d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Увеличивает счетчик ошибок связи <br /></td></tr>
<tr class="memitem:ga82e0bf0c4452c25bf3f05a20abb7cc74" id="r_ga82e0bf0c4452c25bf3f05a20abb7cc74"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#ga82e0bf0c4452c25bf3f05a20abb7cc74">MB_Diagnostics_ExceptionErrorCnt</a> (void)</td></tr>
<tr class="memdesc:ga82e0bf0c4452c25bf3f05a20abb7cc74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Увеличивает счетчик исключений <br /></td></tr>
<tr class="memitem:gaff7c464d7d66399232770bac78b653a4" id="r_gaff7c464d7d66399232770bac78b653a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#gaff7c464d7d66399232770bac78b653a4">MB_Diagnostics_CharacterOverrunCnt</a> (void)</td></tr>
<tr class="memdesc:gaff7c464d7d66399232770bac78b653a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Увеличивает счетчик переполнения символов <br /></td></tr>
<tr class="memitem:ga22a48a04ef64f74b5974c4fdb1445936" id="r_ga22a48a04ef64f74b5974c4fdb1445936"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#ga22a48a04ef64f74b5974c4fdb1445936">MB_Diagnostics_SlaveMessageCnt</a> (void)</td></tr>
<tr class="memdesc:ga22a48a04ef64f74b5974c4fdb1445936"><td class="mdescLeft">&#160;</td><td class="mdescRight">Увеличивает счетчик отсутствия ответов <br /></td></tr>
<tr class="memitem:gabf80c0e24a0ed3736338218c003d001d" id="r_gabf80c0e24a0ed3736338218c003d001d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#gabf80c0e24a0ed3736338218c003d001d">MB_Diagnostics_SlaveNoResponseCnt</a> (void)</td></tr>
<tr class="memdesc:gabf80c0e24a0ed3736338218c003d001d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Увеличивает счетчик отсутствия ответов <br /></td></tr>
<tr class="memitem:ga2585ebac184f7fa56059c81419c614b9" id="r_ga2585ebac184f7fa56059c81419c614b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#ga2585ebac184f7fa56059c81419c614b9">MB_Diagnostics_SlaveNAKCnt</a> (void)</td></tr>
<tr class="memdesc:ga2585ebac184f7fa56059c81419c614b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Увеличивает счетчик NAK ответов <br /></td></tr>
<tr class="memitem:ga4baad1102ba3f09cf3cc121b8d548ddb" id="r_ga4baad1102ba3f09cf3cc121b8d548ddb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#ga4baad1102ba3f09cf3cc121b8d548ddb">MB_Diagnostics_SlaveBusyCnt</a> (void)</td></tr>
<tr class="memdesc:ga4baad1102ba3f09cf3cc121b8d548ddb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Увеличивает счетчик занятости устройства <br /></td></tr>
<tr class="memitem:gae7b613f24e9e3d9d95a789c404a3a485" id="r_gae7b613f24e9e3d9d95a789c404a3a485"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___m_o_d_b_u_s___d_i_a_g.html#ga9d139168bb88bfa1ba1597eeff9ebf6a">MB_DeviceModeTypeDef</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="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.html#gae7b613f24e9e3d9d95a789c404a3a485">MB_GetDeviceMode</a> (void)</td></tr>
<tr class="memdesc:gae7b613f24e9e3d9d95a789c404a3a485"><td class="mdescLeft">&#160;</td><td class="mdescRight">Получение текущего режима устройства <br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-var-members" class="groupheader"><a id="var-members" name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:ga4ba6111ac80e342396f9703239323936" id="r_ga4ba6111ac80e342396f9703239323936"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_m_b___diagnostics_info_type_def.html">MB_DiagnosticsInfoTypeDef</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_o_d_b_u_s___d_i_a_g.html#ga4ba6111ac80e342396f9703239323936">MB_DIAG</a> = {0}</td></tr>
<tr class="memdesc:ga4ba6111ac80e342396f9703239323936"><td class="mdescLeft">&#160;</td><td class="mdescRight">Глобальная структура диагностики <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Реализация диагностики устройства Modbus. </p>
<p>Модуль обработки запросов диагностической информации (0x08):</p><ul>
<li>Полная поддержка всех подфункций диагностики согласно спецификации Modbus</li>
<li>Выставление любого бита в Diagnostics Register</li>
<li>Сбор статистики работы устройства</li>
<li>Управление режимами работы (Normal/Listen Only) </li>
</ul>
<p class="definition">Definition in file <a class="el" href="modbus__diag_8c_source.html">modbus_diag.c</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a href="dir_413f4e031a85da0d68269c6fd2f76e1c.html">Src</a></li><li class="navelem"><a href="modbus__diag_8c.html">modbus_diag.c</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.14.0 </li>
</ul>
</div>
</body>
</html>