STM32_ExtendedLibs/Doc/html/general__uart_8c.html
2025-10-21 03:44:50 +03:00

258 lines
15 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>MyLibs: E:/.WORK/STM32/STM32_ExtendedLibs/MyLibsGeneral/Src/general_uart.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">MyLibs<span id="projectnumber">&#160;1.0</span>
</div>
<div id="projectbrief">Расширенные библиотеки для STM32</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('general__uart_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">general_uart.c File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Модуль для инициализации UART.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="general__uart_8h_source.html">general_uart.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="general__gpio_8h_source.html">general_gpio.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 general_uart.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="general__uart_8c__incl.png" border="0" usemap="#a_e_1_2_8_w_o_r_k_2_s_t_m32_2_s_t_m32___extended_libs_2_my_libs_general_2_src_2general__uart_8c" loading="lazy" alt=""/></div>
<map name="a_e_1_2_8_w_o_r_k_2_s_t_m32_2_s_t_m32___extended_libs_2_my_libs_general_2_src_2general__uart_8c" id="a_e_1_2_8_w_o_r_k_2_s_t_m32_2_s_t_m32___extended_libs_2_my_libs_general_2_src_2general__uart_8c">
<area shape="rect" title="Модуль для инициализации UART." alt="" coords="22,5,220,64"/>
<area shape="rect" href="general__uart_8h.html" title="Заголовочный файл для модуля инициализации UART." alt="" coords="5,112,109,139"/>
<area shape="poly" title=" " alt="" coords="103,66,77,101,73,98,98,63"/>
<area shape="rect" href="general__gpio_8h.html" title="Заголовочный файл для модуля инициализации портов и работы с ними." alt="" coords="132,112,238,139"/>
<area shape="poly" title=" " alt="" coords="144,63,169,98,165,101,139,66"/>
<area shape="rect" href="mylibs__defs_8h.html" title="Заголочный файл для дефайнов библиотеки MyLibsGeneral." alt="" coords="70,187,172,213"/>
<area shape="poly" title=" " alt="" coords="70,137,102,173,98,177,66,141"/>
<area shape="rect" href="mylibs__config_8h.html" title="Конфигурации для библиотек MyLibs." alt="" coords="65,261,177,288"/>
<area shape="poly" title=" " alt="" coords="124,214,124,246,118,246,118,214"/>
<area shape="rect" title=" " alt="" coords="62,336,180,363"/>
<area shape="poly" title=" " alt="" coords="124,289,124,320,118,320,118,289"/>
<area shape="poly" title=" " alt="" coords="176,141,144,177,140,173,172,137"/>
</map>
</div>
</div>
<p><a href="general__uart_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:gab9f07396b778505c934143e89953e154" id="r_gab9f07396b778505c934143e89953e154"><td class="memItemLeft" align="right" valign="top">HAL_StatusTypeDef&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_y___l_i_b_s___u_a_r_t.html#gab9f07396b778505c934143e89953e154">UART_Base_Init</a> (<a class="el" href="struct_u_a_r_t___settings_type_def.html">UART_SettingsTypeDef</a> *suart)</td></tr>
<tr class="memdesc:gab9f07396b778505c934143e89953e154"><td class="mdescLeft">&#160;</td><td class="mdescRight">Инициализация UART с помощью структуры <a class="el" href="struct_u_a_r_t___settings_type_def.html" title="Структура настроек UART.">UART_SettingsTypeDef</a>. <br /></td></tr>
<tr class="memitem:a3abae05bbde5f3b402bf18ca13dc6a0b" id="r_a3abae05bbde5f3b402bf18ca13dc6a0b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3abae05bbde5f3b402bf18ca13dc6a0b">UART_GPIO_Init</a> (GPIO_TypeDef *GPIOx, uint16_t GPIO_PIN_RX, uint16_t GPIO_PIN_TX)</td></tr>
<tr class="memdesc:a3abae05bbde5f3b402bf18ca13dc6a0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Инициализация GPIO для UART. <br /></td></tr>
<tr class="memitem:ad82d0cbd19151675135fd75dad315d05" id="r_ad82d0cbd19151675135fd75dad315d05"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad82d0cbd19151675135fd75dad315d05">UART_DMA_Init</a> (UART_HandleTypeDef *huart, DMA_HandleTypeDef *hdma_rx, DMA_Stream_TypeDef *DMAChannel, uint32_t DMA_CHANNEL_X)</td></tr>
<tr class="memdesc:ad82d0cbd19151675135fd75dad315d05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Инициализация DMA для UART. <br /></td></tr>
<tr class="memitem:gab9313fd2f9fc6873ca6bfbc5b96edbbb" id="r_gab9313fd2f9fc6873ca6bfbc5b96edbbb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_y___l_i_b_s___u_a_r_t.html#gab9313fd2f9fc6873ca6bfbc5b96edbbb">UART_MspInit</a> (UART_HandleTypeDef *huart)</td></tr>
<tr class="memdesc:gab9313fd2f9fc6873ca6bfbc5b96edbbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Настройка тактирования и прерываний UART. <br /></td></tr>
<tr class="memitem:ga93ed6ceef4e3b5e7885786125cce93bc" id="r_ga93ed6ceef4e3b5e7885786125cce93bc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_y___l_i_b_s___u_a_r_t.html#ga93ed6ceef4e3b5e7885786125cce93bc">UART_MspDeInit</a> (UART_HandleTypeDef *huart)</td></tr>
<tr class="memdesc:ga93ed6ceef4e3b5e7885786125cce93bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Деинициализация тактирования и прерываний UART. <br /></td></tr>
<tr class="memitem:ga2a22e46ecb9e04b2ce197a0e9c09044a" id="r_ga2a22e46ecb9e04b2ce197a0e9c09044a"><td class="memItemLeft" align="right" valign="top">HAL_StatusTypeDef&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_y___l_i_b_s___u_a_r_t.html#ga2a22e46ecb9e04b2ce197a0e9c09044a">UART_Check_Init_Struct</a> (<a class="el" href="struct_u_a_r_t___settings_type_def.html">UART_SettingsTypeDef</a> *suart)</td></tr>
<tr class="memdesc:ga2a22e46ecb9e04b2ce197a0e9c09044a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Проверка корректности структуры инициализации UART. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Модуль для инициализации UART. </p>
<p>Реализация функций для работы с UART:</p><ul>
<li>Инициализация UART и его линий RX/TX</li>
<li>Настройка DMA для UART</li>
<li>Настройка GPIO для UART</li>
<li>Настройка NVIC и тактирования UART </li>
</ul>
<p class="definition">Definition in file <a class="el" href="general__uart_8c_source.html">general_uart.c</a>.</p>
</div><a name="doc-func-members" id="doc-func-members"></a><h2 id="header-doc-func-members" class="groupheader">Function Documentation</h2>
<a id="a3abae05bbde5f3b402bf18ca13dc6a0b" name="a3abae05bbde5f3b402bf18ca13dc6a0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3abae05bbde5f3b402bf18ca13dc6a0b">&#9670;&#160;</a></span>UART_GPIO_Init()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void UART_GPIO_Init </td>
<td>(</td>
<td class="paramtype">GPIO_TypeDef *</td> <td class="paramname"><span class="paramname"><em>GPIOx</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t</td> <td class="paramname"><span class="paramname"><em>GPIO_PIN_RX</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t</td> <td class="paramname"><span class="paramname"><em>GPIO_PIN_TX</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Инициализация GPIO для UART. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">GPIOx</td><td>Порт для настройки. </td></tr>
<tr><td class="paramname">GPIO_PIN_RX</td><td>Пин для приема. </td></tr>
<tr><td class="paramname">GPIO_PIN_TX</td><td>Пин для передачи. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="general__uart_8c_source.html#l00069">69</a> of file <a class="el" href="general__uart_8c_source.html">general_uart.c</a>.</p>
</div>
</div>
<a id="ad82d0cbd19151675135fd75dad315d05" name="ad82d0cbd19151675135fd75dad315d05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad82d0cbd19151675135fd75dad315d05">&#9670;&#160;</a></span>UART_DMA_Init()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void UART_DMA_Init </td>
<td>(</td>
<td class="paramtype">UART_HandleTypeDef *</td> <td class="paramname"><span class="paramname"><em>huart</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">DMA_HandleTypeDef *</td> <td class="paramname"><span class="paramname"><em>hdma_rx</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">DMA_Stream_TypeDef *</td> <td class="paramname"><span class="paramname"><em>DMAChannel</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t</td> <td class="paramname"><span class="paramname"><em>DMA_CHANNEL_X</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Инициализация DMA для UART. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">huart</td><td>Указатель на хендл UART. </td></tr>
<tr><td class="paramname">hdma_rx</td><td>Указатель на хендл DMA для линии приема UART. </td></tr>
<tr><td class="paramname">DMAChannel</td><td>Указатель на канал DMA/поток DMA в STM32F407. </td></tr>
<tr><td class="paramname">DMA_CHANNEL_X</td><td>Канал DMA. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="general__uart_8c_source.html#l00109">109</a> of file <a class="el" href="general__uart_8c_source.html">general_uart.c</a>.</p>
</div>
</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_9e11e9a41112194af3eee6cc728f9515.html">MyLibsGeneral</a></li><li class="navelem"><a href="dir_9c80311a018e1f8cfb6659b73d634be4.html">Src</a></li><li class="navelem"><a href="general__uart_8c.html">general_uart.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>