207 lines
12 KiB
HTML
207 lines
12 KiB
HTML
<!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: MyLibs</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"> 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('index.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><div class="header">
|
||
<div class="headertitle"><div class="title">MyLibs </div></div>
|
||
</div><!--header-->
|
||
<div class="contents">
|
||
<div class="textblock"><h1 class="doxsection"><a class="anchor" id="overview"></a>
|
||
Обзор</h1>
|
||
<p>MyLibs - это набор библиотек для удобной работы с STM32.</p>
|
||
<p>
|
||
<a href="https://git.arktika.cyou/Razvalyaev/STM32_ExtendedLibs/src/branch/release">Актуальная версия</a>
|
||
</p>
|
||
<h2 class="doxsection"><a class="anchor" id="features"></a>
|
||
Основные возможности</h2>
|
||
<h3 class="doxsection"><a class="anchor" id="utils_module"></a>
|
||
Общие утилиты (<a class="el" href="group___m_y_l_i_b_s___d_e_f_i_n_e_s.html">General Tools</a>)</h3>
|
||
<ul>
|
||
<li>Макросы для задержек и утилит (<a class="el" href="group___d_e_l_a_y_s___d_e_f_i_n_e_s.html">Delays defines</a> и <a class="el" href="group___u_t_i_l_s___d_e_f_i_n_e_s.html">Utils defines</a>)</li>
|
||
<li>Трекеры для статистики и отладки (<a class="el" href="group___t_r_a_c_k_e_r_s.html">Trackers defines</a> и <a class="el" href="group___t_r_a_c_e.html">Trace defines</a>)</li>
|
||
<li>Эволюционный алгоритм для оптимизации параметров (<a class="el" href="group___g_e_n___o_p_t_i_m_i_z_e_r.html">Genetic optimizer</a>)</li>
|
||
<li>Битовый доступ к регистрам через union (<a class="el" href="group___b_i_t___a_c_c_e_s_s___d_e_f_i_n_e_s.html">Bit access defines</a>)</li>
|
||
</ul>
|
||
<h3 class="doxsection"><a class="anchor" id="trace_module"></a>
|
||
Трассировка <a class="el" href="group___t_r_a_c_e.html">Trace defines</a></h3>
|
||
<ul>
|
||
<li>Serial трассировка через SWO и RTT (<a class="el" href="group___t_r_a_c_e___s_e_r_i_a_l.html">Serial trace defines</a>)</li>
|
||
<li>GPIO трассировка для отладки (<a class="el" href="group___t_r_a_c_e___g_p_i_o.html">GPIO trace defines</a>)</li>
|
||
<li>Сохранение логов в Flash память (<a class="el" href="group___t_r_a_c_e___r_t_t___f_l_a_s_h.html">Flash RTT Buffer</a>)</li>
|
||
<li>Обработка HardFault с сохранением контекста (<a class="el" href="group___t_r_a_c_e___h_a_r_d_f_a_u_l_t.html">Hardfault trace defines</a>)</li>
|
||
</ul>
|
||
<h3 class="doxsection"><a class="anchor" id="gpio_module"></a>
|
||
Модуль GPIO <a class="el" href="group___m_y___l_i_b_s___g_p_i_o.html">GPIO Tools</a></h3>
|
||
<ul>
|
||
<li>Инициализация портов и тактирования (<a class="el" href="group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l.html">General tools</a>)</li>
|
||
<li>Управление светодиодами (включение/выключение, моргание, плавное затухание) (<a class="el" href="group___m_y_l_i_b_s___g_p_i_o___l_e_d_s.html">LED tools</a>)</li>
|
||
<li>Работа с кнопками (чтение состояния, фильтрация дребезга) (<a class="el" href="group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h.html">Switch tools</a>)</li>
|
||
</ul>
|
||
<h3 class="doxsection"><a class="anchor" id="tim_module"></a>
|
||
Модуль таймеров <a class="el" href="group___m_y___l_i_b_s___t_i_m.html">TIM Tools</a></h3>
|
||
<ul>
|
||
<li>Базовая инициализация таймеров (<a class="el" href="group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l.html">General tools</a>)</li>
|
||
<li>Формирование задержек (блокирующие и неблокирующие) (<a class="el" href="group___m_y_l_i_b_s___t_i_m___d_e_l_a_y.html">Delay tools</a>)</li>
|
||
<li>Работа с энкодерами (чтение положения, обработка кнопок) (<a class="el" href="group___m_y_l_i_b_s___t_i_m___e_n_c_o_d_e_r.html">Encoder tools</a>)</li>
|
||
<li>Настройка ШИМ и Output Compare (<a class="el" href="group___m_y_l_i_b_s___t_i_m___o_c.html">PWM/OC Channels tools</a>)</li>
|
||
</ul>
|
||
<h3 class="doxsection"><a class="anchor" id="uart_module"></a>
|
||
Модуль UART <a class="el" href="group___m_y___l_i_b_s___u_a_r_t.html">UART Tools</a></h3>
|
||
<ul>
|
||
<li>Базовая инициализация UART и его пинов одной функцией (<a class="el" href="group___m_y___l_i_b_s___u_a_r_t.html#gab9f07396b778505c934143e89953e154">UART_Base_Init</a>)</li>
|
||
</ul>
|
||
<h3 class="doxsection"><a class="anchor" id="spi_module"></a>
|
||
Модуль SPI <a class="el" href="group___m_y___l_i_b_s___s_p_i.html">SPI Tools</a></h3>
|
||
<ul>
|
||
<li>Базовая инициализация SPI и пинов одной функцией (<a class="el" href="group___m_y___l_i_b_s___s_p_i.html#ga0e177e3c57a8fcdc73b5602e72ec66ba">SPI_Base_Init</a>)</li>
|
||
</ul>
|
||
<h2 class="doxsection"><a class="anchor" id="structure"></a>
|
||
Структура проекта</h2>
|
||
<div class="fragment"><div class="line">ProjectRoot/</div>
|
||
<div class="line">├── MyLibs/ # Общие библиотеки, независимые от платформы (или почти)</div>
|
||
<div class="line">│ ├── inc/</div>
|
||
<div class="line">│ │ ├── mylibs_include.h # Главный include файл</div>
|
||
<div class="line">│ │ ├── mylibs_config.h # Конфигурация библиотек</div>
|
||
<div class="line">│ │ ├── mylibs_defs.h # Общие определения и макросы</div>
|
||
<div class="line">│ │ ├── bit_access.h # Битовый доступ к регистрам</div>
|
||
<div class="line">│ │ ├── gen_optimizer.h # Оптимизатор (генетический алгоритм)</div>
|
||
<div class="line">│ │ ├── trackers.h # Трекеры для отладки</div>
|
||
<div class="line">│ │ └── trace.h # Трассировка и логирование</div>
|
||
<div class="line">│ └── src/</div>
|
||
<div class="line">│</div>
|
||
<div class="line">├──RTT # Библиотека RTT</div>
|
||
<div class="line">│ ├── __SEGGER_RTT_Conf.h # Конфигурационный файл RTT</div>
|
||
<div class="line">│ ├── SEGGER_RTT.c # Основной модуль RTT</div>
|
||
<div class="line">│ ├── SEGGER_RTT.h # Основной заголовок RTT</div>
|
||
<div class="line">│ ├── SEGGER_RTT_ASM_ARMv7M.S # Ассемблерная оптимизация для ARMv7M</div>
|
||
<div class="line">│ └── SEGGER_RTT_printf.c # Реализация printf() через RTT</div>
|
||
<div class="line">│</div>
|
||
<div class="line">└── STM32_General <span class="preprocessor"># Работа с периферией STM32</span></div>
|
||
<div class="line"> ├── inc/</div>
|
||
<div class="line"> │ ├── general_gpio.h # Работа с GPIO</div>
|
||
<div class="line"> │ ├── general_spi.h # Работа с SPI</div>
|
||
<div class="line"> │ ├── general_tim.h # Работа с таймерами</div>
|
||
<div class="line"> │ └── general_uart.h # Работа с UART</div>
|
||
<div class="line"> └── src/</div>
|
||
<div class="line"> ├── general_gpio.c # Реализация GPIO</div>
|
||
<div class="line"> ├── general_spi.c # Реализация SPI</div>
|
||
<div class="line"> ├── general_tim.c # Реализация TIM</div>
|
||
<div class="line"> └── general_uart.c # Реализация UART</div>
|
||
</div><!-- fragment --><h2 class="doxsection"><a class="anchor" id="usage_basic"></a>
|
||
Использование</h2>
|
||
<p>Инструкция по подключению:</p>
|
||
<ol type="1">
|
||
<li>Настройте конфигурацию <a class="el" href="group___m_y_l_i_b_s___c_o_n_f_i_g.html">Configs</a> в <a class="el" href="mylibs__config_8h.html">mylibs_config.h</a></li>
|
||
<li>Подключите главный заголовочный файл: <div class="fragment"><div class="line"><span class="preprocessor">#include "<a class="code" href="mylibs__include_8h.html">mylibs_include.h</a>"</span></div>
|
||
<div class="ttc" id="amylibs__include_8h_html"><div class="ttname"><a href="mylibs__include_8h.html">mylibs_include.h</a></div><div class="ttdoc">Заголочный файл для всех библиотек</div></div>
|
||
</div><!-- fragment --></li>
|
||
<li>Используйте нужные модули в своем коде. Примеры использования приведены в соответствующей теме </li>
|
||
</ol>
|
||
</div></div><!-- PageDoc -->
|
||
<a href="doxygen_crawl.html"></a>
|
||
</div><!-- contents -->
|
||
</div><!-- doc-content -->
|
||
</div><!-- container -->
|
||
<!-- start footer part -->
|
||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||
<ul>
|
||
<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>
|