Доработал модуль TIM (с точки зрения документции. Код не проверен)

Доработна документация в целом
	- добавелн main page
	- исправлены ошибки в шапках и коментах
	- добавлен граф инклюдов
This commit is contained in:
2025-10-19 11:55:12 +03:00
parent f61aa1ff0f
commit 9d720767b0
534 changed files with 13259 additions and 9229 deletions

View File

@@ -2,10 +2,10 @@
\hypertarget{____general__flash_8h_source}{}\label{____general__flash_8h_source}\index{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/\_\_general\_flash.h@{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/\_\_general\_flash.h}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00001}00001\ \textcolor{comment}{/*********************************UART**************************************}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00002}00002\ \textcolor{comment}{Данный\ файл\ содержит\ объявления\ базовых\ функции\ и\ дефайны\ для\ инициализации\ }}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00003}00003\ \textcolor{comment}{UART.}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00004}00004\ \textcolor{comment}{***************************************************************************/}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00001}00001\ \textcolor{comment}{/**************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00002}00002\ \textcolor{comment}{*\ @file\ general\_flash.h}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00003}00003\ \textcolor{comment}{*\ @brief\ Заголовочны\ файл\ модуля\ работы\ с\ FLASH.}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00004}00004\ \textcolor{comment}{*************************************************************************/}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00005}00005\ \textcolor{preprocessor}{\#ifndef\ \_\_FLASH\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00006}00006\ \textcolor{preprocessor}{\#define\ \_\_FLASH\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00007}00007\ \textcolor{comment}{}}
@@ -45,24 +45,6 @@
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00041}00041\ HAL\_StatusTypeDef\ FLASH\_Write\_Word(uint32\_t\ Address,\ uint32\_t\ Data);\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00042}00042\ \textcolor{comment}{///////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\////////////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00043}00043\ }
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00044}00044\ \textcolor{preprocessor}{\#ifndef\ LED\_PWM\_TICKS}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00045}00045\ \textcolor{preprocessor}{\#define\ LED\_PWM\_TICKS\ 15}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00046}00046\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00047}00047\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00048}00048\ \textcolor{preprocessor}{\#ifndef\ LED\_ON}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00049}00049\ \textcolor{preprocessor}{\#define\ LED\_ON\ 1}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00050}00050\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00051}00051\ \textcolor{preprocessor}{\#ifndef\ LED\_OFF}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00052}00052\ \textcolor{preprocessor}{\#define\ LED\_OFF\ 0}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00053}00053\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00054}00054\ }
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00055}00055\ \textcolor{preprocessor}{\#ifndef\ SW\_ON}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00056}00056\ \textcolor{preprocessor}{\#define\ SW\_ON\ 1}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00057}00057\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00058}00058\ \textcolor{preprocessor}{\#ifndef\ SW\_OFF}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00059}00059\ \textcolor{preprocessor}{\#define\ SW\_OFF\ 0}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00060}00060\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00061}00061\ }
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00062}00062\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ \_\_FLASH\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{____general__flash_8h_source_l00044}00044\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ \_\_FLASH\_GENERAL\_H\_}}
\end{DoxyCode}

View File

@@ -3,22 +3,22 @@
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00001}00001\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00002}00002\ \textcolor{comment}{\ \ **************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00003}00003\ \textcolor{comment}{\ \ *\ @file\ general\_spi.c}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00004}00004\ \textcolor{comment}{\ \ *\ @brief\ Модуль\ для\ инициализации\ SPI.}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00005}00005\ \textcolor{comment}{\ \ **************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00006}00006\ \textcolor{comment}{\ \ *\ //-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/Функции-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\///}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00007}00007\ \textcolor{comment}{\ \ *\ @verbatim}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00008}00008\ \textcolor{comment}{\ \ *\ Functions:\ users}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00009}00009\ \textcolor{comment}{\ \ *\ \ \ -\/\ SPI\_Base\_Init\ \ \ \ \ \ \ \ \ \ \ \ \ Инициализация\ SPI\ }}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00010}00010\ \textcolor{comment}{\ \ *\ }}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00011}00011\ \textcolor{comment}{\ \ *\ Functions:\ spi\ initialize}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00012}00012\ \textcolor{comment}{\ \ *\ \ \ -\/\ SPI\_GPIO\_Init\ \ \ \ \ \ \ \ \ \ \ \ \ Инициализация\ GPIO\ для\ SPI}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00013}00013\ \textcolor{comment}{\ \ *\ \ \ -\/\ SPI\_DMA\_Init\ \ \ \ \ \ \ \ \ \ \ \ \ \ Инициализация\ DMA\ для\ SPI}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00014}00014\ \textcolor{comment}{\ \ *\ \ \ -\/\ SPI\_MspInit\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Аналог\ HAL\_MspInit\ для\ SPI}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00015}00015\ \textcolor{comment}{\ \ *\ \ \ -\/\ SPI\_MspDeInit\ \ \ \ \ \ \ \ \ \ \ \ \ Аналог\ HAL\_MspDeInit\ для\ SPI}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00016}00016\ \textcolor{comment}{\ \ *\ @endverbatim}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00017}00017\ \textcolor{comment}{\ \ *************************************************************************/}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00002}00002\ \textcolor{comment}{**************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00003}00003\ \textcolor{comment}{*\ @file\ general\_spi.c}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Модуль\ для\ инициализации\ SPI.}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00005}00005\ \textcolor{comment}{**************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00006}00006\ \textcolor{comment}{*\ @details}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00007}00007\ \textcolor{comment}{*}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00008}00008\ \textcolor{comment}{*\ Функции:}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00009}00009\ \textcolor{comment}{*\ \ \ -\/\ SPI\_Base\_Init\ \ \ \ \ \ \ \ \ \ \ \ \ Инициализация\ SPI\ }}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00010}00010\ \textcolor{comment}{*\ }}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00011}00011\ \textcolor{comment}{*\ Functions:\ spi\ initialize}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00012}00012\ \textcolor{comment}{*\ \ \ -\/\ SPI\_GPIO\_Init\ \ \ \ \ \ \ \ \ \ \ \ \ Инициализация\ GPIO\ для\ SPI}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00013}00013\ \textcolor{comment}{*\ \ \ -\/\ SPI\_DMA\_Init\ \ \ \ \ \ \ \ \ \ \ \ \ \ Инициализация\ DMA\ для\ SPI}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00014}00014\ \textcolor{comment}{*\ \ \ -\/\ SPI\_MspInit\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Аналог\ HAL\_MspInit\ для\ SPI}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00015}00015\ \textcolor{comment}{*\ \ \ -\/\ SPI\_MspDeInit\ \ \ \ \ \ \ \ \ \ \ \ \ Аналог\ HAL\_MspDeInit\ для\ SPI}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00016}00016\ \textcolor{comment}{*}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00017}00017\ \textcolor{comment}{*************************************************************************/}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00018}00018\ \textcolor{preprocessor}{\#include\ "{}general\_spi.h"{}}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00019}00019\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{general__gpio_8h}{general\_gpio.h}}"{}}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00020}00020\ }
@@ -66,9 +66,9 @@
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00062}00062\ \{\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00063}00063\ \ \ GPIO\_InitTypeDef\ GPIO\_InitStruct\ =\ \{0\};\ }
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00064}00064\ \ \ \textcolor{comment}{//\ GPIO\ INIT\ \ }}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00065}00065\ \ \ \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(sspi-\/>CLK\_GPIOx);}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00066}00066\ \ \ \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(sspi-\/>MISO\_GPIOx);}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00067}00067\ \ \ \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(sspi-\/>MOSI\_GPIOx);\ \ }
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00065}00065\ \ \ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(sspi-\/>CLK\_GPIOx);}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00066}00066\ \ \ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(sspi-\/>MISO\_GPIOx);}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00067}00067\ \ \ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(sspi-\/>MOSI\_GPIOx);\ \ }
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00068}00068\ \ \ \ \ \textcolor{comment}{//\ CLK\ PIN\ INIT}}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00069}00069\ \ \ GPIO\_InitStruct.Pin\ =\ sspi-\/>CLK\_PIN;}
\DoxyCodeLine{\Hypertarget{____general__spi_8c_source_l00070}00070\ \ \ GPIO\_InitStruct.Alternate\ =\ sspi-\/>CLK\_GPIO\_AlternageFunc;}

View File

@@ -3,10 +3,10 @@
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00001}00001\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00002}00002\ \textcolor{comment}{\ \ **************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00003}00003\ \textcolor{comment}{\ \ *\ @file\ general\_spi.h}}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00004}00004\ \textcolor{comment}{\ \ *\ @brief\ Заголовочны\ файл\ модуля\ инициализации\ SPI.}}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00005}00005\ \textcolor{comment}{\ \ *************************************************************************/}}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00002}00002\ \textcolor{comment}{**************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00003}00003\ \textcolor{comment}{*\ @file\ general\_spi.h}}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Заголовочны\ файл\ модуля\ инициализации\ SPI.}}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00005}00005\ \textcolor{comment}{*************************************************************************/}}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00006}00006\ \textcolor{preprocessor}{\#ifndef\ \_\_SPI\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00007}00007\ \textcolor{preprocessor}{\#define\ \_\_SPI\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{____general__spi_8h_source_l00008}00008\ \textcolor{comment}{}}

View File

@@ -1,663 +0,0 @@
\doxysection{\+\_\+\+\_\+general\+\_\+tim.\+c}
\hypertarget{____general__tim_8c_source}{}\label{____general__tim_8c_source}\index{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Src/\_\_general\_tim.c@{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Src/\_\_general\_tim.c}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00001}00001\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00002}00002\ \textcolor{comment}{\ \ **************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00003}00003\ \textcolor{comment}{\ \ *\ @file\ general\_tim.c}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00004}00004\ \textcolor{comment}{\ \ *\ @brief\ Модуль\ для\ инициализации\ таймеров.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00005}00005\ \textcolor{comment}{\ \ **************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00006}00006\ \textcolor{comment}{\ \ @verbatim}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00007}00007\ \textcolor{comment}{\ \ //-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/Функции-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\///}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00008}00008\ \textcolor{comment}{\ \ Functions:\ user\ init}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00009}00009\ \textcolor{comment}{\ \ \ \ -\/\ TIM\_Base\_Init\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Инициализация\ TIM}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00010}00010\ \textcolor{comment}{\ \ \ \ -\/\ TIM\_Encoder\_Init\ \ \ \ \ \ \ \ \ \ \ \ \ \ Инициализация\ режима\ энкодера}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00011}00011\ \textcolor{comment}{\ \ \ \ -\/\ TIM\_Output\_PWM\_Init\ \ \ \ \ \ \ \ \ \ \ Инициализация\ PWM\ с\ выводом\ на\ GPIO}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00012}00012\ \textcolor{comment}{\ \ \ \ -\/\ TIM\_OC\_Comparator\_Init\ \ \ \ \ \ \ \ Инициализация\ TIM\ как\ компаратора}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00013}00013\ \textcolor{comment}{\ \ \ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00014}00014\ \textcolor{comment}{\ \ Functions:\ user}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00015}00015\ \textcolor{comment}{\ \ \ \ -\/\ TIM\_Delay\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Задержка\ с\ помощью\ TIM}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00016}00016\ \textcolor{comment}{\ \ \ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00017}00017\ \textcolor{comment}{\ \ Functions:\ tim\ initialize}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00018}00018\ \textcolor{comment}{\ \ \ \ -\/\ TIM\_Base\_MspInit\ \ \ \ \ \ \ \ \ \ \ \ \ \ Аналог\ HAL\_MspInit\ для\ таймера}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00019}00019\ \textcolor{comment}{\ \ \ \ -\/\ TIM\_Base\_MspDeInit\ \ \ \ \ \ \ \ \ \ \ \ Аналог\ HAL\_MspDeInit\ для\ таймера}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00020}00020\ \textcolor{comment}{\ \ @endverbatim}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00021}00021\ \textcolor{comment}{\ \ *************************************************************************/}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00022}00022\ \textcolor{preprocessor}{\#include\ "{}general\_tim.h"{}}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00023}00023\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{general__gpio_8h}{general\_gpio.h}}"{}}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00024}00024\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00025}00025\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00026}00026\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/TIM\ INIT\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/\ }\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00027}00027\ \textcolor{comment}{/**\ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00028}00028\ \textcolor{comment}{\ \ *\ @brief\ \ Initialize\ TIM\ with\ TIM\_SettingsTypeDef\ structure.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00029}00029\ \textcolor{comment}{\ \ *\ @param\ \ stim\ -\/\ указатель\ на\ структуру\ с\ настройками\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00030}00030\ \textcolor{comment}{\ \ *\ @return\ HAL\ status.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00031}00031\ \textcolor{comment}{\ \ *\ @note\ \ \ Данная\ структура\ содержит\ хендл\ таймера\ и\ структуры\ для\ его\ настройки.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00032}00032\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00033}00033\ HAL\_StatusTypeDef\ TIM\_Base\_Init(\mbox{\hyperlink{struct_t_i_m___settings_type_def}{TIM\_SettingsTypeDef}}\ *stim)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00034}00034\ \{\ \textcolor{comment}{//\ function\ takes\ structure\ for\ init}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00035}00035\ \ \ \textcolor{comment}{//\ check\ that\ htim\ is\ defined}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00036}00036\ \ \ \textcolor{keywordflow}{if}\ (stim-\/>htim.Instance\ ==\ NULL)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00037}00037\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00038}00038\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00039}00039\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00040}00040\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00041}00041\ \ \ \textcolor{keywordflow}{if}(stim-\/>sTickBaseUS)\ \textcolor{comment}{//\ if\ tickbase\ isnt\ disable}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00042}00042\ \ \ \{\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00043}00043\ \ \ \ \ \textcolor{keywordflow}{if}(stim-\/>sTimAHBFreqMHz\ ==\ NULL)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00044}00044\ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00045}00045\ \ \ \ \ stim-\/>htim.Init.Prescaler\ =\ (stim-\/>sTimAHBFreqMHz*stim-\/>sTickBaseUS)\ -\/\ 1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00046}00046\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00047}00047\ \ \ \ \ \textcolor{keywordflow}{if}\ ((stim-\/>sTimFreqHz\ !=\ NULL))}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00048}00048\ \ \ \ \ \ \ stim-\/>htim.Init.Period\ =\ ((1000000/stim-\/>sTickBaseUS)\ /\ stim-\/>sTimFreqHz)\ -\/\ 1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00049}00049\ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (stim-\/>htim.Init.Period\ ==\ NULL)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00050}00050\ \ \ \ \ \ \ stim-\/>htim.Init.Period\ =\ 0xFFFF;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00051}00051\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00052}00052\ \ \ \ \ \textcolor{keywordflow}{if}(stim-\/>sTickBasePrescaler)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00053}00053\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00054}00054\ \ \ \ \ \ \ stim-\/>htim.Init.Prescaler\ =\ (stim-\/>htim.Init.Prescaler\ +\ 1)/stim-\/>sTickBasePrescaler\ -\/\ 1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00055}00055\ \ \ \ \ \ \ stim-\/>htim.Init.Period\ \ \ \ =\ (stim-\/>htim.Init.Period\ +\ 1)*stim-\/>sTickBasePrescaler\ -\/\ 1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00056}00056\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00057}00057\ \ \ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00058}00058\ \ \ \ \ \ \ stim-\/>sTickBasePrescaler\ =\ 1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00059}00059\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00060}00060\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00061}00061\ \ \ \textcolor{comment}{//\ fix\ overflow\ of\ presc\ and\ period\ if\ need}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00062}00062\ \ \ \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int}\ i\ =\ 0;\ (stim-\/>htim.Init.Prescaler\ >\ 0xFFFF)\ ||\ (stim-\/>htim.Init.Period\ >\ 0xFFFF);\ i++)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00063}00063\ \ \ \{\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00064}00064\ \ \ \ \ \textcolor{keywordflow}{if}\ (i>10)\ \textcolor{comment}{//\ if\ it\ isnt\ fixed\ after\ 10\ itteration\ -\/\ return\ HAL\_ERRPOR}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00065}00065\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00066}00066\ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00067}00067\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00068}00068\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00069}00069\ \ \ \ \ \textcolor{comment}{//\ if\ timbase\ is\ too\ big\ (prescaller\ too\ big\ for\ choosen\ base\ from\ MHZ)}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00070}00070\ \ \ \ \ \textcolor{keywordflow}{if}(stim-\/>htim.Init.Prescaler\ >\ 0xFFFF)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00071}00071\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00072}00072\ \ \ \ \ \ \ \textcolor{comment}{//\ переносим\ часть\ пресскалера\ в\ период}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00073}00073\ \ \ \ \ \ \ stim-\/>htim.Init.Prescaler\ =\ ((stim-\/>htim.Init.Prescaler\ +\ 1)/2)\ -\/\ 1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00074}00074\ \ \ \ \ \ \ stim-\/>htim.Init.Period\ =\ ((stim-\/>htim.Init.Period\ +\ 1)*2)\ -\/\ 1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00075}00075\ \ \ \ \ \ \ \textcolor{comment}{//\ обновляем\ TickBase,\ если\ есть\ куда\ обновлять}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00076}00076\ \ \ \ \ \ \ \textcolor{keywordflow}{if}(stim-\/>sTickBaseUS\ >\ 1)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00077}00077\ \ \ \ \ \ \ \ \ stim-\/>sTickBaseUS\ /=\ 2;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00078}00078\ \ \ \ \ \ \ \textcolor{comment}{//\ обновляем\ sTickBasePrescaler,\ если\ sTickBaseUS\ -\/\ уже\ в\ минимуме}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00079}00079\ \ \ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (stim-\/>sTickBaseUS\ ==\ 1)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00080}00080\ \ \ \ \ \ \ \ \ stim-\/>sTickBasePrescaler\ *=\ 2;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00081}00081\ \ \ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{comment}{//\ if\ TickBase\ =\ 0\ -\/\ return\ error}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00082}00082\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00083}00083\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00084}00084\ \ \ \ \ \textcolor{comment}{//\ if\ freq\ is\ too\ low\ (period\ too\ big\ for\ choosen\ base)}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00085}00085\ \ \ \ \ \textcolor{keywordflow}{if}(stim-\/>htim.Init.Period\ >\ 0xFFFF)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00086}00086\ \ \ \ \ \{\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00087}00087\ \ \ \ \ \ \ \textcolor{comment}{//\ переносим\ часть\ периода\ в\ прескалер}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00088}00088\ \ \ \ \ \ \ stim-\/>htim.Init.Period\ =\ ((stim-\/>htim.Init.Period\ +\ 1)/2)\ -\/\ 1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00089}00089\ \ \ \ \ \ \ stim-\/>htim.Init.Prescaler\ =\ ((stim-\/>htim.Init.Prescaler\ +\ 1)*2)\ -\/\ 1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00090}00090\ \ \ \ \ \ \ \textcolor{comment}{//\ обновляем\ TickBase}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00091}00091\ \ \ \ \ \ \ stim-\/>sTickBaseUS\ *=\ 2;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00092}00092\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00093}00093\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00094}00094\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00095}00095\ \ \ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/TIM\ BASE\ INIT-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00096}00096\ \ \ \textcolor{comment}{//\ tim\ base\ init\ \ \ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00097}00097\ \ \ TIM\_Base\_MspInit(\&stim-\/>htim,\ stim-\/>sTimMode);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00098}00098\ \ \ \textcolor{keywordflow}{if}\ (HAL\_TIM\_Base\_Init(\&stim-\/>htim)\ !=\ HAL\_OK)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00099}00099\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00100}00100\ \ \ \ \ \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{MyLibs\_Error\_Handler}}();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00101}00101\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00102}00102\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00103}00103\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00104}00104\ \ \ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/CLOCK\ SRC\ INIT-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00105}00105\ \ \ \textcolor{comment}{//\ fill\ sClockSourceConfig\ if\ its\ NULL}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00106}00106\ \ \ \textcolor{keywordflow}{if}\ (stim-\/>sClockSourceConfig.ClockSource\ ==\ NULL)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00107}00107\ \ \ \ \ stim-\/>sClockSourceConfig.ClockSource\ =\ TIM\_CLOCKSOURCE\_INTERNAL;\ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00108}00108\ \ \ \textcolor{comment}{//\ clock\ source\ init\ \ \ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00109}00109\ \ \ \textcolor{keywordflow}{if}\ (HAL\_TIM\_ConfigClockSource(\&stim-\/>htim,\ \&stim-\/>sClockSourceConfig)\ !=\ HAL\_OK)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00110}00110\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00111}00111\ \ \ \ \ \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{MyLibs\_Error\_Handler}}();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00112}00112\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00113}00113\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00114}00114\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00115}00115\ \ \ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/SLAVE\ INIT-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/\ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00116}00116\ \ \ \textcolor{comment}{//\ if\ slave\ mode\ enables\ -\/\ config\ it}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00117}00117\ \ \ \textcolor{keywordflow}{if}\ (stim-\/>sSlaveConfig.SlaveMode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00118}00118\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00119}00119\ \ \ \ \ \textcolor{comment}{//\ slave\ mode\ init\ \ \ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00120}00120\ \ \ \ \ \textcolor{keywordflow}{if}\ (HAL\_TIM\_SlaveConfigSynchro(\&stim-\/>htim,\ \&stim-\/>sSlaveConfig)\ !=\ HAL\_OK)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00121}00121\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00122}00122\ \ \ \ \ \ \ \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{MyLibs\_Error\_Handler}}();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00123}00123\ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00124}00124\ \ \ \ \ \}\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00125}00125\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00126}00126\ \ \ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/MASTER\ INIT-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/\ \ \ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00127}00127\ \ \ \textcolor{comment}{//\ master\ mode\ init\ \ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00128}00128\ \ \ \textcolor{keywordflow}{if}\ (HAL\_TIMEx\_MasterConfigSynchronization(\&stim-\/>htim,\ \&stim-\/>sMasterConfig)\ !=\ HAL\_OK)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00129}00129\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00130}00130\ \ \ \ \ \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{MyLibs\_Error\_Handler}}();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00131}00131\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00132}00132\ \ \ \}\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00133}00133\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00134}00134\ \ \ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/BDTR\ INIT-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/\ \ \ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00135}00135\ \ \ \textcolor{keywordflow}{if}\ (HAL\_TIMEx\_ConfigBreakDeadTime(\&stim-\/>htim,\ \&stim-\/>sBreakDeadTimeConfig)\ !=\ HAL\_OK)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00136}00136\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00137}00137\ \ \ \ \ \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{MyLibs\_Error\_Handler}}();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00138}00138\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00139}00139\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00140}00140\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00141}00141\ \ \ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/IT\ CLEAR-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00142}00142\ \ \ \_\_HAL\_TIM\_CLEAR\_IT(\&stim-\/>htim,\ TIM\_IT\_UPDATE);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00143}00143\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00144}00144\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00145}00145\ \ \ \textcolor{comment}{//\ обновляем\ TickBase}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00146}00146\ \textcolor{preprocessor}{\ \ \#ifdef\ UPDATE\_TIM\_PARAMS\_AFTER\_INITIALIZATION}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00147}00147\ \ \ stim-\/>sTickBaseUS\ =\ (stim-\/>htim.Instance-\/>PSC+1)*stim-\/>sTickBasePrescaler/(stim-\/>sTimAHBFreqMHz);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00148}00148\ \ \ \textcolor{keywordflow}{if}(stim-\/>sTickBaseUS\ ==\ 0)\ \ \textcolor{comment}{//\ if\ prescaler\ is\ too\ high}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00149}00149\ \ \ \{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ recalc\ what\ is\ prescaler\ irl}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00150}00150\ \ \ \ \ stim-\/>sTickBaseUS\ =\ 1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00151}00151\ \ \ \ \ stim-\/>sTickBasePrescaler\ =\ stim-\/>sTimAHBFreqMHz/(stim-\/>htim.Instance-\/>PSC+1);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00152}00152\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00153}00153\ \textcolor{preprocessor}{\ \ \#endif}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00154}00154\ \ \ stim-\/>htim.Instance-\/>CNT\ =\ 0;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00155}00155\ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00156}00156\ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00157}00157\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00158}00158\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00159}00159\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00160}00160\ \textcolor{comment}{/**\ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00161}00161\ \textcolor{comment}{\ \ *\ @brief\ \ Initialize\ TIM\ Encoder\ functional.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00162}00162\ \textcolor{comment}{\ \ *\ @param\ \ htim\ \ \ \ \ \ \ \ -\/\ указатель\ на\ хендл\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00163}00163\ \textcolor{comment}{\ \ *\ @param\ \ sConfigOC\ \ \ -\/\ указатель\ на\ настрйоки\ канала\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00164}00164\ \textcolor{comment}{\ \ *\ @param\ \ GPIOx\ \ \ \ \ \ \ -\/\ порт\ для\ приема\ енкодера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00165}00165\ \textcolor{comment}{\ \ *\ @param\ \ GPIO\_PIN1\ \ \ -\/\ первый\ пин\ для\ енкодера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00166}00166\ \textcolor{comment}{\ \ *\ @param\ \ GPIO\_PIN2\ \ \ -\/\ второй\ пин\ для\ енкодера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00167}00167\ \textcolor{comment}{\ \ *\ @param\ \ GPIO\_PIN\_SW\ -\/\ пин\ для\ кнопки\ енкодера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00168}00168\ \textcolor{comment}{\ \ *\ @return\ HAL\ status.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00169}00169\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00170}00170\ HAL\_StatusTypeDef\ TIM\_Encoder\_Init(\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\_EncoderTypeDef}}\ *henc,\ TIM\_HandleTypeDef\ *htim)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00171}00171\ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00172}00172\ \ \ GPIO\_InitTypeDef\ GPIO\_InitStruct\ =\ \{0\};}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00173}00173\ \ \ HAL\_StatusTypeDef\ RES\ =\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00174}00174\ \ \ henc-\/>htim\ =\ htim;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00175}00175\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00176}00176\ \ \ \textcolor{comment}{//\ setup\ channel\ for\ pwm}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00177}00177\ \ \ RES\ =\ HAL\_TIM\_Encoder\_Init(henc-\/>htim,\ \&henc-\/>sConfig);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00178}00178\ \ \ \textcolor{keywordflow}{if}\ (RES\ !=\ HAL\_OK)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00179}00179\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00180}00180\ \ \ \ \ \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{MyLibs\_Error\_Handler}}();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00181}00181\ \ \ \ \ \textcolor{keywordflow}{return}\ RES;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00182}00182\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00183}00183\ \ \ \textcolor{comment}{//\ choose\ port\ for\ enable\ clock}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00184}00184\ \ \ RES\ =\ \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(henc-\/>GPIOx);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00185}00185\ \ \ \textcolor{keywordflow}{if}(RES\ !=\ HAL\_OK)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00186}00186\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00187}00187\ \ \ \ \ \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{MyLibs\_Error\_Handler}}();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00188}00188\ \ \ \ \ \textcolor{keywordflow}{return}\ RES;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00189}00189\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00190}00190\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00191}00191\ \ \ GPIO\_InitStruct.Pin\ =\ henc-\/>GPIO\_PIN\_TI1|henc-\/>GPIO\_PIN\_TI2;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00192}00192\ \ \ GPIO\_InitStruct.Mode\ =\ GPIO\_MODE\_AF\_PP;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00193}00193\ \ \ GPIO\_InitStruct.Pull\ =\ GPIO\_PULLUP;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00194}00194\ \ \ GPIO\_InitStruct.Speed\ =\ GPIO\_SPEED\_FREQ\_LOW;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00195}00195\ \ \ GPIO\_InitStruct.Alternate\ =\ \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga34242874b455a72aa6e25841678ed105}{TIM\_Alternate\_Mapping}}(henc-\/>htim-\/>Instance);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00196}00196\ \ \ \textcolor{keywordflow}{if}(GPIO\_InitStruct.Alternate)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00197}00197\ \ \ \ \ HAL\_GPIO\_Init(henc-\/>GPIOx,\ \&GPIO\_InitStruct);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00198}00198\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00199}00199\ \ \ \textcolor{keywordflow}{if}(henc-\/>GPIO\_PIN\_SW)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00200}00200\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00201}00201\ \ \ \ \ \textcolor{comment}{/*Configure\ switch\ pin\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00202}00202\ \ \ \ \ GPIO\_InitStruct.Pin\ =\ henc-\/>GPIO\_PIN\_SW;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00203}00203\ \ \ \ \ GPIO\_InitStruct.Mode\ =\ GPIO\_MODE\_INPUT;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00204}00204\ \ \ \ \ GPIO\_InitStruct.Pull\ =\ GPIO\_PULLUP;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00205}00205\ \ \ \ \ HAL\_GPIO\_Init(GPIOA,\ \&GPIO\_InitStruct);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00206}00206\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00207}00207\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00208}00208\ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00209}00209\ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00210}00210\ \ \ \ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00211}00211\ \textcolor{comment}{/**\ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00212}00212\ \textcolor{comment}{\ \ *\ @brief\ \ Initialize\ PWM\ Channel\ and\ GPIO\ for\ output.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00213}00213\ \textcolor{comment}{\ \ *\ @param\ \ htim\ \ \ \ \ \ \ \ -\/\ указатель\ на\ хендл\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00214}00214\ \textcolor{comment}{\ \ *\ @param\ \ sConfigOC\ \ \ -\/\ указатель\ на\ настрйоки\ канала\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00215}00215\ \textcolor{comment}{\ \ *\ @param\ \ TIM\_CHANNEL\ -\/\ канал\ таймера\ для\ настройки.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00216}00216\ \textcolor{comment}{\ \ *\ @param\ \ GPIOx\ \ \ \ \ \ \ -\/\ порт\ для\ вывода\ ШИМ.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00217}00217\ \textcolor{comment}{\ \ *\ @param\ \ GPIO\_PIN\ \ \ \ -\/\ пин\ для\ вывода\ ШИМ.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00218}00218\ \textcolor{comment}{\ \ *\ @return\ HAL\ status.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00219}00219\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00220}00220\ HAL\_StatusTypeDef\ TIM\_Output\_PWM\_Init(TIM\_HandleTypeDef\ *htim,\ TIM\_OC\_InitTypeDef\ *sConfigOC,\ uint32\_t\ TIM\_CHANNEL,\ GPIO\_TypeDef\ *GPIOx,\ uint32\_t\ GPIO\_PIN)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00221}00221\ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00222}00222\ \ \ GPIO\_InitTypeDef\ GPIO\_InitStruct\ =\ \{0\};}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00223}00223\ \ \ HAL\_StatusTypeDef\ RES\ =\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00224}00224\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00225}00225\ \ \ \textcolor{comment}{//\ setup\ channel\ for\ pwm}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00226}00226\ \ \ RES\ =\ HAL\_TIM\_PWM\_ConfigChannel(htim,\ sConfigOC,\ TIM\_CHANNEL);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00227}00227\ \ \ \textcolor{keywordflow}{if}\ (RES\ !=\ HAL\_OK)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00228}00228\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00229}00229\ \ \ \ \ \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{MyLibs\_Error\_Handler}}();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00230}00230\ \ \ \ \ \textcolor{keywordflow}{return}\ RES;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00231}00231\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00232}00232\ \ \ \textcolor{comment}{//\ choose\ port\ for\ enable\ clock}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00233}00233\ \ \ RES\ =\ \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(GPIOx);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00234}00234\ \ \ \textcolor{keywordflow}{if}(RES\ !=\ HAL\_OK)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00235}00235\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00236}00236\ \ \ \ \ \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{MyLibs\_Error\_Handler}}();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00237}00237\ \ \ \ \ \textcolor{keywordflow}{return}\ RES;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00238}00238\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00239}00239\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00240}00240\ \ \ GPIO\_InitStruct.Pin\ =\ GPIO\_PIN;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00241}00241\ \ \ GPIO\_InitStruct.Mode\ =\ GPIO\_MODE\_AF\_PP;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00242}00242\ \ \ \textcolor{keywordflow}{if}(sConfigOC-\/>OCPolarity\ ==\ TIM\_OCNPOLARITY\_HIGH)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00243}00243\ \ \ \ \ GPIO\_InitStruct.Pull\ =\ GPIO\_PULLDOWN;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00244}00244\ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00245}00245\ \ \ \ \ GPIO\_InitStruct.Pull\ =\ GPIO\_PULLUP;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00246}00246\ \ \ GPIO\_InitStruct.Speed\ =\ GPIO\_SPEED\_FREQ\_LOW;\ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00247}00247\ \ \ GPIO\_InitStruct.Alternate\ =\ \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga34242874b455a72aa6e25841678ed105}{TIM\_Alternate\_Mapping}}(htim-\/>Instance);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00248}00248\ \ \ \textcolor{keywordflow}{if}(GPIO\_InitStruct.Alternate)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00249}00249\ \ \ \ \ HAL\_GPIO\_Init(GPIOx,\ \&GPIO\_InitStruct);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00250}00250\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00251}00251\ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00252}00252\ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00253}00253\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00254}00254\ \textcolor{comment}{/**\ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00255}00255\ \textcolor{comment}{\ \ *\ @brief\ \ Initialize\ OC\ Comparator.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00256}00256\ \textcolor{comment}{\ \ *\ @param\ \ htim\ \ \ \ \ \ \ \ -\/\ указатель\ на\ хендл\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00257}00257\ \textcolor{comment}{\ \ *\ @param\ \ TIM\_CHANNEL\ -\/\ канал\ таймера\ для\ настройки.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00258}00258\ \textcolor{comment}{\ \ *\ @return\ HAL\ status.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00259}00259\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00260}00260\ HAL\_StatusTypeDef\ TIM\_OC\_Comparator\_Init(TIM\_HandleTypeDef\ *htim,\ uint32\_t\ TIM\_CHANNEL)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00261}00261\ \{\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00262}00262\ \ \ TIM\_OC\_InitTypeDef\ \ \ \ \ \ sConfigOC\ =\ \{0\};}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00263}00263\ \ \ HAL\_StatusTypeDef\ RES\ =\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00264}00264\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00265}00265\ \ \ sConfigOC.OCMode\ =\ TIM\_OCMODE\_ACTIVE;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00266}00266\ \ \ sConfigOC.Pulse\ =\ 0;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00267}00267\ \ \ sConfigOC.OCPolarity\ =\ TIM\_OCPOLARITY\_HIGH;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00268}00268\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00269}00269\ \ \ RES\ =\ HAL\_TIM\_OC\_ConfigChannel(htim,\ \&sConfigOC,\ TIM\_CHANNEL);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00270}00270\ \ \ \textcolor{keywordflow}{if}\ (RES\ !=\ HAL\_OK)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00271}00271\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00272}00272\ \ \ \ \ \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{MyLibs\_Error\_Handler}}();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00273}00273\ \ \ \ \ \textcolor{keywordflow}{return}\ RES;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00274}00274\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00275}00275\ \ \ \textcolor{keywordflow}{return}\ RES;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00276}00276\ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00277}00277\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00278}00278\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00279}00279\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00280}00280\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00281}00281\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/TIM\ USER\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/\ }\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00282}00282\ \textcolor{comment}{/**\ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00283}00283\ \textcolor{comment}{\ \ *\ @brief\ \ Delay\ via\ TIM.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00284}00284\ \textcolor{comment}{\ \ *\ @param\ \ htim\ \ \ \ -\/\ указатель\ на\ хендл\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00285}00285\ \textcolor{comment}{\ \ *\ @param\ \ delay\ \ \ -\/\ задержка\ в\ тиках\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00286}00286\ \textcolor{comment}{\ \ *\ @return\ HAL\ status.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00287}00287\ \textcolor{comment}{\ \ *\ @note\ \ \ Таймер\ должен\ быть\ уже\ запущен.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00288}00288\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00289}00289\ HAL\_StatusTypeDef\ TIM\_Delay(TIM\_HandleTypeDef\ *htim,\ uint16\_t\ delay)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00290}00290\ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00291}00291\ \ \ \textcolor{keywordflow}{if}(delay\ >=\ htim-\/>Instance-\/>ARR)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00292}00292\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00293}00293\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00294}00294\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00295}00295\ \ \ htim-\/>Instance-\/>CNT\ =\ 0;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00296}00296\ \ \ \textcolor{keywordflow}{while}(1)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00297}00297\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00298}00298\ \ \ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance-\/>CNT\ >\ delay)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00299}00299\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00300}00300\ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00301}00301\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00302}00302\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00303}00303\ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00304}00304\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00305}00305\ \textcolor{comment}{/**\ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00306}00306\ \textcolor{comment}{\ \ *\ @brief\ \ Start\ delay\ via\ TIM.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00307}00307\ \textcolor{comment}{\ \ *\ @param\ \ htim\ \ \ \ -\/\ указатель\ на\ хендл\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00308}00308\ \textcolor{comment}{\ \ *\ @return\ HAL\ status.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00309}00309\ \textcolor{comment}{\ \ *\ @note\ \ \ Таймер\ должен\ быть\ уже\ запущен.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00310}00310\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00311}00311\ HAL\_StatusTypeDef\ TIM\_Delay\_Start(TIM\_HandleTypeDef\ *htim)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00312}00312\ \{\ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00313}00313\ \ \ htim-\/>Instance-\/>CNT\ =\ 0;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00314}00314\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00315}00315\ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00316}00316\ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00317}00317\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00318}00318\ \textcolor{comment}{/**\ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00319}00319\ \textcolor{comment}{\ \ *\ @brief\ \ Wait\ Delay\ via\ TIM\ without\ blocking\ app.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00320}00320\ \textcolor{comment}{\ \ *\ @param\ \ htim\ \ \ \ -\/\ указатель\ на\ хендл\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00321}00321\ \textcolor{comment}{\ \ *\ @param\ \ delay\ \ \ -\/\ задержка\ в\ тиках\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00322}00322\ \textcolor{comment}{\ \ *\ @return\ HAL\ status.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00323}00323\ \textcolor{comment}{\ \ *\ @note\ \ \ Перед\ ожиданием\ задержки\ надо\ запутстить\ таймер\ её\ @ref\ TIM\_Delay\_Start}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00324}00324\ \textcolor{comment}{\ \ *\ @note\ \ \ Таймер\ не\ должен\ использоваться\ на\ время\ этой\ задержки}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00325}00325\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00326}00326\ HAL\_StatusTypeDef\ TIM\_Delay\_NonBlocking(TIM\_HandleTypeDef\ *htim,\ uint16\_t\ delay)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00327}00327\ \{\ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00328}00328\ \ \ \textcolor{keywordflow}{if}(delay\ >=\ htim-\/>Instance-\/>ARR)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00329}00329\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00330}00330\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00331}00331\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00332}00332\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00333}00333\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance-\/>CNT\ <=\ delay)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00334}00334\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00335}00335\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_BUSY;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00336}00336\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00337}00337\ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00338}00338\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00339}00339\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00340}00340\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00341}00341\ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00342}00342\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00343}00343\ \textcolor{comment}{/**\ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00344}00344\ \textcolor{comment}{\ \ *\ @brief\ \ Initialize\ TIMs\ clock\ and\ interrupt.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00345}00345\ \textcolor{comment}{\ \ *\ @param\ \ htim\ -\/\ указатель\ на\ хендл\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00346}00346\ \textcolor{comment}{\ \ *\ @note\ \ \ Чтобы\ не\ генерировать\ функцию\ с\ иницилизацией\ неиспользуемых\ таймеров,}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00347}00347\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ дефайнами\ в\ general\_tim.h\ определяются\ используемые\ таймеры.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00348}00348\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00349}00349\ \textcolor{keywordtype}{void}\ TIM\_Base\_MspInit(TIM\_HandleTypeDef*\ htim,\ TIM\_ITModeTypeDef\ it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00350}00350\ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00351}00351\ \ \ it\_mode\ =\ it\_mode\&TIM\_IT\_CONF;}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00352}00352\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM1}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00353}00353\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM1)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00354}00354\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00355}00355\ \ \ \ \ \textcolor{comment}{/*\ TIM2\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00356}00356\ \ \ \ \ \_\_HAL\_RCC\_TIM1\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00357}00357\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00358}00358\ \ \ \ \ \textcolor{comment}{/*\ TIM2\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00359}00359\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00360}00360\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00361}00361\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM1\_UP\_TIM10\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00362}00362\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM1\_UP\_TIM10\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00363}00363\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00364}00364\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00365}00365\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00366}00366\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM2}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00367}00367\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM2)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00368}00368\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00369}00369\ \ \ \ \ \textcolor{comment}{/*\ TIM2\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00370}00370\ \ \ \ \ \_\_HAL\_RCC\_TIM2\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00371}00371\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00372}00372\ \ \ \ \ \textcolor{comment}{/*\ TIM2\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00373}00373\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00374}00374\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00375}00375\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM2\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00376}00376\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM2\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00377}00377\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00378}00378\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00379}00379\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00380}00380\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM3}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00381}00381\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM3)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00382}00382\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00383}00383\ \ \ \ \ \textcolor{comment}{/*\ TIM3\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00384}00384\ \ \ \ \ \_\_HAL\_RCC\_TIM3\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00385}00385\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00386}00386\ \ \ \ \ \textcolor{comment}{/*\ TIM3\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00387}00387\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00388}00388\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00389}00389\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM3\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00390}00390\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM3\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00391}00391\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00392}00392\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00393}00393\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00394}00394\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM4}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00395}00395\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM4)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00396}00396\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00397}00397\ \ \ \ \ \textcolor{comment}{/*\ TIM4\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00398}00398\ \ \ \ \ \_\_HAL\_RCC\_TIM4\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00399}00399\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00400}00400\ \ \ \ \ \textcolor{comment}{/*\ TIM4\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00401}00401\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00402}00402\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00403}00403\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM4\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00404}00404\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM4\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00405}00405\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00406}00406\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00407}00407\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00408}00408\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM5}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00409}00409\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM5)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00410}00410\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00411}00411\ \ \ \ \ \textcolor{comment}{/*\ TIM5\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00412}00412\ \ \ \ \ \_\_HAL\_RCC\_TIM5\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00413}00413\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00414}00414\ \ \ \ \ \textcolor{comment}{/*\ TIM5\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00415}00415\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00416}00416\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00417}00417\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM5\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00418}00418\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM5\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00419}00419\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00420}00420\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00421}00421\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00422}00422\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM6}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00423}00423\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM6)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00424}00424\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00425}00425\ \ \ \ \ \textcolor{comment}{/*\ TIM6\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00426}00426\ \ \ \ \ \_\_HAL\_RCC\_TIM6\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00427}00427\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00428}00428\ \ \ \ \ \textcolor{comment}{/*\ TIM6\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00429}00429\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00430}00430\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00431}00431\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM6\_DAC\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00432}00432\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM6\_DAC\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00433}00433\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00434}00434\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00435}00435\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00436}00436\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM7}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00437}00437\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM7)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00438}00438\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00439}00439\ \ \ \ \ \textcolor{comment}{/*\ TIM7\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00440}00440\ \ \ \ \ \_\_HAL\_RCC\_TIM7\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00441}00441\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00442}00442\ \ \ \ \ \textcolor{comment}{/*\ TIM7\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00443}00443\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00444}00444\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00445}00445\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM7\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00446}00446\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM7\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00447}00447\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00448}00448\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00449}00449\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00450}00450\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM8}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00451}00451\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM8)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00452}00452\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00453}00453\ \ \ \ \ \textcolor{comment}{/*\ TIM8\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00454}00454\ \ \ \ \ \_\_HAL\_RCC\_TIM8\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00455}00455\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00456}00456\ \ \ \ \ \textcolor{comment}{/*\ TIM8\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00457}00457\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00458}00458\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00459}00459\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM8\_UP\_TIM13\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00460}00460\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM8\_UP\_TIM13\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00461}00461\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00462}00462\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00463}00463\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00464}00464\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM9}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00465}00465\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM9)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00466}00466\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00467}00467\ \ \ \ \ \textcolor{comment}{/*\ TIM9\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00468}00468\ \ \ \ \ \_\_HAL\_RCC\_TIM9\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00469}00469\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00470}00470\ \ \ \ \ \textcolor{comment}{/*\ TIM9\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00471}00471\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00472}00472\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00473}00473\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM1\_BRK\_TIM9\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00474}00474\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM1\_BRK\_TIM9\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00475}00475\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00476}00476\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00477}00477\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00478}00478\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM10}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00479}00479\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM10)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00480}00480\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00481}00481\ \ \ \ \ \textcolor{comment}{/*\ TIM10\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00482}00482\ \ \ \ \ \_\_HAL\_RCC\_TIM10\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00483}00483\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00484}00484\ \ \ \ \ \textcolor{comment}{/*\ TIM10\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00485}00485\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00486}00486\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00487}00487\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM1\_UP\_TIM10\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00488}00488\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM1\_UP\_TIM10\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00489}00489\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00490}00490\ \ \ \}\ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00491}00491\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00492}00492\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM11}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00493}00493\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM11)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00494}00494\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00495}00495\ \ \ \ \ \textcolor{comment}{/*\ TIM11\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00496}00496\ \ \ \ \ \_\_HAL\_RCC\_TIM11\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00497}00497\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00498}00498\ \ \ \ \ \textcolor{comment}{/*\ TIM11\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00499}00499\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00500}00500\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00501}00501\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM1\_TRG\_COM\_TIM11\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00502}00502\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM1\_TRG\_COM\_TIM11\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00503}00503\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00504}00504\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00505}00505\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00506}00506\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM12}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00507}00507\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM12)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00508}00508\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00509}00509\ \ \ \ \ \textcolor{comment}{/*\ TIM12\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00510}00510\ \ \ \ \ \_\_HAL\_RCC\_TIM12\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00511}00511\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00512}00512\ \ \ \ \ \textcolor{comment}{/*\ TIM12\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00513}00513\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00514}00514\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00515}00515\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM8\_BRK\_TIM12\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00516}00516\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM8\_BRK\_TIM12\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00517}00517\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00518}00518\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00519}00519\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00520}00520\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM13}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00521}00521\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM13)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00522}00522\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00523}00523\ \ \ \ \ \textcolor{comment}{/*\ TIM13\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00524}00524\ \ \ \ \ \_\_HAL\_RCC\_TIM13\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00525}00525\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00526}00526\ \ \ \ \ \textcolor{comment}{/*\ TIM13\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00527}00527\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00528}00528\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00529}00529\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM8\_UP\_TIM13\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00530}00530\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM8\_UP\_TIM13\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00531}00531\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00532}00532\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00533}00533\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00534}00534\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM14}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00535}00535\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM14)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00536}00536\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00537}00537\ \ \ \ \ \textcolor{comment}{/*\ TIM14\ clock\ enable\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00538}00538\ \ \ \ \ \_\_HAL\_RCC\_TIM14\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00539}00539\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00540}00540\ \ \ \ \ \textcolor{comment}{/*\ TIM14\ interrupt\ Init\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00541}00541\ \ \ \textcolor{keywordflow}{if}(it\_mode)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00542}00542\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00543}00543\ \ \ \ \ HAL\_NVIC\_SetPriority(TIM8\_TRG\_COM\_TIM14\_IRQn,\ 0,\ 0);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00544}00544\ \ \ \ \ HAL\_NVIC\_EnableIRQ(TIM8\_TRG\_COM\_TIM14\_IRQn);}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00545}00545\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00546}00546\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00547}00547\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00548}00548\ \}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00549}00549\ \textcolor{comment}{/**\ \ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00550}00550\ \textcolor{comment}{\ \ *\ @brief\ \ DeInitialize\ TIMs\ clock\ and\ interrupt.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00551}00551\ \textcolor{comment}{\ \ *\ @param\ \ htim\ -\/\ указатель\ на\ хендл\ таймера.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00552}00552\ \textcolor{comment}{\ \ *\ @note\ \ \ Чтобы\ не\ генерировать\ функцию\ с\ деиницилизацией\ неиспользуемых\ таймеров,}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00553}00553\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ дефайнами\ в\ general\_tim.h\ определяются\ используемые\ таймеры.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00554}00554\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00555}00555\ \textcolor{keywordtype}{void}\ TIM\_Base\_MspDeInit(TIM\_HandleTypeDef*\ htim)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00556}00556\ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00557}00557\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM1}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00558}00558\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM1)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00559}00559\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00560}00560\ \ \ \ \ \_\_HAL\_RCC\_TIM1\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00561}00561\ \ \ \ \ \_\_HAL\_RCC\_TIM1\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00562}00562\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00563}00563\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00564}00564\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM2}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00565}00565\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM2)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00566}00566\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00567}00567\ \ \ \ \ \_\_HAL\_RCC\_TIM2\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00568}00568\ \ \ \ \ \_\_HAL\_RCC\_TIM2\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00569}00569\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00570}00570\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00571}00571\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM3}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00572}00572\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM3)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00573}00573\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00574}00574\ \ \ \ \ \_\_HAL\_RCC\_TIM3\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00575}00575\ \ \ \ \ \_\_HAL\_RCC\_TIM3\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00576}00576\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00577}00577\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00578}00578\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM4}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00579}00579\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM4)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00580}00580\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00581}00581\ \ \ \ \ \_\_HAL\_RCC\_TIM4\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00582}00582\ \ \ \ \ \_\_HAL\_RCC\_TIM4\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00583}00583\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00584}00584\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00585}00585\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM5}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00586}00586\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM5)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00587}00587\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00588}00588\ \ \ \ \ \_\_HAL\_RCC\_TIM5\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00589}00589\ \ \ \ \ \_\_HAL\_RCC\_TIM5\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00590}00590\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00591}00591\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00592}00592\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM6}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00593}00593\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM6)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00594}00594\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00595}00595\ \ \ \ \ \_\_HAL\_RCC\_TIM6\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00596}00596\ \ \ \ \ \_\_HAL\_RCC\_TIM6\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00597}00597\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00598}00598\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00599}00599\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM7}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00600}00600\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM7)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00601}00601\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00602}00602\ \ \ \ \ \_\_HAL\_RCC\_TIM7\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00603}00603\ \ \ \ \ \_\_HAL\_RCC\_TIM7\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00604}00604\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00605}00605\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00606}00606\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM8}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00607}00607\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM8)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00608}00608\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00609}00609\ \ \ \ \ \_\_HAL\_RCC\_TIM8\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00610}00610\ \ \ \ \ \_\_HAL\_RCC\_TIM8\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00611}00611\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00612}00612\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00613}00613\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM9}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00614}00614\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM9)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00615}00615\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00616}00616\ \ \ \ \ \_\_HAL\_RCC\_TIM9\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00617}00617\ \ \ \ \ \_\_HAL\_RCC\_TIM9\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00618}00618\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00619}00619\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00620}00620\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM10}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00621}00621\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM10)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00622}00622\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00623}00623\ \ \ \ \ \_\_HAL\_RCC\_TIM10\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00624}00624\ \ \ \ \ \_\_HAL\_RCC\_TIM10\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00625}00625\ \ \ \}\ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00626}00626\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00627}00627\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM11}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00628}00628\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM11)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00629}00629\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00630}00630\ \ \ \ \ \_\_HAL\_RCC\_TIM11\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00631}00631\ \ \ \ \ \_\_HAL\_RCC\_TIM11\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00632}00632\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00633}00633\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00634}00634\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM12}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00635}00635\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM12)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00636}00636\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00637}00637\ \ \ \ \ \_\_HAL\_RCC\_TIM12\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00638}00638\ \ \ \ \ \_\_HAL\_RCC\_TIM12\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00639}00639\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00640}00640\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00641}00641\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM13}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00642}00642\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM13)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00643}00643\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00644}00644\ \ \ \ \ \_\_HAL\_RCC\_TIM13\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00645}00645\ \ \ \ \ \_\_HAL\_RCC\_TIM13\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00646}00646\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00647}00647\ \textcolor{preprocessor}{\#endif\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00648}00648\ \textcolor{preprocessor}{\#ifdef\ USE\_TIM14}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00649}00649\ \ \ \textcolor{keywordflow}{if}(htim-\/>Instance==TIM14)}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00650}00650\ \ \ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00651}00651\ \ \ \ \ \_\_HAL\_RCC\_TIM14\_FORCE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00652}00652\ \ \ \ \ \_\_HAL\_RCC\_TIM14\_RELEASE\_RESET();}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00653}00653\ \ \ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00654}00654\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00655}00655\ \}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00656}00656\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/TIM\ INIT\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{____general__tim_8c_source_l00657}00657\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\end{DoxyCode}

View File

@@ -1,136 +0,0 @@
\doxysection{\+\_\+\+\_\+general\+\_\+tim.\+h}
\hypertarget{____general__tim_8h_source}{}\label{____general__tim_8h_source}\index{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/\_\_general\_tim.h@{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/\_\_general\_tim.h}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00001}00001\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00002}00002\ \textcolor{comment}{\ \ **************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00003}00003\ \textcolor{comment}{\ \ *\ @file\ general\_tim.h}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00004}00004\ \textcolor{comment}{\ \ *\ @brief\ Заголовочный\ файл\ для\ базовой\ работы\ с\ таймерами.}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00005}00005\ \textcolor{comment}{\ \ *************************************************************************/}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00006}00006\ \textcolor{preprocessor}{\#ifndef\ \_\_TIM\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00007}00007\ \textcolor{preprocessor}{\#define\ \_\_TIM\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00008}00008\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00009}00009\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00010}00010\ \textcolor{comment}{/////////////////////////-\/-\/-\/USER\ SETTINGS-\/-\/-\//////////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00011}00011\ \textcolor{preprocessor}{\#define\ HAL\_TIM\_MODULE\_ENABLED\ }\textcolor{comment}{//\ need\ to\ uncomment\ this\ define\ in\ stm32f4xx\_hal\_conf.h}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00012}00012\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00013}00013\ \textcolor{preprocessor}{\#define\ USE\_TIM1}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00014}00014\ \textcolor{preprocessor}{\#define\ USE\_TIM2}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00015}00015\ \textcolor{preprocessor}{\#define\ USE\_TIM3}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00016}00016\ \textcolor{preprocessor}{\#define\ USE\_TIM4}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00017}00017\ \textcolor{preprocessor}{\#define\ USE\_TIM5}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00018}00018\ \textcolor{preprocessor}{\#define\ USE\_TIM6}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00019}00019\ \textcolor{preprocessor}{\#define\ USE\_TIM7}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00020}00020\ \textcolor{preprocessor}{\#define\ USE\_TIM8}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00021}00021\ \textcolor{preprocessor}{\#define\ USE\_TIM9}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00022}00022\ \textcolor{preprocessor}{\#define\ USE\_TIM10}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00023}00023\ \textcolor{preprocessor}{\#define\ USE\_TIM11}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00024}00024\ \textcolor{preprocessor}{\#define\ USE\_TIM12}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00025}00025\ \textcolor{preprocessor}{\#define\ USE\_TIM13}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00026}00026\ \textcolor{preprocessor}{\#define\ USE\_TIM14}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00027}00027\ \textcolor{comment}{/*\ note:\ used\ uart\ defines\ in\ modbus.h\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00028}00028\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00029}00029\ \textcolor{comment}{/////////////////////////-\/-\/-\/USER\ SETTINGS-\/-\/-\//////////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00030}00030\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{mylibs__defs_8h}{mylibs\_defs.h}}"{}}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00031}00031\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00032}00032\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00033}00033\ \textcolor{comment}{////////////////////////////-\/-\/-\/DEFINES-\/-\/-\/////////////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00034}00034\ \textcolor{preprocessor}{\#define\ TIM\_IT\_CONF\_Pos\ \ \ \ \ \ \ \ \ \ \ 0}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00035}00035\ \textcolor{comment}{//\#define\ TIM\_PWM\_CONF\_Pos\ \ \ \ \ \ \ \ \ \ 1}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00036}00036\ \textcolor{comment}{//\#define\ TIM\_CLCK\_SRC\_CONF\_Pos\ \ \ \ \ 2}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00037}00037\ \textcolor{comment}{//\#define\ TIM\_SLAVE\_CONF\_Pos\ \ \ \ \ \ \ \ 3}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00038}00038\ \textcolor{comment}{//\#define\ TIM\_MASTER\_CONF\_Pos\ \ \ \ \ \ \ 4}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00039}00039\ \textcolor{comment}{//\#define\ TIM\_BDTR\_CONF\_Pos\ \ \ \ \ \ \ \ \ 5}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00040}00040\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00041}00041\ \textcolor{preprocessor}{\#define\ TIM\_IT\_CONF\ \ \ (1<<(TIM\_IT\_CONF\_Pos))}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00042}00042\ \textcolor{comment}{//\#define\ TIM\_PWM\_CONF\ \ \ \ \ \ (1<<(TIM\_PWM\_Pos))}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00043}00043\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00044}00044\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00045}00045\ \textcolor{preprocessor}{\#define\ TIM\_Alternate\_Mapping(INSTANCE)\ \ \ \ \ \ \ \ ((((INSTANCE)\ ==\ TIM1)\ ||\ ((INSTANCE)\ ==\ TIM2))?\ GPIO\_AF1\_TIM1:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00046}00046\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((INSTANCE)\ ==\ TIM3)\ ||\ ((INSTANCE)\ ==\ TIM4)\ ||\ ((INSTANCE)\ ==\ TIM5))?\ GPIO\_AF2\_TIM3:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00047}00047\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((INSTANCE)\ ==\ TIM8)\ ||\ ((INSTANCE)\ ==\ TIM9)\ ||\ ((INSTANCE)\ ==\ TIM10)\ ||\ ((INSTANCE)\ ==\ TIM11))?\ GPIO\_AF3\_TIM8:\ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00048}00048\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((INSTANCE)\ ==\ TIM12)\ ||\ ((INSTANCE)\ ==\ TIM13)\ ||\ ((INSTANCE)\ ==\ TIM14))?\ GPIO\_AF9\_TIM12:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00049}00049\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (0))}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00050}00050\ \textcolor{comment}{////////////////////////////-\/-\/-\/DEFINES-\/-\/-\/////////////////////////////]}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00051}00051\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00052}00052\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00053}00053\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00054}00054\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00055}00055\ \textcolor{comment}{///////////////////////-\/-\/-\/STRUCTURES\ \&\ ENUMS-\/-\/-\///////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00056}00056\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00057}00057\ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00058}00058\ \ \ TIM\_DEFAULT\ =\ \ \ \ \ \ \ \ \ 0,}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00059}00059\ \ \ TIM\_IT\_MODE\ =\ \ \ \ \ \ \ \ \ TIM\_IT\_CONF,}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00060}00060\ \textcolor{comment}{//\ \ TIM\_PWM\_MODE\ =\ \ \ \ \ \ \ \ TIM\_PWM\_ENABLE,}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00061}00061\ \textcolor{comment}{//\ \ TIM\_PWM\_IT\_MODE\ =\ \ \ \ \ TIM\_PWM\_ENABLE\ |\ TIM\_IT\_CONF,}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00062}00062\ \}TIM\_ITModeTypeDef;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00063}00063\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00064}00064\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00065}00065\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00066}00066\ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00067}00067\ \ \ TIM\_Base\_Disable\ =\ \ \ \ \ \ 0,}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00068}00068\ \ \ TIM\_TickBase\_1US\ =\ \ \ \ \ \ 1,}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00069}00069\ \ \ TIM\_TickBase\_10US\ =\ \ \ \ \ 10,}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00070}00070\ \ \ TIM\_TickBase\_100US\ =\ \ \ \ 100,}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00071}00071\ \ \ TIM\_TickBase\_1MS\ =\ \ \ \ \ \ 1000,}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00072}00072\ \ \ TIM\_TickBase\_10MS\ =\ \ \ \ \ 10000,}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00073}00073\ \ \ TIM\_TickBase\_100MS\ =\ \ \ \ 100000,}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00074}00074\ \}TIM\_MHzTickBaseTypeDef;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00075}00075\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00076}\mbox{\hyperlink{struct_t_i_m___settings_type_def}{00076}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct\ }\textcolor{comment}{//\ struct\ with\ settings\ for\ custom\ function}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00077}00077\ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00078}00078\ \ \ TIM\_HandleTypeDef\ \ \ \ \ \ \ htim;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00079}00079\ \ \ TIM\_ClockConfigTypeDef\ \ sClockSourceConfig;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00080}00080\ \ \ TIM\_SlaveConfigTypeDef\ \ sSlaveConfig;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00081}00081\ \ \ TIM\_MasterConfigTypeDef\ sMasterConfig;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00082}00082\ \ \ TIM\_BreakDeadTimeConfigTypeDef\ sBreakDeadTimeConfig;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00083}00083\ \ \ TIM\_ITModeTypeDef\ \ \ \ \ \ \ sTimMode;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00084}00084\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00085}00085\ \ \ TIM\_MHzTickBaseTypeDef\ \ sTickBaseUS;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00086}00086\ \ \ uint8\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ sTickBasePrescaler;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00087}00087\ \ \ \textcolor{keywordtype}{float}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ sTimAHBFreqMHz;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00088}00088\ \ \ \textcolor{keywordtype}{float}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ sTimFreqHz;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00089}00089\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00090}00090\ \}\mbox{\hyperlink{struct_t_i_m___settings_type_def}{TIM\_SettingsTypeDef}};}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00091}00091\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00092}00092\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00093}\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{00093}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct\ }\textcolor{comment}{//\ struct\ with\ variables\ for\ encoder}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00094}00094\ \{}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00095}00095\ \ \ int16\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Encoder\_Diff;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00096}00096\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00097}00097\ \ \ TIM\_HandleTypeDef\ \ \ \ \ \ \ *htim;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00098}00098\ \ \ TIM\_Encoder\_InitTypeDef\ sConfig;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00099}00099\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00100}00100\ \ \ GPIO\_TypeDef\ \ \ \ \ \ \ \ \ \ \ \ *GPIOx;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00101}00101\ \ \ uint32\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ GPIO\_PIN\_TI1;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00102}00102\ \ \ uint32\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ GPIO\_PIN\_TI2;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00103}00103\ \ \ uint32\_t\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ GPIO\_PIN\_SW;}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00104}00104\ \}\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\_EncoderTypeDef}};\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00105}00105\ \textcolor{comment}{///////////////////////-\/-\/-\/STRUCTURES\ \&\ ENUMS-\/-\/-\///////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00106}00106\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00107}00107\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00108}00108\ \textcolor{comment}{///////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\////////////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00109}00109\ \textcolor{comment}{/*\ Initialize\ TIM\ with\ TIM\_SettingsTypeDef\ structure\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00110}00110\ HAL\_StatusTypeDef\ TIM\_Base\_Init(\mbox{\hyperlink{struct_t_i_m___settings_type_def}{TIM\_SettingsTypeDef}}*\ stim);}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00111}00111\ \textcolor{comment}{/*\ Initialize\ PWM\ Channel\ and\ GPIO\ for\ output\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00112}00112\ HAL\_StatusTypeDef\ TIM\_Output\_PWM\_Init(TIM\_HandleTypeDef\ *htim,\ TIM\_OC\_InitTypeDef\ *sConfigOC,\ uint32\_t\ TIM\_CHANNEL,\ GPIO\_TypeDef\ *GPIOx,\ uint32\_t\ PWM\_PIN);}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00113}00113\ \textcolor{comment}{/*\ Initialize\ TIM\ Encoder\ functional\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00114}00114\ HAL\_StatusTypeDef\ TIM\_Encoder\_Init(\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\_EncoderTypeDef}}\ *henc1,\ TIM\_HandleTypeDef\ *htim);}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00115}00115\ \textcolor{comment}{/*\ Initialize\ OC\ Comparator\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00116}00116\ HAL\_StatusTypeDef\ TIM\_OC\_Comparator\_Init(TIM\_HandleTypeDef\ *htim,\ uint32\_t\ TIM\_CHANNEL);}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00117}00117\ \textcolor{comment}{/*\ Start\ delay\ via\ TIM\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00118}00118\ HAL\_StatusTypeDef\ TIM\_Delay\_Start(TIM\_HandleTypeDef\ *htim);}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00119}00119\ \textcolor{comment}{/*\ Delay\ via\ TIM\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00120}00120\ HAL\_StatusTypeDef\ TIM\_Delay(TIM\_HandleTypeDef\ *htim,\ uint16\_t\ delay);}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00121}00121\ \textcolor{comment}{/*\ Wait\ Delay\ via\ TIM\ without\ blocking\ app\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00122}00122\ HAL\_StatusTypeDef\ TIM\_Delay\_NonBlocking(TIM\_HandleTypeDef\ *htim,\ uint16\_t\ delay);}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00123}00123\ \textcolor{comment}{/*\ Initialize\ TIMs\ clock\ and\ interrupt\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00124}00124\ \textcolor{keywordtype}{void}\ TIM\_Base\_MspInit(TIM\_HandleTypeDef*\ htim,\ TIM\_ITModeTypeDef\ it\_mode);}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00125}00125\ \textcolor{comment}{/*\ DeInitialize\ TIMs\ clock\ and\ interrupt\ */}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00126}00126\ \textcolor{keywordtype}{void}\ TIM\_Base\_MspDeInit(TIM\_HandleTypeDef*\ htim);\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00127}00127\ \textcolor{comment}{///////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\////////////////////////////}}
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00128}00128\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00129}00129\ }
\DoxyCodeLine{\Hypertarget{____general__tim_8h_source_l00130}00130\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ \_\_TIM\_GENERAL\_H\_}}
\end{DoxyCode}

View File

@@ -72,7 +72,7 @@
\DoxyCodeLine{\Hypertarget{____general__uart_8c_source_l00068}00068\ \ \ GPIO\_InitTypeDef\ GPIO\_InitStruct\ =\ \{0\};}
\DoxyCodeLine{\Hypertarget{____general__uart_8c_source_l00069}00069\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__uart_8c_source_l00070}00070\ \ \ \textcolor{comment}{//\ choose\ port\ for\ enable\ clock}}
\DoxyCodeLine{\Hypertarget{____general__uart_8c_source_l00071}00071\ \ \ \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(GPIOx);}
\DoxyCodeLine{\Hypertarget{____general__uart_8c_source_l00071}00071\ \ \ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(GPIOx);}
\DoxyCodeLine{\Hypertarget{____general__uart_8c_source_l00072}00072\ \ \ }
\DoxyCodeLine{\Hypertarget{____general__uart_8c_source_l00073}00073\ \ \ \textcolor{comment}{//USART3\ GPIO\ Configuration}}
\DoxyCodeLine{\Hypertarget{____general__uart_8c_source_l00074}00074\ \ \ \textcolor{comment}{//GPIO\_PIN\_TX\ -\/-\/-\/-\/-\/-\/>\ USART\_TX}}

View File

@@ -3,10 +3,10 @@
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00001}00001\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00002}00002\ \textcolor{comment}{\ \ **************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00003}00003\ \textcolor{comment}{\ \ *\ @file\ general\_uart.h}}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00004}00004\ \textcolor{comment}{\ \ *\ @brief\ Заголовочный\ файл\ для\ модуля\ инициализации\ UART.}}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00005}00005\ \textcolor{comment}{\ \ *************************************************************************/}}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00002}00002\ \textcolor{comment}{**************************************************************************}}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00003}00003\ \textcolor{comment}{*\ @file\ general\_uart.h}}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Заголовочный\ файл\ для\ модуля\ инициализации\ UART.}}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00005}00005\ \textcolor{comment}{*************************************************************************/}}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00006}00006\ \textcolor{preprocessor}{\#ifndef\ \_\_UART\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00007}00007\ \textcolor{preprocessor}{\#define\ \_\_UART\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{____general__uart_8h_source_l00008}00008\ \textcolor{comment}{}}

View File

@@ -1,19 +1,12 @@
\doxysection{Class List}
Here are the classes, structs, unions and interfaces with brief descriptions\+:\begin{DoxyCompactList}
\item\contentsline{section}{\mbox{\hyperlink{struct_a_d_c___tracker_type_def}{ADC\+\_\+\+Tracker\+Type\+Def}} \\*Struct for trackers for ADC }{\pageref{struct_a_d_c___tracker_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_a_d_c_channel___tracker_type_def}{ADCChannel\+\_\+\+Tracker\+Type\+Def}} \\*Struct for trackers for ADC Channel }{\pageref{struct_a_d_c_channel___tracker_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \\*Структура светодиода }{\pageref{struct_g_p_i_o___l_e_d_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\+\_\+\+Switch\+Type\+Def}} \\*Структура кнопки }{\pageref{struct_g_p_i_o___switch_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_h_f___stack_frame__t}{HF\+\_\+\+Stack\+Frame\+\_\+t}} \\*Контекст стек-\/фрейма процессора при Hard\+Fault }{\pageref{struct_h_f___stack_frame__t}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_measure___tracker_type_def}{Measure\+\_\+\+Tracker\+Type\+Def}} \\*Struct for trackers for Measure }{\pageref{struct_measure___tracker_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_measure_handle___tracker_type_def}{Measure\+Handle\+\_\+\+Tracker\+Type\+Def}} \\*Struct for trackers for Measure }{\pageref{struct_measure_handle___tracker_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_m_z_k_t___discrete_inputs_type_def}{MZKT\+\_\+\+Discrete\+Inputs\+Type\+Def}} }{\pageref{struct_m_z_k_t___discrete_inputs_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_m_z_k_t___l_e_ds_type_def}{MZKT\+\_\+\+LEDs\+Type\+Def}} }{\pageref{struct_m_z_k_t___l_e_ds_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_r_s___tracker_type_def}{RS\+\_\+\+Tracker\+Type\+Def}} \\*Struct for trackers for RS }{\pageref{struct_r_s___tracker_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_r_t_t___flash_header__t}{RTT\+\_\+\+Flash\+Header\+\_\+t}} \\*Структура RTT, которая будет положена в Flash }{\pageref{struct_r_t_t___flash_header__t}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_s_p_i___settings_type_def}{SPI\+\_\+\+Settings\+Type\+Def}} }{\pageref{struct_s_p_i___settings_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\+\_\+\+Encoder\+Type\+Def}} }{\pageref{struct_t_i_m___encoder_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_t_i_m___settings_type_def}{TIM\+\_\+\+Settings\+Type\+Def}} }{\pageref{struct_t_i_m___settings_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\+\_\+\+Encoder\+Type\+Def}} \\*Структура инициализации енкодера }{\pageref{struct_t_i_m___encoder_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_t_i_m___settings_type_def}{TIM\+\_\+\+Settings\+Type\+Def}} \\*Структура инициализации таймера }{\pageref{struct_t_i_m___settings_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_u_a_r_t___settings_type_def}{UART\+\_\+\+Settings\+Type\+Def}} }{\pageref{struct_u_a_r_t___settings_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{unionuint16___bit_type_def}{uint16\+\_\+\+Bit\+Type\+Def}} }{\pageref{unionuint16___bit_type_def}}{}
\item\contentsline{section}{\mbox{\hyperlink{unionuint32___bit_type_def}{uint32\+\_\+\+Bit\+Type\+Def}} }{\pageref{unionuint32___bit_type_def}}{}

View File

@@ -0,0 +1,55 @@
\doxysection{E\+:/.WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/bit\+\_\+access.h File Reference}
\hypertarget{bit__access_8h}{}\label{bit__access_8h}\index{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/bit\_access.h@{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/bit\_access.h}}
Заголочный файл для дефайнов битового доступа.
{\ttfamily \#include "{}mylibs\+\_\+defs.\+h"{}}\newline
Include dependency graph for bit\+\_\+access.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=229pt]{bit__access_8h__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=229pt]{bit__access_8h__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
union \mbox{\hyperlink{unionuint8___bit_type_def}{uint8\+\_\+\+Bit\+Type\+Def}}
\item
union \mbox{\hyperlink{unionuint16___bit_type_def}{uint16\+\_\+\+Bit\+Type\+Def}}
\item
union \mbox{\hyperlink{unionuint32___bit_type_def}{uint32\+\_\+\+Bit\+Type\+Def}}
\item
union \mbox{\hyperlink{unionuint64___bit_type_def}{uint64\+\_\+\+Bit\+Type\+Def}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Macros}
\begin{DoxyCompactItemize}
\item
\#define \mbox{\hyperlink{group___b_i_t___a_c_c_e_s_s___d_e_f_i_n_e_s_ga57dc3bb3472a66fc92312f89d42d2396}{uint8\+\_\+bit}}(\+\_\+uint8\+\_\+, \+\_\+bit\+\_\+)
\begin{DoxyCompactList}\small\item\em Получить n-\/й бит из uint8\+\_\+t. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___b_i_t___a_c_c_e_s_s___d_e_f_i_n_e_s_ga6a122b536ad99ae611c8cf01437af086}{uint16\+\_\+bit}}(\+\_\+uint8\+\_\+, \+\_\+bit\+\_\+)
\begin{DoxyCompactList}\small\item\em Получить n-\/й бит из uint16\+\_\+t. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___b_i_t___a_c_c_e_s_s___d_e_f_i_n_e_s_gafaa2080168b1b6f7281e8bfabab022d1}{uint32\+\_\+bit}}(\+\_\+uint8\+\_\+, \+\_\+bit\+\_\+)
\begin{DoxyCompactList}\small\item\em Получить n-\/й бит из uint32\+\_\+t. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___b_i_t___a_c_c_e_s_s___d_e_f_i_n_e_s_ga47eb69ce9330a1c73fe8031240f02f0a}{uint64\+\_\+bit}}(\+\_\+uint8\+\_\+, \+\_\+bit\+\_\+)
\begin{DoxyCompactList}\small\item\em Получить n-\/й бит из uint64\+\_\+t. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
Заголочный файл для дефайнов битового доступа.
Definition in file \mbox{\hyperlink{bit__access_8h_source}{bit\+\_\+access.\+h}}.

View File

@@ -0,0 +1 @@
a0db7c46e6c8e84aaed5bb4becf5bf9c

Binary file not shown.

View File

@@ -0,0 +1 @@
04aae01d1a86d60c14b0ea57bbf11647

Binary file not shown.

View File

@@ -1,38 +1,38 @@
\doxysection{bit\+\_\+access.\+h}
\hypertarget{bit__access_8h_source}{}\label{bit__access_8h_source}\index{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/bit\_access.h@{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/bit\_access.h}}
\mbox{\hyperlink{bit__access_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00001}00001\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00002}00002\ \textcolor{comment}{**************************************************************************}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00003}00003\ \textcolor{comment}{*\ @file\ mylibs\_defs.h}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Заголочный\ файл\ для\ дефайнов\ библиотеки\ MyLibsGeneral.}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00003}00003\ \textcolor{comment}{*\ @file\ bit\_access.h}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Заголочный\ файл\ для\ дефайнов\ битового\ доступа.}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00005}00005\ \textcolor{comment}{**************************************************************************}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00006}00006\ \textcolor{comment}{*\ @defgroup\ BIT\_ACCESS\_DEFINES\ \ \ \ Bit\ access\ defines}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00007}00007\ \textcolor{comment}{*\ @ingroup\ \ MYLIBS\_DEFINES}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00008}00008\ \textcolor{comment}{*\ @brief\ \ \ \ \ Макросы\ и\ typedef'ы\ для\ работы\ с\ битами\ в\ unsigned\ типах.}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00009}00009\ \textcolor{comment}{*\ @details}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00010}00010\ \textcolor{comment}{*\ В\ этом\ файле\ определены\ макросы\ для\ получения\ значения\ конкретного\ бита\string^}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00011}00011\ \textcolor{comment}{*\ -\/\ @ref\ uint8\_bit}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00012}00012\ \textcolor{comment}{*\ -\/\ @ref\ uint16\_bit}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00013}00013\ \textcolor{comment}{*\ -\/\ @ref\ uint32\_bit}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00014}00014\ \textcolor{comment}{*\ -\/\ @ref\ uint64\_bit}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00015}00015\ \textcolor{comment}{*}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00016}00016\ \textcolor{comment}{*\ Особенности\ использования:}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00017}00017\ \textcolor{comment}{*\ \ -\/\ Индекс\ бита\ должен\ быть\ **константой\ на\ этапе\ компиляции**.}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00018}00018\ \textcolor{comment}{*\ \ \ \ Пример\ верного\ использования:}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00019}00019\ \textcolor{comment}{*\ \ \ \ \ \ @code}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00020}00020\ \textcolor{comment}{*\ \ \ \ \ \ \ \ uint8\_t\ val\ =\ 0x05;}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00021}00021\ \textcolor{comment}{*\ \ \ \ \ \ \ \ uint8\_t\ b2\ =\ uint8\_bit(val,\ 2);\ //\ Получить\ бит\ 2}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00022}00022\ \textcolor{comment}{*\ \ \ \ \ \ \ \ uint8\_bit(val,\ 6)\ =\ 1;\ //\ Записать\ бит\ 6}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00023}00023\ \textcolor{comment}{*\ \ \ \ \ \ @endcode}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00024}00024\ \textcolor{comment}{*\ \ -\/\ Нельзя\ использовать\ переменные\ в\ качестве\ индекса:}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00025}00025\ \textcolor{comment}{*\ \ \ \ \ \ @code}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00026}00026\ \textcolor{comment}{*\ \ \ \ \ \ \ \ uint8\_t\ i\ =\ 2;}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00027}00027\ \textcolor{comment}{*\ \ \ \ \ \ \ \ uint8\_bit(val,\ i);\ //\ Не\ сработает!}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00028}00028\ \textcolor{comment}{*\ \ \ \ \ \ @endcode}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00029}00029\ \textcolor{comment}{*\ \ -\/\ Макросы\ возвращают\ 0\ или\ 1.}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00030}00030\ \textcolor{comment}{*\ \ -\/\ Доступ\ реализован\ через\ приведение\ к\ \`{}union`\ с\ битовыми\ полями,\ поэтому\ это}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00031}00031\ \textcolor{comment}{*\ \ \ \ безопасный\ способ\ работы\ с\ отдельными\ битами\ без\ ручного\ сдвига\ и\ маскирования.}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00010}00010\ \textcolor{comment}{В\ этом\ файле\ определены\ макросы\ для\ получения\ значения\ конкретного\ бита\string^}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00011}00011\ \textcolor{comment}{-\/\ @ref\ uint8\_bit}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00012}00012\ \textcolor{comment}{-\/\ @ref\ uint16\_bit}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00013}00013\ \textcolor{comment}{-\/\ @ref\ uint32\_bit}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00014}00014\ \textcolor{comment}{-\/\ @ref\ uint64\_bit}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00015}00015\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00016}00016\ \textcolor{comment}{Особенности\ использования:}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00017}00017\ \textcolor{comment}{-\/\ Индекс\ бита\ должен\ быть\ **константой\ на\ этапе\ компиляции**.}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00018}00018\ \textcolor{comment}{\ \ Пример\ верного\ использования:}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00019}00019\ \textcolor{comment}{\ \ \ \ @code}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00020}00020\ \textcolor{comment}{\ \ \ \ \ \ uint8\_t\ val\ =\ 0x05;}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00021}00021\ \textcolor{comment}{\ \ \ \ \ \ uint8\_t\ b2\ =\ uint8\_bit(val,\ 2);\ //\ Получить\ бит\ 2}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00022}00022\ \textcolor{comment}{\ \ \ \ \ \ uint8\_bit(val,\ 6)\ =\ 1;\ //\ Записать\ бит\ 6}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00023}00023\ \textcolor{comment}{\ \ \ \ @endcode}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00024}00024\ \textcolor{comment}{-\/\ Нельзя\ использовать\ переменные\ в\ качестве\ индекса:}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00025}00025\ \textcolor{comment}{\ \ \ \ @code}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00026}00026\ \textcolor{comment}{\ \ \ \ \ \ uint8\_t\ i\ =\ 2;}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00027}00027\ \textcolor{comment}{\ \ \ \ \ \ uint8\_bit(val,\ i);\ //\ Не\ сработает!}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00028}00028\ \textcolor{comment}{\ \ \ \ @endcode}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00029}00029\ \textcolor{comment}{-\/\ Макросы\ возвращают\ 0\ или\ 1.}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00030}00030\ \textcolor{comment}{-\/\ Доступ\ реализован\ через\ приведение\ к\ \`{}union`\ с\ битовыми\ полями,\ поэтому\ это}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00031}00031\ \textcolor{comment}{\ \ безопасный\ способ\ работы\ с\ отдельными\ битами\ без\ ручного\ сдвига\ и\ маскирования.}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00032}00032\ \textcolor{comment}{*\ @\{}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00033}00033\ \textcolor{comment}{*************************************************************************/}}
\DoxyCodeLine{\Hypertarget{bit__access_8h_source_l00034}00034\ \textcolor{preprocessor}{\#ifndef\ \_\_BIT\_ACCESS\_H\_}}

View File

@@ -2,10 +2,10 @@
Here is a list of all documented files with brief descriptions\+:\begin{DoxyCompactList}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{____general__flash_8h_source}{\+\_\+\+\_\+general\+\_\+flash.\+h}} }{\pageref{____general__flash_8h_source}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{____general__spi_8h_source}{\+\_\+\+\_\+general\+\_\+spi.\+h}} }{\pageref{____general__spi_8h_source}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{____general__tim_8h_source}{\+\_\+\+\_\+general\+\_\+tim.\+h}} }{\pageref{____general__tim_8h_source}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{____general__uart_8h_source}{\+\_\+\+\_\+general\+\_\+uart.\+h}} }{\pageref{____general__uart_8h_source}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{bit__access_8h_source}{bit\+\_\+access.\+h}} }{\pageref{bit__access_8h_source}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{general__gpio_8h}{general\+\_\+gpio.\+h}} \\*Заголовочный файл для модуля инициализации портов }{\pageref{general__gpio_8h}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{bit__access_8h}{bit\+\_\+access.\+h}} \\*Заголочный файл для дефайнов битового доступа }{\pageref{bit__access_8h}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{general__gpio_8h}{general\+\_\+gpio.\+h}} \\*Заголовочный файл для модуля инициализации портов и работы с ними }{\pageref{general__gpio_8h}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{general__tim_8h}{general\+\_\+tim.\+h}} \\*Заголовочный файл для модуля инициализации таймеров и работы с ними }{\pageref{general__tim_8h}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{mylibs__config_8h}{mylibs\+\_\+config.\+h}} \\*Конфигурации для библиотек My\+Libs }{\pageref{mylibs__config_8h}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{mylibs__defs_8h}{mylibs\+\_\+defs.\+h}} \\*Заголочный файл для дефайнов библиотеки My\+Libs\+General }{\pageref{mylibs__defs_8h}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{mylibs__include_8h}{mylibs\+\_\+include.\+h}} \\*Заголочный файл для всех библиотек }{\pageref{mylibs__include_8h}}{}
@@ -13,7 +13,7 @@ Here is a list of all documented files with brief descriptions\+:\begin{DoxyComp
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{trackers_8h}{trackers.\+h}} \\*Заголочный файл для работы с трекерами \doxylink{group___t_r_a_c_k_e_r_s}{Trackers defines} }{\pageref{trackers_8h}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Src/\mbox{\hyperlink{____general__flash_8c_source}{\+\_\+\+\_\+general\+\_\+flash.\+c}} }{\pageref{____general__flash_8c_source}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Src/\mbox{\hyperlink{____general__spi_8c_source}{\+\_\+\+\_\+general\+\_\+spi.\+c}} }{\pageref{____general__spi_8c_source}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Src/\mbox{\hyperlink{____general__tim_8c_source}{\+\_\+\+\_\+general\+\_\+tim.\+c}} }{\pageref{____general__tim_8c_source}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Src/\mbox{\hyperlink{____general__uart_8c_source}{\+\_\+\+\_\+general\+\_\+uart.\+c}} }{\pageref{____general__uart_8c_source}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Src/\mbox{\hyperlink{general__gpio_8c}{general\+\_\+gpio.\+c}} \\*Модуль для инициализации портов }{\pageref{general__gpio_8c}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Src/\mbox{\hyperlink{general__gpio_8c}{general\+\_\+gpio.\+c}} \\*Модуль для инициализации портов и работы с ними }{\pageref{general__gpio_8c}}{}
\item\contentsline{section}{E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Src/\mbox{\hyperlink{general__tim_8c}{general\+\_\+tim.\+c}} \\*Модуль для инициализации таймеров и работы с ними }{\pageref{general__tim_8c}}{}
\end{DoxyCompactList}

View File

@@ -2,37 +2,45 @@
\hypertarget{general__gpio_8c}{}\label{general__gpio_8c}\index{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Src/general\_gpio.c@{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Src/general\_gpio.c}}
Модуль для инициализации портов.
Модуль для инициализации портов и работы с ними.
{\ttfamily \#include "{}general\+\_\+gpio.\+h"{}}\newline
Include dependency graph for general\+\_\+gpio.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=229pt]{general__gpio_8c__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\+\_\+\+Clock\+\_\+\+Enable}} (GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\+\_\+\+Clock\+\_\+\+Enable}} (GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx)
\begin{DoxyCompactList}\small\item\em Включить тактирование порта GPIO. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gac936453c7a0841c0b17bcfdae4958084}{GPIO\+\_\+\+LED\+\_\+\+Init}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx, uint32\+\_\+t GPIO\+\_\+\+PIN\+\_\+X, uint8\+\_\+t LED\+\_\+\+Active\+Level)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gac936453c7a0841c0b17bcfdae4958084}{GPIO\+\_\+\+LED\+\_\+\+Init}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx, uint32\+\_\+t GPIO\+\_\+\+PIN\+\_\+X, uint8\+\_\+t LED\+\_\+\+Active\+Level)
\begin{DoxyCompactList}\small\item\em Инициализировать светодиод (структуру светодиода) \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{GPIO\+\_\+\+LED\+\_\+\+On}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{GPIO\+\_\+\+LED\+\_\+\+On}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
\begin{DoxyCompactList}\small\item\em Включить светодиод \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\+\_\+\+LED\+\_\+\+Off}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\+\_\+\+LED\+\_\+\+Off}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
\begin{DoxyCompactList}\small\item\em Выключить светодиод \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gae78b570447d55a462a679a89dbaa8ea2}{GPIO\+\_\+\+LED\+\_\+\+Set}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint8\+\_\+t led\+\_\+state)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gae78b570447d55a462a679a89dbaa8ea2}{GPIO\+\_\+\+LED\+\_\+\+Set}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint8\+\_\+t led\+\_\+state)
\begin{DoxyCompactList}\small\item\em Выставить светодиод по переменной \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaf22f44ecaf6a1932b47edc5a845b03a9}{GPIO\+\_\+\+LED\+\_\+\+Blink\+\_\+\+Start}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint32\+\_\+t period)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaf22f44ecaf6a1932b47edc5a845b03a9}{GPIO\+\_\+\+LED\+\_\+\+Blink\+\_\+\+Start}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint32\+\_\+t period)
\begin{DoxyCompactList}\small\item\em Активировать моргание светодиодом \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaa00f20021781464af3dfe74aa3e59a0a}{GPIO\+\_\+\+LED\+\_\+\+Fading\+\_\+\+Start}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint32\+\_\+t period)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaa00f20021781464af3dfe74aa3e59a0a}{GPIO\+\_\+\+LED\+\_\+\+Fading\+\_\+\+Start}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint32\+\_\+t period)
\begin{DoxyCompactList}\small\item\em Активировать моргание светодиодом \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gad6e6189824406c4d472b6340c7f19bb2}{GPIO\+\_\+\+LED\+\_\+\+Dynamic\+\_\+\+Handle}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
void \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gad6e6189824406c4d472b6340c7f19bb2}{GPIO\+\_\+\+LED\+\_\+\+Dynamic\+\_\+\+Handle}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
\begin{DoxyCompactList}\small\item\em Управление динамическими режимами свечения светодиода \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___s_w_i_t_c_h_gacafee0e68877f2b25df843356871d1f7}{GPIO\+\_\+\+Switch\+\_\+\+Init}} (\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\+\_\+\+Switch\+Type\+Def}} \texorpdfstring{$\ast$}{*}sw, GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx, uint32\+\_\+t GPIO\+\_\+\+PIN\+\_\+X, uint8\+\_\+t SW\+\_\+\+Active\+Level)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h_gacafee0e68877f2b25df843356871d1f7}{GPIO\+\_\+\+Switch\+\_\+\+Init}} (\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\+\_\+\+Switch\+Type\+Def}} \texorpdfstring{$\ast$}{*}sw, GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx, uint32\+\_\+t GPIO\+\_\+\+PIN\+\_\+X, uint8\+\_\+t SW\+\_\+\+Active\+Level)
\begin{DoxyCompactList}\small\item\em Инициализировать кнопку (структуру кнопки) \end{DoxyCompactList}\item
uint8\+\_\+t \mbox{\hyperlink{group___g_p_i_o___s_w_i_t_c_h_ga4b6b8be19a9265bfee6b2bb8a68e988f}{GPIO\+\_\+\+Read\+\_\+\+Switch}} (\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\+\_\+\+Switch\+Type\+Def}} \texorpdfstring{$\ast$}{*}sw)
int \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h_ga960b24335b2026abcad126ab8c422d70}{GPIO\+\_\+\+Read\+\_\+\+Switch}} (\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\+\_\+\+Switch\+Type\+Def}} \texorpdfstring{$\ast$}{*}sw)
\begin{DoxyCompactList}\small\item\em Считать состоянии кнопки \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
Модуль для инициализации портов.
Модуль для инициализации портов и работы с ними.
Реализация функций для работы с GPIO\+:
\begin{DoxyItemize}

View File

@@ -0,0 +1 @@
06087ea6fdcbd10af4ee99fd98be927c

Binary file not shown.

View File

@@ -5,117 +5,117 @@
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00001}00001\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00002}00002\ \textcolor{comment}{**************************************************************************}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00003}00003\ \textcolor{comment}{*\ @file\ general\_gpio.c}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Модуль\ для\ инициализации\ портов.}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Модуль\ для\ инициализации\ портов\ и\ работы\ с\ ними.}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00005}00005\ \textcolor{comment}{**************************************************************************}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00006}00006\ \textcolor{comment}{*\ @details\ Реализация\ функций\ для\ работы\ с\ GPIO:}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00007}00007\ \textcolor{comment}{*\ \ \ \ \ \ \ \ \ \ -\/\ Включение\ тактирования\ портов}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00008}00008\ \textcolor{comment}{*\ \ \ \ \ \ \ \ \ \ -\/\ Инициализация\ светодиодов\ и\ кнопок}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00009}00009\ \textcolor{comment}{*\ \ \ \ \ \ \ \ \ \ -\/\ Управление\ светодиодами:\ включение,\ выключение,\ моргание,\ плавное\ затухание}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00010}00010\ \textcolor{comment}{*\ \ \ \ \ \ \ \ \ \ -\/\ Чтение\ состояния\ кнопок\ с\ фильтром\ от\ дребезга}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00011}00011\ \textcolor{comment}{***************************************************************************/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00012}00012\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{general__gpio_8h}{general\_gpio.h}}"{}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00013}00013\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00014}00014\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00015}00015\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/GPIO\ INIT\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00016}00016\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00017}00017\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00018}00018\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00019}00019\ \textcolor{comment}{\ \ *\ @brief\ Включить\ тактирование\ порта\ GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00020}00020\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00021}\mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{00021}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(GPIO\_TypeDef\ *GPIOx)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00022}00022\ \{\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00023}00023\ \ \ HAL\_StatusTypeDef\ status\ =\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00024}00024\ \ \ \textcolor{comment}{//\ choose\ port\ for\ enable\ clock}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00025}00025\ \ \ \textcolor{keywordflow}{if}\ (GPIOx==GPIOA)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00026}00026\ \ \ \ \ \_\_HAL\_RCC\_GPIOA\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00027}00027\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOB)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00028}00028\ \ \ \ \ \_\_HAL\_RCC\_GPIOB\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00029}00029\ \textcolor{preprocessor}{\#ifdef\ GPIOC}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00030}00030\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOC)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00031}00031\ \ \ \ \ \_\_HAL\_RCC\_GPIOC\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00032}00032\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00033}00033\ \textcolor{preprocessor}{\#ifdef\ GPIOD}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00034}00034\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOD)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00035}00035\ \ \ \ \ \_\_HAL\_RCC\_GPIOD\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00006}00006\ \textcolor{comment}{*\ @details\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00007}00007\ \textcolor{comment}{Реализация\ функций\ для\ работы\ с\ GPIO:}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00008}00008\ \textcolor{comment}{\ -\/\ Включение\ тактирования\ портов}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00009}00009\ \textcolor{comment}{\ -\/\ Инициализация\ светодиодов\ и\ кнопок}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00010}00010\ \textcolor{comment}{\ -\/\ Управление\ светодиодами:\ включение,\ выключение,\ моргание,\ плавное\ затухание}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00011}00011\ \textcolor{comment}{\ -\/\ Чтение\ состояния\ кнопок\ с\ фильтром\ от\ дребезга}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00012}00012\ \textcolor{comment}{***************************************************************************/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00013}00013\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{general__gpio_8h}{general\_gpio.h}}"{}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00014}00014\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00015}00015\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00016}00016\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/GPIO\ INIT\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00017}00017\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00018}00018\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00019}00019\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00020}00020\ \textcolor{comment}{\ \ *\ @brief\ Включить\ тактирование\ порта\ GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00021}00021\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00022}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{00022}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(GPIO\_TypeDef\ *GPIOx)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00023}00023\ \{\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00024}00024\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga5d066a5b9781f9437e75d98677489eb9}{check\_null\_ptr\_1}}(GPIOx))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00025}00025\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00026}00026\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00027}00027\ \ \ HAL\_StatusTypeDef\ status\ =\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00028}00028\ \ \ \textcolor{comment}{//\ choose\ port\ for\ enable\ clock}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00029}00029\ \ \ \textcolor{keywordflow}{if}\ (GPIOx==GPIOA)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00030}00030\ \ \ \ \ \_\_HAL\_RCC\_GPIOA\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00031}00031\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOB)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00032}00032\ \ \ \ \ \_\_HAL\_RCC\_GPIOB\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00033}00033\ \textcolor{preprocessor}{\#ifdef\ GPIOC}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00034}00034\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOC)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00035}00035\ \ \ \ \ \_\_HAL\_RCC\_GPIOC\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00036}00036\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00037}00037\ \textcolor{preprocessor}{\#ifdef\ GPIOE}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00038}00038\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOE)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00039}00039\ \ \ \ \ \_\_HAL\_RCC\_GPIOE\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00037}00037\ \textcolor{preprocessor}{\#ifdef\ GPIOD}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00038}00038\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOD)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00039}00039\ \ \ \ \ \_\_HAL\_RCC\_GPIOD\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00040}00040\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00041}00041\ \textcolor{preprocessor}{\#ifdef\ GPIOF}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00042}00042\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOF)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00043}00043\ \ \ \ \ \_\_HAL\_RCC\_GPIOF\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00041}00041\ \textcolor{preprocessor}{\#ifdef\ GPIOE}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00042}00042\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOE)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00043}00043\ \ \ \ \ \_\_HAL\_RCC\_GPIOE\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00044}00044\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00045}00045\ \textcolor{preprocessor}{\#ifdef\ GPIOH}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00045}00045\ \textcolor{preprocessor}{\#ifdef\ GPIOF}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00046}00046\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOF)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00047}00047\ \ \ \ \ \_\_HAL\_RCC\_GPIOH\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00047}00047\ \ \ \ \ \_\_HAL\_RCC\_GPIOF\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00048}00048\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00049}00049\ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00050}00050\ \ \ \ \ status\ =\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00051}00051\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00052}00052\ \ \ \textcolor{keywordflow}{return}\ status;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00053}00053\ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00054}00054\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00055}00055\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/GPIO\ INIT\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00056}00056\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00057}00057\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00049}00049\ \textcolor{preprocessor}{\#ifdef\ GPIOH}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00050}00050\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (GPIOx==GPIOF)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00051}00051\ \ \ \ \ \_\_HAL\_RCC\_GPIOH\_CLK\_ENABLE();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00052}00052\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00053}00053\ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00054}00054\ \ \ \ \ status\ =\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00055}00055\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00056}00056\ \ \ \textcolor{keywordflow}{return}\ status;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00057}00057\ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00058}00058\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00059}00059\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00060}00060\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/GPIO\ LED\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00061}00061\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00062}00062\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00063}00063\ \textcolor{comment}{\ \ *\ @brief\ \ Инициализировать\ светодиод\ (структуру\ светодиода)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00064}00064\ \textcolor{comment}{\ \ *\ @param\ led\ \ \ \ \ \ \ \ \ \ \ \ \ \ Указатель\ на\ структуру\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00065}00065\ \textcolor{comment}{\ \ *\ @param\ GPIOx\ \ \ \ \ \ \ \ \ \ \ \ Указатель\ на\ структуру\ порта\ для\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00066}00066\ \textcolor{comment}{\ \ *\ @param\ GPIO\_PIN\_X\ \ \ \ \ \ \ Пин\ для\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00067}00067\ \textcolor{comment}{\ \ *\ @param\ LED\_ActiveLevel\ \ Состояния\ пина,\ при\ котором\ светодиод\ будет\ включен}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00068}00068\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00069}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gac936453c7a0841c0b17bcfdae4958084}{00069}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gac936453c7a0841c0b17bcfdae4958084}{GPIO\_LED\_Init}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ GPIO\_TypeDef\ *GPIOx,\ uint32\_t\ GPIO\_PIN\_X,\ uint8\_t\ LED\_ActiveLevel)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00070}00070\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00071}00071\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae7d1cbb9075ee4b830342fd564d96be0}{check\_null\_ptr\_2}}(led,\ GPIOx))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00072}00072\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00073}00073\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00074}00074\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}}\ \ \ \ \ \ \ =\ GPIOx;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00075}00075\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}}\ \ \ \ \ \ \ \ =\ GPIO\_PIN\_X;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00076}00076\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{LED\_ActiveLvl}}\ \ =\ LED\_ActiveLevel;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00059}00059\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/GPIO\ INIT\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00060}00060\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00061}00061\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00062}00062\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00063}00063\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00064}00064\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/GPIO\ LED\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00065}00065\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00066}00066\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00067}00067\ \textcolor{comment}{\ \ *\ @brief\ \ Инициализировать\ светодиод\ (структуру\ светодиода)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00068}00068\ \textcolor{comment}{\ \ *\ @param\ led\ \ \ \ \ \ \ \ \ \ \ \ \ \ Указатель\ на\ структуру\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00069}00069\ \textcolor{comment}{\ \ *\ @param\ GPIOx\ \ \ \ \ \ \ \ \ \ \ \ Указатель\ на\ структуру\ порта\ для\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00070}00070\ \textcolor{comment}{\ \ *\ @param\ GPIO\_PIN\_X\ \ \ \ \ \ \ Пин\ для\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00071}00071\ \textcolor{comment}{\ \ *\ @param\ LED\_ActiveLevel\ \ Состояния\ пина,\ при\ котором\ светодиод\ будет\ включен}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00072}00072\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00073}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gac936453c7a0841c0b17bcfdae4958084}{00073}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gac936453c7a0841c0b17bcfdae4958084}{GPIO\_LED\_Init}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ GPIO\_TypeDef\ *GPIOx,\ uint32\_t\ GPIO\_PIN\_X,\ uint8\_t\ LED\_ActiveLevel)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00074}00074\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00075}00075\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}{check\_null\_ptr\_3}}(led,\ GPIOx,\ GPIO\_PIN\_X))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00076}00076\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00077}00077\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00078}00078\ \ \ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\_LED\_Off}}(led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00079}00079\ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00080}00080\ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00081}00081\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00082}00082\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00083}00083\ \textcolor{comment}{\ \ *\ @brief\ \ Включить\ светодиод\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00084}00084\ \textcolor{comment}{\ \ *\ @param\ \ led\ Указатель\ на\ структуру\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00085}00085\ \textcolor{comment}{\ \ *\ @return\ HAL\ Status}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00086}00086\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00087}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{00087}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{GPIO\_LED\_On}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00088}00088\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00089}00089\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga0b75f0bcf066acdf797b8e6730c52f86}{check\_null\_ptr\_1}}(led))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00090}00090\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00091}00091\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00092}00092\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ =\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1af6abfb9c5b95abbdb239590f2cd245ea}{LED\_IS\_ON}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00093}00093\ \ \ \textcolor{keywordflow}{if}(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}}\ !=\ NULL)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00094}00094\ \ \ \ \ HAL\_GPIO\_WritePin(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{LED\_ActiveLvl}});}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00095}00095\ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00096}00096\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00097}00097\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00098}00098\ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00099}00099\ \}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00100}00100\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00101}00101\ \textcolor{comment}{\ \ *\ @brief\ \ Выключить\ светодиод\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00102}00102\ \textcolor{comment}{\ \ *\ @param\ \ led\ Указатель\ на\ структуру\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00103}00103\ \textcolor{comment}{\ \ *\ @return\ HAL\ Status}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00104}00104\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00105}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{00105}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\_LED\_Off}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00106}00106\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00107}00107\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga0b75f0bcf066acdf797b8e6730c52f86}{check\_null\_ptr\_1}}(led))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00108}00108\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00109}00109\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00110}00110\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ =\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a74276cd2464314e422e8a144483f74ae}{LED\_IS\_OFF}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00111}00111\ \ \ \textcolor{keywordflow}{if}(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}}\ !=\ NULL)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00112}00112\ \ \ \ \ HAL\_GPIO\_WritePin(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}},\ !led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{LED\_ActiveLvl}});}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00113}00113\ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00114}00114\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00078}00078\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}}\ \ \ \ \ \ \ =\ GPIOx;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00079}00079\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}}\ \ \ \ \ \ \ \ =\ GPIO\_PIN\_X;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00080}00080\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{LED\_ActiveLvl}}\ \ =\ LED\_ActiveLevel;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00081}00081\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00082}00082\ \ \ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\_LED\_Off}}(led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00083}00083\ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00084}00084\ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00085}00085\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00086}00086\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00087}00087\ \textcolor{comment}{\ \ *\ @brief\ \ Включить\ светодиод\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00088}00088\ \textcolor{comment}{\ \ *\ @param\ \ led\ Указатель\ на\ структуру\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00089}00089\ \textcolor{comment}{\ \ *\ @return\ HAL\ Status}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00090}00090\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00091}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{00091}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{GPIO\_LED\_On}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00092}00092\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00093}00093\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}{check\_null\_ptr\_3}}(led,\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}}))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00094}00094\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;\ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00095}00095\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00096}00096\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ =\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1af6abfb9c5b95abbdb239590f2cd245ea}{LED\_IS\_ON}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00097}00097\ \ \ HAL\_GPIO\_WritePin(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{LED\_ActiveLvl}});}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00098}00098\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00099}00099\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00100}00100\ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00101}00101\ \}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00102}00102\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00103}00103\ \textcolor{comment}{\ \ *\ @brief\ \ Выключить\ светодиод\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00104}00104\ \textcolor{comment}{\ \ *\ @param\ \ led\ Указатель\ на\ структуру\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00105}00105\ \textcolor{comment}{\ \ *\ @return\ HAL\ Status}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00106}00106\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00107}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{00107}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\_LED\_Off}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00108}00108\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00109}00109\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}{check\_null\_ptr\_3}}(led,\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}}))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00110}00110\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;\ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00111}00111\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00112}00112\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ =\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a74276cd2464314e422e8a144483f74ae}{LED\_IS\_OFF}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00113}00113\ \ \ HAL\_GPIO\_WritePin(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}},\ !led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{LED\_ActiveLvl}});}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00114}00114\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00115}00115\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00116}00116\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00117}00117\ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
@@ -126,18 +126,18 @@
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00122}00122\ \textcolor{comment}{\ \ *\ @param\ \ led\_state\ \ Состояние\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00123}00123\ \textcolor{comment}{\ \ *\ @return\ HAL\ Status}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00124}00124\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00125}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gae78b570447d55a462a679a89dbaa8ea2}{00125}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gae78b570447d55a462a679a89dbaa8ea2}{GPIO\_LED\_Set}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint8\_t\ led\_state)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00125}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gae78b570447d55a462a679a89dbaa8ea2}{00125}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gae78b570447d55a462a679a89dbaa8ea2}{GPIO\_LED\_Set}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint8\_t\ led\_state)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00126}00126\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00127}00127\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga0b75f0bcf066acdf797b8e6730c52f86}{check\_null\_ptr\_1}}(led))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00128}00128\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00127}00127\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}{check\_null\_ptr\_3}}(led,\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}}))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00128}00128\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;\ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00129}00129\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00130}00130\ \ \ \textcolor{keywordflow}{if}(led\_state)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00131}00131\ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00132}00132\ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{GPIO\_LED\_On}}(led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00132}00132\ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{GPIO\_LED\_On}}(led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00133}00133\ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00134}00134\ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00135}00135\ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00136}00136\ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\_LED\_Off}}(led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00136}00136\ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\_LED\_Off}}(led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00137}00137\ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00138}00138\ \}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00139}00139\ \textcolor{comment}{/**}}
@@ -147,12 +147,12 @@
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00143}00143\ \textcolor{comment}{\ \ *\ @return\ HAL\ Status}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00144}00144\ \textcolor{comment}{\ \ *\ @details\ \ Функция\ ставит\ режим\ моргания,\ который\ после\ управляется\ в\ @ref\ GPIO\_LED\_Dynamic\_Handle}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00145}00145\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00146}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaf22f44ecaf6a1932b47edc5a845b03a9}{00146}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaf22f44ecaf6a1932b47edc5a845b03a9}{GPIO\_LED\_Blink\_Start}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint32\_t\ period)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00146}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaf22f44ecaf6a1932b47edc5a845b03a9}{00146}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaf22f44ecaf6a1932b47edc5a845b03a9}{GPIO\_LED\_Blink\_Start}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint32\_t\ period)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00147}00147\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00148}00148\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae7d1cbb9075ee4b830342fd564d96be0}{check\_null\_ptr\_2}}(led,\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}}))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00148}00148\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}{check\_null\_ptr\_3}}(led,\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}}))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00149}00149\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;\ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00150}00150\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00151}00151\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ =\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a2445895bed5dcbedc82ea3ef02bec6fb}{LED\_IS\_BLINKING}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00151}00151\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ =\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a2445895bed5dcbedc82ea3ef02bec6fb}{LED\_IS\_BLINKING}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00152}00152\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a6cc026931a4681732f9a329ae03098ec}{LED\_Period}}\ =\ period;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00153}00153\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00154}00154\ \ \ \textcolor{keywordflow}{return}\ HAL\_OK;}
@@ -165,12 +165,12 @@
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00161}00161\ \textcolor{comment}{\ \ *\ @return\ HAL\ Status}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00162}00162\ \textcolor{comment}{\ \ *\ @details\ \ Функция\ ставит\ режим\ моргания,\ который\ после\ управляется\ в\ @ref\ GPIO\_LED\_Dynamic\_Handle}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00163}00163\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00164}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaa00f20021781464af3dfe74aa3e59a0a}{00164}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaa00f20021781464af3dfe74aa3e59a0a}{GPIO\_LED\_Fading\_Start}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint32\_t\ period)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00164}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaa00f20021781464af3dfe74aa3e59a0a}{00164}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaa00f20021781464af3dfe74aa3e59a0a}{GPIO\_LED\_Fading\_Start}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint32\_t\ period)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00165}00165\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00166}00166\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae7d1cbb9075ee4b830342fd564d96be0}{check\_null\_ptr\_2}}(led,\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}}))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00166}00166\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}{check\_null\_ptr\_3}}(led,\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}}))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00167}00167\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;\ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00168}00168\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00169}00169\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ =\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1aa610f6df44c939aa7d45e318036fa03b}{LED\_IS\_FADING}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00169}00169\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ =\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1aa610f6df44c939aa7d45e318036fa03b}{LED\_IS\_FADING}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00170}00170\ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a6cc026931a4681732f9a329ae03098ec}{LED\_Period}}\ =\ period;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00171}00171\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00172}00172\ \ \ \ \ }
@@ -185,41 +185,41 @@
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00181}00181\ \textcolor{comment}{\ \ *\ Т.е.\ функцию\ надо\ вызывать\ постоянно,\ чтобы\ она\ мониторила\ тики\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00182}00182\ \textcolor{comment}{\ \ *\ и\ в\ нужный\ момент\ переключала\ светодиод}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00183}00183\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00184}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gad6e6189824406c4d472b6340c7f19bb2}{00184}}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gad6e6189824406c4d472b6340c7f19bb2}{GPIO\_LED\_Dynamic\_Handle}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00184}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gad6e6189824406c4d472b6340c7f19bb2}{00184}}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gad6e6189824406c4d472b6340c7f19bb2}{GPIO\_LED\_Dynamic\_Handle}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00185}00185\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00186}00186\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae7d1cbb9075ee4b830342fd564d96be0}{check\_null\_ptr\_2}}(led,\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}}))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00186}00186\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}{check\_null\_ptr\_3}}(led,\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}}))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00187}00187\ \ \ \ \ \textcolor{keywordflow}{return};}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00188}00188\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00189}00189\ \ \ \textcolor{comment}{/*\ Режим\ моргания\ светодиода\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00190}00190\ \ \ \textcolor{keywordflow}{if}(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ ==\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a2445895bed5dcbedc82ea3ef02bec6fb}{LED\_IS\_BLINKING}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00190}00190\ \ \ \textcolor{keywordflow}{if}(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ ==\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a2445895bed5dcbedc82ea3ef02bec6fb}{LED\_IS\_BLINKING}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00191}00191\ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00192}00192\ \ \ \ \ uint32\_t\ tickcurrent\ =\ HAL\_GetTick();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00193}00193\ \ \ \ \ \textcolor{comment}{/*\ Ожидание\ истечения\ периода\ моргания\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00194}00194\ \ \ \ \ \textcolor{keywordflow}{if}((tickcurrent\ -\/\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a8c43c12787f4a89f4a785f91a979ba68}{tickprev}})\ >\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a6cc026931a4681732f9a329ae03098ec}{LED\_Period}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00194}00194\ \ \ \ \ \textcolor{keywordflow}{if}((tickcurrent\ -\/\ led-\/>tickprev)\ >\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a6cc026931a4681732f9a329ae03098ec}{LED\_Period}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00195}00195\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00196}00196\ \ \ \ \ \ \ \textcolor{comment}{/*\ Моргание\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00197}00197\ \ \ \ \ \ \ HAL\_GPIO\_TogglePin(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}});}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00198}00198\ \ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00199}00199\ \ \ \ \ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a8c43c12787f4a89f4a785f91a979ba68}{tickprev}}\ =\ tickcurrent;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00199}00199\ \ \ \ \ \ \ led-\/>tickprev\ =\ tickcurrent;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00200}00200\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00201}00201\ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00202}00202\ \ \ \textcolor{comment}{/*\ Режим\ плавного\ моргания\ светодиода\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00203}00203\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ ==\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1aa610f6df44c939aa7d45e318036fa03b}{LED\_IS\_FADING}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00203}00203\ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}}\ ==\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1aa610f6df44c939aa7d45e318036fa03b}{LED\_IS\_FADING}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00204}00204\ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00205}00205\ \ \ \ \ \textcolor{keyword}{static}\ \textcolor{keywordtype}{unsigned}\ direction\ =\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00206}00206\ \ \ \ \ \textcolor{keyword}{static}\ \textcolor{keywordtype}{int}\ duty\ =\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00207}00207\ \ \ \ \ uint32\_t\ tickcurrent\ =\ HAL\_GetTick();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00208}00208\ \ \ \ \ \textcolor{comment}{/*\ Ожидание\ момента\ изменения\ яркости\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00209}00209\ \ \ \ \ \textcolor{comment}{/*\ Период\ ШИМ\ 20\ мс,\ поэтому\ менять\ яроксть\ надо\ 40\ раз\ за\ период\ (туда\ обратно)\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00210}00210\ \ \ \ \ \textcolor{keywordflow}{if}((tickcurrent\ -\/\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a8c43c12787f4a89f4a785f91a979ba68}{tickprev}})\ >\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a6cc026931a4681732f9a329ae03098ec}{LED\_Period}}/(LED\_PWM\_TICKS*2))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00210}00210\ \ \ \ \ \textcolor{keywordflow}{if}((tickcurrent\ -\/\ led-\/>tickprev)\ >\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a6cc026931a4681732f9a329ae03098ec}{LED\_Period}}/(\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga1d42e219765ec526d99e306638ac0023}{LED\_PWM\_TICKS}}*2))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00211}00211\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00212}00212\ \ \ \ \ \ \ \textcolor{comment}{/*\ Формирование\ разтухания\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00213}00213\ \ \ \ \ \ \ \textcolor{keywordflow}{if}(direction\ ==\ 0)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00214}00214\ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00215}00215\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(++duty\ >=\ LED\_PWM\_TICKS)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00215}00215\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(++duty\ >=\ \mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga1d42e219765ec526d99e306638ac0023}{LED\_PWM\_TICKS}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00216}00216\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00217}00217\ \ \ \ \ \ \ \ \ \ \ direction\ =\ 1;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00218}00218\ \ \ \ \ \ \ \ \ \ \ duty\ =\ LED\_PWM\_TICKS;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00218}00218\ \ \ \ \ \ \ \ \ \ \ duty\ =\ \mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga1d42e219765ec526d99e306638ac0023}{LED\_PWM\_TICKS}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00219}00219\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00220}00220\ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00221}00221\ \ \ \ \ \ \ \textcolor{comment}{/*\ Формирование\ затухания\ */}}
@@ -231,11 +231,11 @@
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00227}00227\ \ \ \ \ \ \ \ \ \ \ duty\ =\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00228}00228\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00229}00229\ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00230}00230\ \ \ \ \ \ \ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a8c43c12787f4a89f4a785f91a979ba68}{tickprev}}\ =\ tickcurrent;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00230}00230\ \ \ \ \ \ \ led-\/>tickprev\ =\ tickcurrent;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00231}00231\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00232}00232\ \ \ \ \ \textcolor{comment}{/*\ Формирование\ ШИМ\ для\ изменения\ яркости\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00233}00233\ \ \ \ \ \textcolor{keywordtype}{int}\ duty\_crt\ =\ (duty*duty/LED\_PWM\_TICKS);}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00234}00234\ \ \ \ \ \textcolor{keywordflow}{if}(tickcurrent\%LED\_PWM\_TICKS\ <\ duty\_crt)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00233}00233\ \ \ \ \ \textcolor{keywordtype}{int}\ duty\_crt\ =\ (duty*duty/\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga1d42e219765ec526d99e306638ac0023}{LED\_PWM\_TICKS}});}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00234}00234\ \ \ \ \ \textcolor{keywordflow}{if}(tickcurrent\%\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga1d42e219765ec526d99e306638ac0023}{LED\_PWM\_TICKS}}\ <\ duty\_crt)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00235}00235\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00236}00236\ \ \ \ \ \ \ HAL\_GPIO\_WritePin(led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}},\ led-\/>\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{LED\_ActiveLvl}});}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00237}00237\ \ \ \ \ \}}
@@ -259,9 +259,9 @@
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00255}00255\ \textcolor{comment}{\ \ *\ @param\ \ SW\_ActiveLevel\ Состояния\ пина,\ когда\ кнопка\ нажата}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00256}00256\ \textcolor{comment}{\ \ *\ @return\ HAL\ Status}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00257}00257\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00258}\mbox{\hyperlink{group___g_p_i_o___s_w_i_t_c_h_gacafee0e68877f2b25df843356871d1f7}{00258}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___s_w_i_t_c_h_gacafee0e68877f2b25df843356871d1f7}{GPIO\_Switch\_Init}}(\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\_SwitchTypeDef}}\ *sw,\ GPIO\_TypeDef\ *GPIOx,\ uint32\_t\ GPIO\_PIN\_X,\ uint8\_t\ SW\_ActiveLevel)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00258}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h_gacafee0e68877f2b25df843356871d1f7}{00258}}\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h_gacafee0e68877f2b25df843356871d1f7}{GPIO\_Switch\_Init}}(\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\_SwitchTypeDef}}\ *sw,\ GPIO\_TypeDef\ *GPIOx,\ uint32\_t\ GPIO\_PIN\_X,\ uint8\_t\ SW\_ActiveLevel)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00259}00259\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00260}00260\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae7d1cbb9075ee4b830342fd564d96be0}{check\_null\_ptr\_2}}(sw,\ GPIOx))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00260}00260\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}{check\_null\_ptr\_3}}(sw,\ GPIOx,\ GPIO\_PIN\_X))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00261}00261\ \ \ \ \ \textcolor{keywordflow}{return}\ HAL\_ERROR;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00262}00262\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00263}00263\ \ \ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{Sw\_Port}}\ \ \ \ \ \ \ =\ GPIOx;}
@@ -273,58 +273,60 @@
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00269}00269\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00270}00270\ \textcolor{comment}{\ \ *\ @brief\ \ Считать\ состоянии\ кнопки\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00271}00271\ \textcolor{comment}{\ \ *\ @param\ \ sw\ \ Указатель\ на\ структуру\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00272}00272\ \textcolor{comment}{\ \ *\ @return\ 1\ -\/\ если\ кнопка\ нажата,\ 0\ -\/\ если\ отжата}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00273}00273\ \textcolor{comment}{\ \ *\ @details\ \ Функция\ включает\ в\ себя\ неблокирующую\ проверку\ на\ дребезг}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00274}00274\ \textcolor{comment}{\ \ *\ Т.е.\ функцию\ надо\ вызывать\ постоянно,\ чтобы\ она\ мониторила\ состояние\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00275}00275\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00276}\mbox{\hyperlink{group___g_p_i_o___s_w_i_t_c_h_ga4b6b8be19a9265bfee6b2bb8a68e988f}{00276}}\ uint8\_t\ \mbox{\hyperlink{group___g_p_i_o___s_w_i_t_c_h_ga4b6b8be19a9265bfee6b2bb8a68e988f}{GPIO\_Read\_Switch}}(\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\_SwitchTypeDef}}\ *sw)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00277}00277\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00278}00278\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga0b75f0bcf066acdf797b8e6730c52f86}{check\_null\_ptr\_1}}(sw))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00279}00279\ \ \ \ \ \textcolor{keywordflow}{return}\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00280}00280\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00281}00281\ \ \ \textcolor{keywordflow}{if}(HAL\_GPIO\_ReadPin(sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{Sw\_Port}},\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{Sw\_Pin}})\ ==\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a4fadf5ead3ebccad521a52c064eeb405}{Sw\_ActiveLvl}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00282}00282\ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00283}00283\ \ \ \ \ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a245f1dc811279ce5d4598582db979a89}{Sw\_PrevState}}\ =\ 1;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00284}00284\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00285}00285\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00286}00286\ \ \ \ \ \textcolor{keywordflow}{if}(sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a2600e599a961af2e280c721894df4c06}{Sw\_FilterDelay}})\ \textcolor{comment}{//\ если\ включена\ защита\ от\ дребезга}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00287}00287\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00288}00288\ \ \ \ \ \ \ \textcolor{keywordflow}{if}(sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a13f97b867ff1a77ef182c9b13d964ca6}{tickprev}}\ ==\ 0)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00289}00289\ \ \ \ \ \ \ \ \ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a13f97b867ff1a77ef182c9b13d964ca6}{tickprev}}\ =\ HAL\_GetTick();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00290}00290\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00291}00291\ \ \ \ \ \ \ \textcolor{keywordflow}{if}((HAL\_GetTick()\ -\/\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a13f97b867ff1a77ef182c9b13d964ca6}{tickprev}})\ >=\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a2600e599a961af2e280c721894df4c06}{Sw\_FilterDelay}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00292}00292\ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00293}00293\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(HAL\_GPIO\_ReadPin(sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{Sw\_Port}},\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{Sw\_Pin}})\ ==\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a4fadf5ead3ebccad521a52c064eeb405}{Sw\_ActiveLvl}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00294}00294\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00295}00295\ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 1;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00296}00296\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00297}00297\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00298}00298\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00299}00299\ \ \ \ \ \ \ \ \ \ \ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a13f97b867ff1a77ef182c9b13d964ca6}{tickprev}}\ =\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00300}00300\ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00301}00301\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00302}00302\ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00303}00303\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00304}00304\ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{comment}{//\ если\ нет\ защиты\ от\ дребезга}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00305}00305\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00306}00306\ \ \ \ \ \ \ \textcolor{keywordflow}{if}(HAL\_GPIO\_ReadPin(sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{Sw\_Port}},\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{Sw\_Pin}})\ ==\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a4fadf5ead3ebccad521a52c064eeb405}{Sw\_ActiveLvl}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00307}00307\ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00308}00308\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 1;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00309}00309\ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00310}00310\ \ \ \ \ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00311}00311\ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00312}00312\ \ \ \ \ \ \ \ \ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a13f97b867ff1a77ef182c9b13d964ca6}{tickprev}}\ =\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00313}00313\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00314}00314\ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00315}00315\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00316}00316\ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00317}00317\ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00318}00318\ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00319}00319\ \ \ \ \ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a245f1dc811279ce5d4598582db979a89}{Sw\_PrevState}}\ =\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00320}00320\ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00321}00321\ \ \ \textcolor{keywordflow}{return}\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00322}00322\ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00323}00323\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/GPIO\ SW\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00324}00324\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00272}00272\ \textcolor{comment}{\ \ *\ @return\ 1\ -\/\ если\ кнопка\ нажата,\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00273}00273\ \textcolor{comment}{\ \ *\ \ \ \ \ \ \ \ \ 0\ -\/\ если\ отжата,\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00274}00274\ \textcolor{comment}{\ \ *\ \ \ \ \ \ \ \ \ -\/1\ -\/\ если\ ошибка}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00275}00275\ \textcolor{comment}{\ \ *\ @details\ \ Функция\ включает\ в\ себя\ неблокирующую\ проверку\ на\ дребезг}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00276}00276\ \textcolor{comment}{\ \ *\ Т.е.\ функцию\ надо\ вызывать\ постоянно,\ чтобы\ она\ мониторила\ состояние\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00277}00277\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00278}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h_ga960b24335b2026abcad126ab8c422d70}{00278}}\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h_ga960b24335b2026abcad126ab8c422d70}{GPIO\_Read\_Switch}}(\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\_SwitchTypeDef}}\ *sw)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00279}00279\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00280}00280\ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}{check\_null\_ptr\_3}}(sw,\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{Sw\_Port}},\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{Sw\_Pin}}))}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00281}00281\ \ \ \ \ \textcolor{keywordflow}{return}\ -\/1;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00282}00282\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00283}00283\ \ \ \textcolor{keywordflow}{if}(HAL\_GPIO\_ReadPin(sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{Sw\_Port}},\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{Sw\_Pin}})\ ==\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a4fadf5ead3ebccad521a52c064eeb405}{Sw\_ActiveLvl}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00284}00284\ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00285}00285\ \ \ \ \ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a245f1dc811279ce5d4598582db979a89}{Sw\_PrevState}}\ =\ 1;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00286}00286\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00287}00287\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00288}00288\ \ \ \ \ \textcolor{keywordflow}{if}(sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a2600e599a961af2e280c721894df4c06}{Sw\_FilterDelay}})\ \textcolor{comment}{//\ если\ включена\ защита\ от\ дребезга}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00289}00289\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00290}00290\ \ \ \ \ \ \ \textcolor{keywordflow}{if}(sw-\/>tickprev\ ==\ 0)}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00291}00291\ \ \ \ \ \ \ \ \ sw-\/>tickprev\ =\ HAL\_GetTick();}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00292}00292\ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00293}00293\ \ \ \ \ \ \ \textcolor{keywordflow}{if}((HAL\_GetTick()\ -\/\ sw-\/>tickprev)\ >=\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a2600e599a961af2e280c721894df4c06}{Sw\_FilterDelay}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00294}00294\ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00295}00295\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(HAL\_GPIO\_ReadPin(sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{Sw\_Port}},\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{Sw\_Pin}})\ ==\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a4fadf5ead3ebccad521a52c064eeb405}{Sw\_ActiveLvl}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00296}00296\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00297}00297\ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 1;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00298}00298\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00299}00299\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00300}00300\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00301}00301\ \ \ \ \ \ \ \ \ \ \ sw-\/>tickprev\ =\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00302}00302\ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00303}00303\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00304}00304\ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00305}00305\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00306}00306\ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{comment}{//\ если\ нет\ защиты\ от\ дребезга}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00307}00307\ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00308}00308\ \ \ \ \ \ \ \textcolor{keywordflow}{if}(HAL\_GPIO\_ReadPin(sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{Sw\_Port}},\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{Sw\_Pin}})\ ==\ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a4fadf5ead3ebccad521a52c064eeb405}{Sw\_ActiveLvl}})}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00309}00309\ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00310}00310\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 1;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00311}00311\ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00312}00312\ \ \ \ \ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00313}00313\ \ \ \ \ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00314}00314\ \ \ \ \ \ \ \ \ sw-\/>tickprev\ =\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00315}00315\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00316}00316\ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00317}00317\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00318}00318\ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00319}00319\ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00320}00320\ \ \ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00321}00321\ \ \ \ \ sw-\/>\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a245f1dc811279ce5d4598582db979a89}{Sw\_PrevState}}\ =\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00322}00322\ \ \ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00323}00323\ \ \ \textcolor{keywordflow}{return}\ 0;}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00324}00324\ \}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00325}00325\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/GPIO\ SW\ FUNCTIONS-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8c_source_l00326}00326\ \textcolor{comment}{//-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}}
\end{DoxyCode}

View File

@@ -2,10 +2,26 @@
\hypertarget{general__gpio_8h}{}\label{general__gpio_8h}\index{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/general\_gpio.h@{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/general\_gpio.h}}
Заголовочный файл для модуля инициализации портов.
Заголовочный файл для модуля инициализации портов и работы с ними.
{\ttfamily \#include "{}mylibs\+\_\+defs.\+h"{}}\newline
Include dependency graph for general\+\_\+gpio.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=229pt]{general__gpio_8h__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{general__gpio_8h__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
@@ -26,44 +42,44 @@ struct \mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\+\_\+\+Switch\+Ty
\begin{DoxyCompactList}\small\item\em Состояние пина при нажатой кнопке \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___g_p_i_o___i_n_i_t_gacd8900c9ec0efde1da3253b718574067}{SW\+\_\+\+OFF}}~0
\begin{DoxyCompactList}\small\item\em Состояние пина при отжатой кнопке \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga34242874b455a72aa6e25841678ed105}{TIM\+\_\+\+Alternate\+\_\+\+Mapping}}(INSTANCE)
\#define \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga580b842096340b066c28b24d6b315be6}{GPIO\+\_\+\+TIM\+\_\+\+Alternate\+\_\+\+Mapping}}(INSTANCE)
\begin{DoxyCompactList}\small\item\em Маппинг альтернативной функции SPI между GPIO. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item
enum \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaac2b90d8b8c9579b6aa5d3bbda9b1ff1}{GPIO\+\_\+\+LEDState\+Type\+Def}} \{ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a74276cd2464314e422e8a144483f74ae}{LED\+\_\+\+IS\+\_\+\+OFF}} = 0
, \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1af6abfb9c5b95abbdb239590f2cd245ea}{LED\+\_\+\+IS\+\_\+\+ON}} = 1
, \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a2445895bed5dcbedc82ea3ef02bec6fb}{LED\+\_\+\+IS\+\_\+\+BLINKING}} = 2
, \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1aa610f6df44c939aa7d45e318036fa03b}{LED\+\_\+\+IS\+\_\+\+FADING}} = 3
enum \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaac2b90d8b8c9579b6aa5d3bbda9b1ff1}{GPIO\+\_\+\+LEDState\+Type\+Def}} \{ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a74276cd2464314e422e8a144483f74ae}{LED\+\_\+\+IS\+\_\+\+OFF}} = 0
, \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1af6abfb9c5b95abbdb239590f2cd245ea}{LED\+\_\+\+IS\+\_\+\+ON}} = 1
, \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a2445895bed5dcbedc82ea3ef02bec6fb}{LED\+\_\+\+IS\+\_\+\+BLINKING}} = 2
, \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1aa610f6df44c939aa7d45e318036fa03b}{LED\+\_\+\+IS\+\_\+\+FADING}} = 3
\}
\begin{DoxyCompactList}\small\item\em Режимы работы светодиода \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\+\_\+\+Clock\+\_\+\+Enable}} (GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\+\_\+\+Clock\+\_\+\+Enable}} (GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx)
\begin{DoxyCompactList}\small\item\em Включить тактирование порта GPIO. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___s_w_i_t_c_h_gacafee0e68877f2b25df843356871d1f7}{GPIO\+\_\+\+Switch\+\_\+\+Init}} (\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\+\_\+\+Switch\+Type\+Def}} \texorpdfstring{$\ast$}{*}sw, GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx, uint32\+\_\+t GPIO\+\_\+\+PIN\+\_\+X, uint8\+\_\+t SW\+\_\+\+On\+\_\+\+State)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h_gacafee0e68877f2b25df843356871d1f7}{GPIO\+\_\+\+Switch\+\_\+\+Init}} (\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\+\_\+\+Switch\+Type\+Def}} \texorpdfstring{$\ast$}{*}sw, GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx, uint32\+\_\+t GPIO\+\_\+\+PIN\+\_\+X, uint8\+\_\+t SW\+\_\+\+On\+\_\+\+State)
\begin{DoxyCompactList}\small\item\em Инициализировать кнопку (структуру кнопки) \end{DoxyCompactList}\item
uint8\+\_\+t \mbox{\hyperlink{group___g_p_i_o___s_w_i_t_c_h_ga4b6b8be19a9265bfee6b2bb8a68e988f}{GPIO\+\_\+\+Read\+\_\+\+Switch}} (\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\+\_\+\+Switch\+Type\+Def}} \texorpdfstring{$\ast$}{*}swstart)
int \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h_ga960b24335b2026abcad126ab8c422d70}{GPIO\+\_\+\+Read\+\_\+\+Switch}} (\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\+\_\+\+Switch\+Type\+Def}} \texorpdfstring{$\ast$}{*}swstart)
\begin{DoxyCompactList}\small\item\em Считать состоянии кнопки \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gac936453c7a0841c0b17bcfdae4958084}{GPIO\+\_\+\+LED\+\_\+\+Init}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx, uint32\+\_\+t GPIO\+\_\+\+PIN\+\_\+X, uint8\+\_\+t LED\+\_\+\+On\+\_\+\+State)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gac936453c7a0841c0b17bcfdae4958084}{GPIO\+\_\+\+LED\+\_\+\+Init}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx, uint32\+\_\+t GPIO\+\_\+\+PIN\+\_\+X, uint8\+\_\+t LED\+\_\+\+On\+\_\+\+State)
\begin{DoxyCompactList}\small\item\em Инициализировать светодиод (структуру светодиода) \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{GPIO\+\_\+\+LED\+\_\+\+On}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{GPIO\+\_\+\+LED\+\_\+\+On}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
\begin{DoxyCompactList}\small\item\em Включить светодиод \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\+\_\+\+LED\+\_\+\+Off}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\+\_\+\+LED\+\_\+\+Off}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
\begin{DoxyCompactList}\small\item\em Выключить светодиод \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gae78b570447d55a462a679a89dbaa8ea2}{GPIO\+\_\+\+LED\+\_\+\+Set}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint8\+\_\+t led\+\_\+state)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gae78b570447d55a462a679a89dbaa8ea2}{GPIO\+\_\+\+LED\+\_\+\+Set}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint8\+\_\+t led\+\_\+state)
\begin{DoxyCompactList}\small\item\em Выставить светодиод по переменной \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaf22f44ecaf6a1932b47edc5a845b03a9}{GPIO\+\_\+\+LED\+\_\+\+Blink\+\_\+\+Start}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint32\+\_\+t period)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaf22f44ecaf6a1932b47edc5a845b03a9}{GPIO\+\_\+\+LED\+\_\+\+Blink\+\_\+\+Start}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint32\+\_\+t period)
\begin{DoxyCompactList}\small\item\em Активировать моргание светодиодом \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaa00f20021781464af3dfe74aa3e59a0a}{GPIO\+\_\+\+LED\+\_\+\+Fading\+\_\+\+Start}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint32\+\_\+t period)
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaa00f20021781464af3dfe74aa3e59a0a}{GPIO\+\_\+\+LED\+\_\+\+Fading\+\_\+\+Start}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led, uint32\+\_\+t period)
\begin{DoxyCompactList}\small\item\em Активировать моргание светодиодом \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gad6e6189824406c4d472b6340c7f19bb2}{GPIO\+\_\+\+LED\+\_\+\+Dynamic\+\_\+\+Handle}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
void \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gad6e6189824406c4d472b6340c7f19bb2}{GPIO\+\_\+\+LED\+\_\+\+Dynamic\+\_\+\+Handle}} (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\+\_\+\+LEDType\+Def}} \texorpdfstring{$\ast$}{*}led)
\begin{DoxyCompactList}\small\item\em Управление динамическими режимами свечения светодиода \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
Заголовочный файл для модуля инициализации портов.
Заголовочный файл для модуля инициализации портов и работы с ними.

View File

@@ -0,0 +1 @@
cc9fcf511dcbb9aee8b46990f6151fda

Binary file not shown.

View File

@@ -0,0 +1 @@
c4bc3b9676509254c26d2cac446951d4

Binary file not shown.

View File

@@ -5,177 +5,185 @@
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00001}00001\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00002}00002\ \textcolor{comment}{**************************************************************************}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00003}00003\ \textcolor{comment}{*\ @file\ general\_gpio.h}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Заголовочный\ файл\ для\ модуля\ инициализации\ портов.}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00004}00004\ \textcolor{comment}{*\ @brief\ Заголовочный\ файл\ для\ модуля\ инициализации\ портов\ и\ работы\ с\ ними.}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00005}00005\ \textcolor{comment}{**************************************************************************}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00006}00006\ \textcolor{comment}{*\ @defgroup\ MY\_LIBS\_GPIO\ \ \ \ \ \ GPIO\ Tools}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00007}00007\ \textcolor{comment}{*\ @ingroup\ \ MYLIBS\_PERIPHERAL}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00008}00008\ \textcolor{comment}{*\ @brief\ \ \ \ Функции\ и\ макросы\ для\ удобной\ работы\ с\ GPIO.}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00009}00009\ \textcolor{comment}{*************************************************************************/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00010}00010\ \textcolor{preprocessor}{\#ifndef\ \_\_GPIO\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00011}00011\ \textcolor{preprocessor}{\#define\ \_\_GPIO\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00012}00012\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00013}00013\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{mylibs__defs_8h}{mylibs\_defs.h}}"{}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00014}00014\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00015}00015\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00016}00016\ \textcolor{comment}{\ \ *\ @addtogroup\ GPIO\_INIT\ Init\ defines}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00017}00017\ \textcolor{comment}{\ \ *\ @ingroup\ \ \ \ GPIO\_GENERAL}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00018}00018\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Настройка\ состояний\ кнопок\ и\ количества\ тиков\ в\ периоде\ ШИМ}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00019}00019\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00020}00020\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00021}00021\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00022}00022\ \textcolor{preprocessor}{\#ifndef\ LED\_PWM\_TICKS}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00023}\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga1d42e219765ec526d99e306638ac0023}{00023}}\ \textcolor{preprocessor}{\#define\ LED\_PWM\_TICKS\ 15\ }\textcolor{comment}{///<\ Количество\ тиков\ в\ периоде\ ШИМ}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00024}00024\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00025}00025\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00026}00026\ \textcolor{preprocessor}{\#ifndef\ LED\_ON}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00027}\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_gaf2e697ac60e05813d45ea2c9c9e79c25}{00027}}\ \textcolor{preprocessor}{\#define\ LED\_ON\ 1\ \ }\textcolor{comment}{///<\ Состояние\ пина\ для\ включения\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00028}00028\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00029}00029\ \textcolor{preprocessor}{\#ifndef\ LED\_OFF}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00030}\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga80700bb63bd56ebabbb4728aa433fd29}{00030}}\ \textcolor{preprocessor}{\#define\ LED\_OFF\ 0\ }\textcolor{comment}{///<\ Состояние\ пина\ для\ выключения\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00031}00031\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00032}00032\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00033}00033\ \textcolor{preprocessor}{\#ifndef\ SW\_ON}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00034}\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga19d9e3aced311179a2914e0c9b13d0f9}{00034}}\ \textcolor{preprocessor}{\#define\ SW\_ON\ 1\ \ \ }\textcolor{comment}{///<\ Состояние\ пина\ при\ нажатой\ кнопке}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00035}00035\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00036}00036\ \textcolor{preprocessor}{\#ifndef\ SW\_OFF}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00037}\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_gacd8900c9ec0efde1da3253b718574067}{00037}}\ \textcolor{preprocessor}{\#define\ SW\_OFF\ 0\ \ }\textcolor{comment}{///<\ Состояние\ пина\ при\ отжатой\ кнопке}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00038}00038\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00039}00039\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00040}00040\ \textcolor{comment}{/**\ GPIO\_INIT}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00041}00041\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00042}00042\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00043}00043\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00044}00044\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00045}00045\ \textcolor{comment}{//\ /**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00046}00046\ \textcolor{comment}{//\ \ \ *\ @brief\ Маппинг\ альтернативной\ функции\ SPI\ между\ GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00047}00047\ \textcolor{comment}{//\ \ \ *\ @ingroup\ \ GPIO\_GENERAL}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00048}00048\ \textcolor{comment}{//\ \ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00049}00049\ \textcolor{comment}{//\ \#define\ SPI\_Alternate\_Mapping(INSTANCE)\ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00050}00050\ \textcolor{comment}{//\ ((((INSTANCE)\ ==\ TIM1)\ \ ||\ ((INSTANCE)\ ==\ TIM2))?\ \ \ \ \ GPIO\_AF1\_TIM1:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00051}00051\ \textcolor{comment}{//\ (((INSTANCE)\ ==\ TIM3)\ \ \ ||\ ((INSTANCE)\ ==\ TIM4)\ \ \ ||\ ((INSTANCE)\ ==\ TIM5))?\ GPIO\_AF2\_TIM3:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00052}00052\ \textcolor{comment}{//\ (((INSTANCE)\ ==\ TIM8)\ \ \ ||\ ((INSTANCE)\ ==\ TIM9)\ \ \ ||\ ((INSTANCE)\ ==\ TIM10)\ ||\ ((INSTANCE)\ ==\ TIM11))?\ GPIO\_AF3\_TIM8:\ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00053}00053\ \textcolor{comment}{//\ (((INSTANCE)\ ==\ TIM12)\ \ ||\ ((INSTANCE)\ ==\ TIM13)\ \ ||\ ((INSTANCE)\ ==\ TIM14))?\ GPIO\_AF9\_TIM12:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00054}00054\ \textcolor{comment}{//\ (0))}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00055}00055\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00056}00056\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00057}00057\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00058}00058\ \textcolor{comment}{\ \ *\ @brief\ Маппинг\ альтернативной\ функции\ TIM\ между\ GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00059}00059\ \textcolor{comment}{\ \ *\ @ingroup\ \ GPIO\_GENERAL}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00060}00060\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00061}\mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga34242874b455a72aa6e25841678ed105}{00061}}\ \textcolor{preprocessor}{\#define\ TIM\_Alternate\_Mapping(INSTANCE)\ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00062}00062\ \textcolor{preprocessor}{((((INSTANCE)\ ==\ TIM1)\ \ ||\ ((INSTANCE)\ ==\ TIM2))?\ GPIO\_AF1\_TIM1:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00063}00063\ \textcolor{preprocessor}{(((INSTANCE)\ ==\ TIM3)\ \ \ ||\ ((INSTANCE)\ ==\ TIM4)\ \ \ ||\ ((INSTANCE)\ ==\ TIM5))?\ GPIO\_AF2\_TIM3:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00064}00064\ \textcolor{preprocessor}{(((INSTANCE)\ ==\ TIM8)\ \ \ ||\ ((INSTANCE)\ ==\ TIM9)\ \ \ ||\ ((INSTANCE)\ ==\ TIM10)\ ||\ ((INSTANCE)\ ==\ TIM11))?\ GPIO\_AF3\_TIM8:\ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00065}00065\ \textcolor{preprocessor}{(((INSTANCE)\ ==\ TIM12)\ \ ||\ ((INSTANCE)\ ==\ TIM13)\ \ ||\ ((INSTANCE)\ ==\ TIM14))?\ GPIO\_AF9\_TIM12:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00066}00066\ \textcolor{preprocessor}{(0))}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00067}00067\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00068}00068\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00069}00069\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00070}00070\ \textcolor{comment}{\ \ *\ @brief\ Режимы\ работы\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00071}00071\ \textcolor{comment}{\ \ *\ @ingroup\ \ GPIO\_LEDS}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00072}00072\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00073}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaac2b90d8b8c9579b6aa5d3bbda9b1ff1}{00073}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00074}00074\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00075}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a74276cd2464314e422e8a144483f74ae}{00075}}\ \ \ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a74276cd2464314e422e8a144483f74ae}{LED\_IS\_OFF}}\ =\ 0,\ \ \ \ \ \ \ \textcolor{comment}{///<\ Светодиод\ выключен}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00076}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1af6abfb9c5b95abbdb239590f2cd245ea}{00076}}\ \ \ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1af6abfb9c5b95abbdb239590f2cd245ea}{LED\_IS\_ON}}\ =\ 1,\ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Светодиод\ включен}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00077}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a2445895bed5dcbedc82ea3ef02bec6fb}{00077}}\ \ \ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a2445895bed5dcbedc82ea3ef02bec6fb}{LED\_IS\_BLINKING}}\ =\ 2,\ \ \textcolor{comment}{///<\ Моргание\ светодиодом}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00078}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1aa610f6df44c939aa7d45e318036fa03b}{00078}}\ \ \ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1aa610f6df44c939aa7d45e318036fa03b}{LED\_IS\_FADING}}\ =\ 3,\ \ \ \ \textcolor{comment}{///<\ Плавное\ моргание\ светодиодом}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00079}00079\ \}\mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaac2b90d8b8c9579b6aa5d3bbda9b1ff1}{GPIO\_LEDStateTypeDef}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00080}00080\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00081}00081\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00082}00082\ \textcolor{comment}{\ \ *\ @brief\ Структура\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00083}00083\ \textcolor{comment}{\ \ *\ @ingroup\ \ GPIO\_LEDS}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00084}00084\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00085}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{00085}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00086}00086\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00087}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{00087}}\ \ \ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaac2b90d8b8c9579b6aa5d3bbda9b1ff1}{GPIO\_LEDStateTypeDef}}\ \mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}};\ \ \ \ \ \textcolor{comment}{///<\ Текущий\ режим\ работы\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00088}00088\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00089}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{00089}}\ \ \ GPIO\_TypeDef\ \ *\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}};\ \ \ \ \ \ \ \ \textcolor{comment}{///<\ GPIO\ порт\ ножки\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00090}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{00090}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}};\ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ GPIO\ пин\ ножки\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00091}00091\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00092}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{00092}}\ \ \ uint8\_t\ \ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{LED\_ActiveLvl}};\ \ \ \ \textcolor{comment}{///<\ Активный\ уровень\ ножки\ (при\ котором\ светодиод\ горит)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00093}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a6cc026931a4681732f9a329ae03098ec}{00093}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a6cc026931a4681732f9a329ae03098ec}{LED\_Period}};\ \ \ \ \ \ \ \textcolor{comment}{///<\ Период\ моргания\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00094}00094\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00095}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a8c43c12787f4a89f4a785f91a979ba68}{00095}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a8c43c12787f4a89f4a785f91a979ba68}{tickprev}};\textcolor{comment}{///<\ Период\ моргания\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00096}00096\ \}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00097}00097\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00098}00098\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00099}00099\ \textcolor{comment}{\ \ *\ @brief\ Структура\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00100}00100\ \textcolor{comment}{\ \ *\ @ingroup\ \ GPIO\_SWITCH}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00101}00101\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00102}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{00102}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00103}00103\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00104}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{00104}}\ \ \ GPIO\_TypeDef\ \ *\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{Sw\_Port}};\ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ GPIO\ порт\ ножки\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00105}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{00105}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{Sw\_Pin}};\ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ GPIO\ пин\ ножки\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00106}00106\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00107}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a4fadf5ead3ebccad521a52c064eeb405}{00107}}\ \ \ uint8\_t\ \ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a4fadf5ead3ebccad521a52c064eeb405}{Sw\_ActiveLvl}};\ \ \ \ \ \textcolor{comment}{///<\ Активный\ уровень\ ножки\ (при\ котором\ кнопка\ нажата)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00108}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a245f1dc811279ce5d4598582db979a89}{00108}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a245f1dc811279ce5d4598582db979a89}{Sw\_PrevState}};\ \ \ \ \ \textcolor{comment}{///<\ Предыдущее\ состояние\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00109}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a2600e599a961af2e280c721894df4c06}{00109}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a2600e599a961af2e280c721894df4c06}{Sw\_FilterDelay}};\ \ \ \textcolor{comment}{///<\ Фильтр\ от\ дребезга\ (в\ мс)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00110}00110\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00111}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a13f97b867ff1a77ef182c9b13d964ca6}{00111}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a13f97b867ff1a77ef182c9b13d964ca6}{tickprev}};\textcolor{comment}{///<\ Период\ моргания\ светодиода\ \ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00112}00112\ \}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\_SwitchTypeDef}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00113}00113\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00114}00114\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00115}00115\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00116}00116\ \textcolor{comment}{///////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\////////////////////////////}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00117}00117\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00118}00118\ \textcolor{comment}{\ \ *\ @addtogroup\ GPIO\_GENERAL\ \ General\ tools}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00119}00119\ \textcolor{comment}{\ \ *\ @ingroup\ \ \ \ MY\_LIBS\_GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00120}00120\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Общие\ функции/макросы\ для\ работы\ с\ GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00121}00121\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00122}00122\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00123}00123\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00124}00124\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(GPIO\_TypeDef\ *GPIOx);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00125}00125\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00126}00126\ \textcolor{comment}{/**\ GPIO\_GENERAL}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00127}00127\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00128}00128\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00129}00129\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00130}00130\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00131}00131\ \textcolor{comment}{*\ @addtogroup\ GPIO\_SWITCH\ \ Switch\ tools}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00132}00132\ \textcolor{comment}{*\ @ingroup\ \ \ \ MY\_LIBS\_GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00133}00133\ \textcolor{comment}{*\ @brief\ \ \ \ \ \ Функции\ для\ работы\ с\ GPIO,\ как\ с\ кнопкой}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00134}00134\ \textcolor{comment}{*\ @\{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00135}00135\ \textcolor{comment}{*/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00136}00136\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00137}00137\ \textcolor{comment}{/*\ Инициализировать\ кнопку\ (структуру\ кнопки)\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00138}00138\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___s_w_i_t_c_h_gacafee0e68877f2b25df843356871d1f7}{GPIO\_Switch\_Init}}(\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\_SwitchTypeDef}}\ *sw,\ GPIO\_TypeDef\ *GPIOx,\ uint32\_t\ GPIO\_PIN\_X,\ uint8\_t\ SW\_On\_State);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00139}00139\ \textcolor{comment}{/*\ Считать\ состоянии\ кнопки\ запуска\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00140}00140\ uint8\_t\ \mbox{\hyperlink{group___g_p_i_o___s_w_i_t_c_h_ga4b6b8be19a9265bfee6b2bb8a68e988f}{GPIO\_Read\_Switch}}(\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\_SwitchTypeDef}}\ *swstart);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00141}00141\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00142}00142\ \textcolor{comment}{/**\ GPIO\_SWITCH}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00143}00143\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00144}00144\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00145}00145\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00146}00146\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00147}00147\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00148}00148\ \textcolor{comment}{\ \ *\ @addtogroup\ GPIO\_LEDS\ \ LED\ tools}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00149}00149\ \textcolor{comment}{\ \ *\ @ingroup\ \ \ \ MY\_LIBS\_GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00150}00150\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Функции\ для\ работы\ с\ GPIO,\ для\ управления\ светодиодом}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00151}00151\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00009}00009\ \textcolor{comment}{*\ @details}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00010}00010\ \textcolor{comment}{Модуль\ предоставляет\ универсальные\ инструменты\ для\ работы\ с\ GPIO):}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00011}00011\ \textcolor{comment}{\ \ -\/\ @ref\ \ MYLIBS\_GPIO\_GENERAL\ —\ инициализация\ и\ общие\ функции\ работы\ с\ портами.}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00012}00012\ \textcolor{comment}{\ \ -\/\ @ref\ \ MYLIBS\_GPIO\_SWITCH\ —\ работа\ с\ GPIO\ как\ с\ кнопкой:\ чтение\ состояния,\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00013}00013\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ фильтрация\ дребезга,\ настройка\ активного\ уровня.}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00014}00014\ \textcolor{comment}{\ \ -\/\ @ref\ \ MYLIBS\_GPIO\_LEDS\ —\ работа\ с\ GPIO\ как\ со\ светодиодом:\ включение,\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00015}00015\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ выключение,\ моргание\ и\ плавное\ затухание.}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00016}00016\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00017}00017\ \textcolor{comment}{*************************************************************************/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00018}00018\ \textcolor{preprocessor}{\#ifndef\ \_\_GPIO\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00019}00019\ \textcolor{preprocessor}{\#define\ \_\_GPIO\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00020}00020\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00021}00021\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{mylibs__defs_8h}{mylibs\_defs.h}}"{}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00022}00022\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00023}00023\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00024}00024\ \textcolor{comment}{\ \ *\ @addtogroup\ GPIO\_INIT\ Init\ defines}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00025}00025\ \textcolor{comment}{\ \ *\ @ingroup\ \ \ \ MYLIBS\_GPIO\_GENERAL}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00026}00026\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Настройка\ состояний\ кнопок\ и\ количества\ тиков\ в\ периоде\ ШИМ}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00027}00027\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00028}00028\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00029}00029\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00030}00030\ \textcolor{preprocessor}{\#ifndef\ LED\_PWM\_TICKS}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00031}\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga1d42e219765ec526d99e306638ac0023}{00031}}\ \textcolor{preprocessor}{\#define\ LED\_PWM\_TICKS\ 15\ }\textcolor{comment}{///<\ Количество\ тиков\ в\ периоде\ ШИМ}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00032}00032\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00033}00033\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00034}00034\ \textcolor{preprocessor}{\#ifndef\ LED\_ON}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00035}\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_gaf2e697ac60e05813d45ea2c9c9e79c25}{00035}}\ \textcolor{preprocessor}{\#define\ LED\_ON\ 1\ \ }\textcolor{comment}{///<\ Состояние\ пина\ для\ включения\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00036}00036\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00037}00037\ \textcolor{preprocessor}{\#ifndef\ LED\_OFF}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00038}\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga80700bb63bd56ebabbb4728aa433fd29}{00038}}\ \textcolor{preprocessor}{\#define\ LED\_OFF\ 0\ }\textcolor{comment}{///<\ Состояние\ пина\ для\ выключения\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00039}00039\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00040}00040\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00041}00041\ \textcolor{preprocessor}{\#ifndef\ SW\_ON}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00042}\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_ga19d9e3aced311179a2914e0c9b13d0f9}{00042}}\ \textcolor{preprocessor}{\#define\ SW\_ON\ 1\ \ \ }\textcolor{comment}{///<\ Состояние\ пина\ при\ нажатой\ кнопке}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00043}00043\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00044}00044\ \textcolor{preprocessor}{\#ifndef\ SW\_OFF}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00045}\mbox{\hyperlink{group___g_p_i_o___i_n_i_t_gacd8900c9ec0efde1da3253b718574067}{00045}}\ \textcolor{preprocessor}{\#define\ SW\_OFF\ 0\ \ }\textcolor{comment}{///<\ Состояние\ пина\ при\ отжатой\ кнопке}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00046}00046\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00047}00047\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00048}00048\ \textcolor{comment}{/**\ GPIO\_INIT}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00049}00049\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00050}00050\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00051}00051\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00052}00052\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00053}00053\ \textcolor{comment}{//\ /**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00054}00054\ \textcolor{comment}{//\ \ \ *\ @brief\ Маппинг\ альтернативной\ функции\ SPI\ между\ GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00055}00055\ \textcolor{comment}{//\ \ \ *\ @ingroup\ \ MYLIBS\_GPIO\_GENERAL}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00056}00056\ \textcolor{comment}{//\ \ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00057}00057\ \textcolor{comment}{//\ \#define\ SPI\_Alternate\_Mapping(INSTANCE)\ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00058}00058\ \textcolor{comment}{//\ ((((INSTANCE)\ ==\ TIM1)\ \ ||\ ((INSTANCE)\ ==\ TIM2))?\ \ \ \ \ GPIO\_AF1\_TIM1:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00059}00059\ \textcolor{comment}{//\ (((INSTANCE)\ ==\ TIM3)\ \ \ ||\ ((INSTANCE)\ ==\ TIM4)\ \ \ ||\ ((INSTANCE)\ ==\ TIM5))?\ GPIO\_AF2\_TIM3:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00060}00060\ \textcolor{comment}{//\ (((INSTANCE)\ ==\ TIM8)\ \ \ ||\ ((INSTANCE)\ ==\ TIM9)\ \ \ ||\ ((INSTANCE)\ ==\ TIM10)\ ||\ ((INSTANCE)\ ==\ TIM11))?\ GPIO\_AF3\_TIM8:\ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00061}00061\ \textcolor{comment}{//\ (((INSTANCE)\ ==\ TIM12)\ \ ||\ ((INSTANCE)\ ==\ TIM13)\ \ ||\ ((INSTANCE)\ ==\ TIM14))?\ GPIO\_AF9\_TIM12:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00062}00062\ \textcolor{comment}{//\ (0))}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00063}00063\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00064}00064\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00065}00065\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00066}00066\ \textcolor{comment}{\ \ *\ @brief\ Маппинг\ альтернативной\ функции\ TIM\ между\ GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00067}00067\ \textcolor{comment}{\ \ *\ @ingroup\ \ MYLIBS\_GPIO\_GENERAL}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00068}00068\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00069}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga580b842096340b066c28b24d6b315be6}{00069}}\ \textcolor{preprocessor}{\#define\ GPIO\_TIM\_Alternate\_Mapping(INSTANCE)\ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00070}00070\ \textcolor{preprocessor}{((((INSTANCE)\ ==\ TIM1)\ \ ||\ ((INSTANCE)\ ==\ TIM2))?\ GPIO\_AF1\_TIM1:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00071}00071\ \textcolor{preprocessor}{(((INSTANCE)\ ==\ TIM3)\ \ \ ||\ ((INSTANCE)\ ==\ TIM4)\ \ \ ||\ ((INSTANCE)\ ==\ TIM5))?\ GPIO\_AF2\_TIM3:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00072}00072\ \textcolor{preprocessor}{(((INSTANCE)\ ==\ TIM8)\ \ \ ||\ ((INSTANCE)\ ==\ TIM9)\ \ \ ||\ ((INSTANCE)\ ==\ TIM10)\ ||\ ((INSTANCE)\ ==\ TIM11))?\ GPIO\_AF3\_TIM8:\ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00073}00073\ \textcolor{preprocessor}{(((INSTANCE)\ ==\ TIM12)\ \ ||\ ((INSTANCE)\ ==\ TIM13)\ \ ||\ ((INSTANCE)\ ==\ TIM14))?\ GPIO\_AF9\_TIM12:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(\backslash\)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00074}00074\ \textcolor{preprocessor}{(0))}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00075}00075\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00076}00076\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00077}00077\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00078}00078\ \textcolor{comment}{\ \ *\ @brief\ Режимы\ работы\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00079}00079\ \textcolor{comment}{\ \ *\ @ingroup\ \ MYLIBS\_GPIO\_LEDS}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00080}00080\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00081}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaac2b90d8b8c9579b6aa5d3bbda9b1ff1}{00081}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00082}00082\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00083}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a74276cd2464314e422e8a144483f74ae}{00083}}\ \ \ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a74276cd2464314e422e8a144483f74ae}{LED\_IS\_OFF}}\ =\ 0,\ \ \ \ \ \ \ \textcolor{comment}{///<\ Светодиод\ выключен}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00084}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1af6abfb9c5b95abbdb239590f2cd245ea}{00084}}\ \ \ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1af6abfb9c5b95abbdb239590f2cd245ea}{LED\_IS\_ON}}\ =\ 1,\ \ \ \ \ \ \ \ \textcolor{comment}{///<\ Светодиод\ включен}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00085}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a2445895bed5dcbedc82ea3ef02bec6fb}{00085}}\ \ \ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1a2445895bed5dcbedc82ea3ef02bec6fb}{LED\_IS\_BLINKING}}\ =\ 2,\ \ \textcolor{comment}{///<\ Моргание\ светодиодом}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00086}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1aa610f6df44c939aa7d45e318036fa03b}{00086}}\ \ \ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ggaac2b90d8b8c9579b6aa5d3bbda9b1ff1aa610f6df44c939aa7d45e318036fa03b}{LED\_IS\_FADING}}\ =\ 3,\ \ \ \ \textcolor{comment}{///<\ Плавное\ моргание\ светодиодом}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00087}00087\ \}\mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaac2b90d8b8c9579b6aa5d3bbda9b1ff1}{GPIO\_LEDStateTypeDef}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00088}00088\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00089}00089\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00090}00090\ \textcolor{comment}{\ \ *\ @brief\ Структура\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00091}00091\ \textcolor{comment}{\ \ *\ @ingroup\ \ MYLIBS\_GPIO\_LEDS}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00092}00092\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00093}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{00093}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00094}00094\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00095}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{00095}}\ \ \ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaac2b90d8b8c9579b6aa5d3bbda9b1ff1}{GPIO\_LEDStateTypeDef}}\ \mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_ad28d93023a00e3c5669bd3deda122435}{state}};\ \ \ \ \ \textcolor{comment}{///<\ Текущий\ режим\ работы\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00096}00096\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00097}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{00097}}\ \ \ GPIO\_TypeDef\ \ *\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a831923d4d157267ecc2f1add1c49adcf}{LED\_Port}};\ \ \ \ \ \ \ \ \textcolor{comment}{///<\ GPIO\ порт\ ножки\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00098}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{00098}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a684ff60e4c94daf2221524cdc6fcc978}{LED\_Pin}};\ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ GPIO\ пин\ ножки\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00099}00099\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00100}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{00100}}\ \ \ uint8\_t\ \ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_abe9aadc0b28d042267f7155e187a1816}{LED\_ActiveLvl}};\ \ \ \ \textcolor{comment}{///<\ Активный\ уровень\ ножки\ (при\ котором\ светодиод\ горит)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00101}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a6cc026931a4681732f9a329ae03098ec}{00101}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def_a6cc026931a4681732f9a329ae03098ec}{LED\_Period}};\ \ \ \ \ \ \ \textcolor{comment}{///<\ Период\ моргания\ светодиода}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00102}00102\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00103}00103\ \ \ uint32\_t\ \ \ \ \ \ tickprev;}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00104}00104\ \}\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00105}00105\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00106}00106\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00107}00107\ \textcolor{comment}{\ \ *\ @brief\ Структура\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00108}00108\ \textcolor{comment}{\ \ *\ @ingroup\ \ MYLIBS\_GPIO\_SWITCH}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00109}00109\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00110}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{00110}}\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00111}00111\ \{}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00112}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{00112}}\ \ \ GPIO\_TypeDef\ \ *\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_afb369df75a6065fd89ac4ba97d98ab1a}{Sw\_Port}};\ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ GPIO\ порт\ ножки\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00113}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{00113}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a63d58d9cba49a5823175585ef2996032}{Sw\_Pin}};\ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{///<\ GPIO\ пин\ ножки\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00114}00114\ \ \ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00115}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a4fadf5ead3ebccad521a52c064eeb405}{00115}}\ \ \ uint8\_t\ \ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a4fadf5ead3ebccad521a52c064eeb405}{Sw\_ActiveLvl}};\ \ \ \ \ \textcolor{comment}{///<\ Активный\ уровень\ ножки\ (при\ котором\ кнопка\ нажата)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00116}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a245f1dc811279ce5d4598582db979a89}{00116}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a245f1dc811279ce5d4598582db979a89}{Sw\_PrevState}};\ \ \ \ \ \textcolor{comment}{///<\ Предыдущее\ состояние\ кнопки}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00117}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a2600e599a961af2e280c721894df4c06}{00117}}\ \ \ uint32\_t\ \ \ \ \ \ \mbox{\hyperlink{struct_g_p_i_o___switch_type_def_a2600e599a961af2e280c721894df4c06}{Sw\_FilterDelay}};\ \ \ \textcolor{comment}{///<\ Фильтр\ от\ дребезга\ (в\ мс)}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00118}00118\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00119}00119\ \ \ uint32\_t\ \ \ \ \ \ tickprev;\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00120}00120\ \}\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\_SwitchTypeDef}};}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00121}00121\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00122}00122\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00123}00123\ \textcolor{comment}{/////////////////////////////////////////////////////////////////////}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00124}00124\ \textcolor{comment}{///////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\////////////////////////////}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00125}00125\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00126}00126\ \textcolor{comment}{\ \ *\ @addtogroup\ MYLIBS\_GPIO\_GENERAL\ \ General\ tools}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00127}00127\ \textcolor{comment}{\ \ *\ @ingroup\ \ \ \ MY\_LIBS\_GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00128}00128\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Общие\ функции/макросы\ для\ работы\ с\ GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00129}00129\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00130}00130\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00131}00131\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00132}00132\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___g_e_n_e_r_a_l_ga962f010f783b81fcdd27eb6b53db28e6}{GPIO\_Clock\_Enable}}(GPIO\_TypeDef\ *GPIOx);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00133}00133\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00134}00134\ \textcolor{comment}{/**\ MYLIBS\_GPIO\_GENERAL}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00135}00135\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00136}00136\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00137}00137\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00138}00138\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00139}00139\ \textcolor{comment}{*\ @addtogroup\ MYLIBS\_GPIO\_SWITCH\ \ Switch\ tools}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00140}00140\ \textcolor{comment}{*\ @ingroup\ \ \ \ MY\_LIBS\_GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00141}00141\ \textcolor{comment}{*\ @brief\ \ \ \ \ \ Функции\ для\ работы\ с\ GPIO,\ как\ с\ кнопкой}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00142}00142\ \textcolor{comment}{*\ @\{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00143}00143\ \textcolor{comment}{*/}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00144}00144\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00145}00145\ \textcolor{comment}{/*\ Инициализировать\ кнопку\ (структуру\ кнопки)\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00146}00146\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h_gacafee0e68877f2b25df843356871d1f7}{GPIO\_Switch\_Init}}(\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\_SwitchTypeDef}}\ *sw,\ GPIO\_TypeDef\ *GPIOx,\ uint32\_t\ GPIO\_PIN\_X,\ uint8\_t\ SW\_On\_State);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00147}00147\ \textcolor{comment}{/*\ Считать\ состоянии\ кнопки\ запуска\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00148}00148\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___s_w_i_t_c_h_ga960b24335b2026abcad126ab8c422d70}{GPIO\_Read\_Switch}}(\mbox{\hyperlink{struct_g_p_i_o___switch_type_def}{GPIO\_SwitchTypeDef}}\ *swstart);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00149}00149\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00150}00150\ \textcolor{comment}{/**\ MYLIBS\_GPIO\_SWITCH}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00151}00151\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00152}00152\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00153}00153\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00154}00154\ \textcolor{comment}{/*\ Инициализировать\ светодиод\ (структуру\ светодиода)\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00155}00155\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gac936453c7a0841c0b17bcfdae4958084}{GPIO\_LED\_Init}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ GPIO\_TypeDef\ *GPIOx,\ uint32\_t\ GPIO\_PIN\_X,\ uint8\_t\ LED\_On\_State);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00156}00156\ \textcolor{comment}{/*\ Включить\ светодиод\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00157}00157\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{GPIO\_LED\_On}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00158}00158\ \textcolor{comment}{/*\ Выключить\ светодиод\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00159}00159\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\_LED\_Off}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00160}00160\ \textcolor{comment}{/*\ Выставить\ светодиод\ по\ переменной\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00161}00161\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gae78b570447d55a462a679a89dbaa8ea2}{GPIO\_LED\_Set}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint8\_t\ led\_state);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00162}00162\ \textcolor{comment}{/*\ Активировать\ моргание\ светодиодом\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00163}00163\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaf22f44ecaf6a1932b47edc5a845b03a9}{GPIO\_LED\_Blink\_Start}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint32\_t\ period);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00164}00164\ \textcolor{comment}{/*\ Активировать\ моргание\ светодиодом\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00165}00165\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gaa00f20021781464af3dfe74aa3e59a0a}{GPIO\_LED\_Fading\_Start}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint32\_t\ period);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00166}00166\ \textcolor{comment}{/*\ Управление\ динамическими\ режимами\ свечения\ светодиода\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00167}00167\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{group___g_p_i_o___l_e_d_s_gad6e6189824406c4d472b6340c7f19bb2}{GPIO\_LED\_Dynamic\_Handle}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00168}00168\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00169}00169\ \textcolor{comment}{/**\ GPIO\_LEDS}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00170}00170\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00171}00171\ \textcolor{comment}{\ \ */}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00172}00172\ \textcolor{comment}{///////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\////////////////////////////}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00173}00173\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00174}00174\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00175}00175\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ \_\_GPIO\_GENERAL\_H\_}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00154}00154\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00155}00155\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00156}00156\ \textcolor{comment}{\ \ *\ @addtogroup\ MYLIBS\_GPIO\_LEDS\ \ LED\ tools}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00157}00157\ \textcolor{comment}{\ \ *\ @ingroup\ \ \ \ MY\_LIBS\_GPIO}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00158}00158\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Функции\ для\ работы\ с\ GPIO,\ для\ управления\ светодиодом}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00159}00159\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00160}00160\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00161}00161\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00162}00162\ \textcolor{comment}{/*\ Инициализировать\ светодиод\ (структуру\ светодиода)\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00163}00163\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gac936453c7a0841c0b17bcfdae4958084}{GPIO\_LED\_Init}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ GPIO\_TypeDef\ *GPIOx,\ uint32\_t\ GPIO\_PIN\_X,\ uint8\_t\ LED\_On\_State);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00164}00164\ \textcolor{comment}{/*\ Включить\ светодиод\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00165}00165\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_ga4b9572949326b050694cd55d0a7e5f6c}{GPIO\_LED\_On}}\ (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00166}00166\ \textcolor{comment}{/*\ Выключить\ светодиод\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00167}00167\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaadda2d4f021390a4e392210a5ace5357}{GPIO\_LED\_Off}}\ (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00168}00168\ \textcolor{comment}{/*\ Выставить\ светодиод\ по\ переменной\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00169}00169\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gae78b570447d55a462a679a89dbaa8ea2}{GPIO\_LED\_Set}}\ (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint8\_t\ led\_state);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00170}00170\ \textcolor{comment}{/*\ Активировать\ моргание\ светодиодом\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00171}00171\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaf22f44ecaf6a1932b47edc5a845b03a9}{GPIO\_LED\_Blink\_Start}}\ (\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint32\_t\ period);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00172}00172\ \textcolor{comment}{/*\ Активировать\ моргание\ светодиодом\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00173}00173\ HAL\_StatusTypeDef\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gaa00f20021781464af3dfe74aa3e59a0a}{GPIO\_LED\_Fading\_Start}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led,\ uint32\_t\ period);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00174}00174\ \textcolor{comment}{/*\ Управление\ динамическими\ режимами\ свечения\ светодиода\ */}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00175}00175\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{group___m_y_l_i_b_s___g_p_i_o___l_e_d_s_gad6e6189824406c4d472b6340c7f19bb2}{GPIO\_LED\_Dynamic\_Handle}}(\mbox{\hyperlink{struct_g_p_i_o___l_e_d_type_def}{GPIO\_LEDTypeDef}}\ *led);}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00176}00176\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00177}00177\ \textcolor{comment}{/**\ MYLIBS\_GPIO\_LEDS}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00178}00178\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00179}00179\ \textcolor{comment}{\ \ */}\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00180}00180\ \textcolor{comment}{///////////////////////////-\/-\/-\/FUNCTIONS-\/-\/-\////////////////////////////}}
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00181}00181\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00182}00182\ }
\DoxyCodeLine{\Hypertarget{general__gpio_8h_source_l00183}00183\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ \_\_GPIO\_GENERAL\_H\_}}
\end{DoxyCode}

View File

@@ -0,0 +1,55 @@
\doxysection{E\+:/.WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Src/general\+\_\+tim.c File Reference}
\hypertarget{general__tim_8c}{}\label{general__tim_8c}\index{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Src/general\_tim.c@{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Src/general\_tim.c}}
Модуль для инициализации таймеров и работы с ними.
{\ttfamily \#include "{}general\+\_\+tim.\+h"{}}\newline
Include dependency graph for general\+\_\+tim.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=229pt]{general__tim_8c__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ga7044214f24a9868ba7e1650b55e639ec}{TIM\+\_\+\+Base\+\_\+\+Init}} (\mbox{\hyperlink{struct_t_i_m___settings_type_def}{TIM\+\_\+\+Settings\+Type\+Def}} \texorpdfstring{$\ast$}{*}stim)
\begin{DoxyCompactList}\small\item\em Инициализация таймера. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___e_n_c_o_d_e_r_ga8d16c3b7e7c6decc54c5c3d1a8bf0fbc}{TIM\+\_\+\+Encoder\+\_\+\+Init}} (\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\+\_\+\+Encoder\+Type\+Def}} \texorpdfstring{$\ast$}{*}henc, TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim)
\begin{DoxyCompactList}\small\item\em Инициализация режима энкодер у таймера. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___o_c_gadb2f465d89f609e035867e980c3a29c6}{TIM\+\_\+\+Output\+\_\+\+PWM\+\_\+\+Init}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim, TIM\+\_\+\+OC\+\_\+\+Init\+Type\+Def \texorpdfstring{$\ast$}{*}s\+Config\+OC, uint32\+\_\+t TIM\+\_\+\+CHANNEL, GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx, uint32\+\_\+t GPIO\+\_\+\+PIN)
\begin{DoxyCompactList}\small\item\em Инициализация выхода ШИМ таймера. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___o_c_gae2608ca8023e9a0713af0b4fbfbc1889}{TIM\+\_\+\+OC\+\_\+\+Comparator\+\_\+\+Init}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim, uint32\+\_\+t TIM\+\_\+\+CHANNEL)
\begin{DoxyCompactList}\small\item\em Инициализация OC компаратора таймера. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___e_n_c_o_d_e_r_gac3bc6525f88c275e47eb864e6d567501}{TIM\+\_\+\+Encoder\+\_\+\+Read}} (\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\+\_\+\+Encoder\+Type\+Def}} \texorpdfstring{$\ast$}{*}henc)
\begin{DoxyCompactList}\small\item\em Считать энкодер. \end{DoxyCompactList}\item
int \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___e_n_c_o_d_e_r_ga117b795017e9e3a357ddefe323412761}{TIM\+\_\+\+Encoder\+\_\+\+Read\+Switch}} (\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\+\_\+\+Encoder\+Type\+Def}} \texorpdfstring{$\ast$}{*}henc)
\begin{DoxyCompactList}\small\item\em Считать кнопку энкодера. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___d_e_l_a_y_ga88c552a133cb6e3015453cccab74c07e}{TIM\+\_\+\+Delay}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim, uint16\+\_\+t delay)
\begin{DoxyCompactList}\small\item\em Задержка в тиках таймера (блокирующая). \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___d_e_l_a_y_ga4c0dfde4e15f677600605348b4e97834}{TIM\+\_\+\+Delay\+\_\+\+Start}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim)
\begin{DoxyCompactList}\small\item\em Начать отсчет неблокирующей задержки. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___d_e_l_a_y_ga108637af414bff3373059273b815ce9b}{TIM\+\_\+\+Delay\+\_\+\+Non\+Blocking}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim, uint16\+\_\+t delay)
\begin{DoxyCompactList}\small\item\em Задержка в тиках таймера (неблокирующая). \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim, \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaeb611874216a4661fb83366b99b9e787}{TIM\+\_\+\+ITMode\+Type\+Def}} it\+\_\+mode)
\begin{DoxyCompactList}\small\item\em Инициализация CLK и NVIC таймеров. \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ga879e3f1c919c02990736730275367115}{TIM\+\_\+\+Base\+\_\+\+Msp\+De\+Init}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim)
\begin{DoxyCompactList}\small\item\em Деинициализация CLK и NVIC таймеров. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
Модуль для инициализации таймеров и работы с ними.
Реализация функций для работы с TIM\+:
\begin{DoxyItemize}
\item Инициализация таймера и его каналов
\item Формирование задержек через таймеры
\item Считывание энкодера
\end{DoxyItemize}
Definition in file \mbox{\hyperlink{general__tim_8c_source}{general\+\_\+tim.\+c}}.

View File

@@ -0,0 +1 @@
018b6018bdcb384d431e75597bba52d4

Binary file not shown.

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,146 @@
\doxysection{E\+:/.WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/general\+\_\+tim.h File Reference}
\hypertarget{general__tim_8h}{}\label{general__tim_8h}\index{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/general\_tim.h@{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibsGeneral/Inc/general\_tim.h}}
Заголовочный файл для модуля инициализации таймеров и работы с ними.
{\ttfamily \#include "{}mylibs\+\_\+defs.\+h"{}}\newline
{\ttfamily \#include "{}general\+\_\+gpio.\+h"{}}\newline
Include dependency graph for general\+\_\+tim.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=229pt]{general__tim_8h__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{general__tim_8h__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
struct \mbox{\hyperlink{struct_t_i_m___settings_type_def}{TIM\+\_\+\+Settings\+Type\+Def}}
\begin{DoxyCompactList}\small\item\em Структура инициализации таймера \end{DoxyCompactList}\item
struct \mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\+\_\+\+Encoder\+Type\+Def}}
\begin{DoxyCompactList}\small\item\em Структура инициализации енкодера \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Macros}
\begin{DoxyCompactItemize}
\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga23382b8f04b3e6db2c59dfa1ef5ea4a2}{HAL\+\_\+\+TIM\+\_\+\+MODULE\+\_\+\+ENABLED}}
\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga54a98c21365e0bc45b81555d2b101f2b}{USE\+\_\+\+TIM1}}
\begin{DoxyCompactList}\small\item\em Включить TIM1 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga72535a44955b43cbcd56e25039ab32eb}{USE\+\_\+\+TIM2}}
\begin{DoxyCompactList}\small\item\em Включить TIM2 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga5b5685a43273b6e37242a4aba3ee0617}{USE\+\_\+\+TIM3}}
\begin{DoxyCompactList}\small\item\em Включить TIM3 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga1493b39c9214501180b81b4c892f9be0}{USE\+\_\+\+TIM4}}
\begin{DoxyCompactList}\small\item\em Включить TIM4 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga252f4fba93fc265110e83760e0590af3}{USE\+\_\+\+TIM5}}
\begin{DoxyCompactList}\small\item\em Включить TIM5 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga8fe31b98160627d19038222910be3f46}{USE\+\_\+\+TIM6}}
\begin{DoxyCompactList}\small\item\em Включить TIM6 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga7cdc54cc8cbbb6e9f60001f1e3e6ec67}{USE\+\_\+\+TIM7}}
\begin{DoxyCompactList}\small\item\em Включить TIM7 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga28ba33d7c6bf22821dafa5bcee4854be}{USE\+\_\+\+TIM8}}
\begin{DoxyCompactList}\small\item\em Включить TIM8 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_gaac627c0e98c9594cc41b1b46eb39e44a}{USE\+\_\+\+TIM9}}
\begin{DoxyCompactList}\small\item\em Включить TIM9 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga98c0691052d1da2c4053dd3586ff7ce9}{USE\+\_\+\+TIM10}}
\begin{DoxyCompactList}\small\item\em Включить TIM10 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga176c97f06ebcf14e06e5c5bdbfac44c2}{USE\+\_\+\+TIM11}}
\begin{DoxyCompactList}\small\item\em Включить TIM11 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga4e2b0e6cdf9eed74581b575c3fd9516b}{USE\+\_\+\+TIM12}}
\begin{DoxyCompactList}\small\item\em Включить TIM12 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_gaf48ef87650517652ddec039a189507ac}{USE\+\_\+\+TIM13}}
\begin{DoxyCompactList}\small\item\em Включить TIM13 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___t_i_m___i_n_i_t_ga9ae40be31d5271abe3e49f896d916d5c}{USE\+\_\+\+TIM14}}
\begin{DoxyCompactList}\small\item\em Включить TIM14 в \doxylink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{general__tim_8h_a867308f75c1be4f2090bcda3bcd900c9}{TIM\+\_\+\+IT\+\_\+\+CONF\+\_\+\+Pos}}~0
\item
\#define \mbox{\hyperlink{general__tim_8h_a8c43257cbfd6ac70b6eb0839e47bbd07}{TIM\+\_\+\+IT\+\_\+\+CONF}}~(1$<$$<$(TIM\+\_\+\+IT\+\_\+\+CONF\+\_\+\+Pos))
\end{DoxyCompactItemize}
\doxysubsubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item
enum \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaeb611874216a4661fb83366b99b9e787}{TIM\+\_\+\+ITMode\+Type\+Def}} \{ \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ggaeb611874216a4661fb83366b99b9e787ab0869828a4dfd62eaa44868ca27835f8}{TIM\+\_\+\+DEFAULT}} = 0
, \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ggaeb611874216a4661fb83366b99b9e787a89ecf1ef6d45ead2efcb7dd30396114c}{TIM\+\_\+\+IT\+\_\+\+MODE}} = (1\texorpdfstring{$<$}{<}\texorpdfstring{$<$}{<}( 0 ))
\}
\begin{DoxyCompactList}\small\item\em Режим прерываний таймера \end{DoxyCompactList}\item
enum \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaa0a51c870325217ac099881f09dd0800}{TIM\+\_\+\+MHz\+Tick\+Base\+Type\+Def}} \{ \newline
\mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ggaa0a51c870325217ac099881f09dd0800ae838122c0e83bc57ad31b546bf2f00e5}{TIM\+\_\+\+Base\+\_\+\+Disable}} = 0
, \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ggaa0a51c870325217ac099881f09dd0800a63df3123d0ddc592b189ed1594456ea2}{TIM\+\_\+\+Tick\+Base\+\_\+1\+US}} = 1
, \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ggaa0a51c870325217ac099881f09dd0800a060b01e890891fd17c8f95b55a94139f}{TIM\+\_\+\+Tick\+Base\+\_\+10\+US}} = 10
, \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ggaa0a51c870325217ac099881f09dd0800a096ef0ab67788487f69d8877c6d89b30}{TIM\+\_\+\+Tick\+Base\+\_\+100\+US}} = 100
, \newline
\mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ggaa0a51c870325217ac099881f09dd0800a6a66c5ed1d966c9e30f0219b664d2b25}{TIM\+\_\+\+Tick\+Base\+\_\+1\+MS}} = 1000
, \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ggaa0a51c870325217ac099881f09dd0800a7421a08abd119e71aa99eea5ab5d6daa}{TIM\+\_\+\+Tick\+Base\+\_\+10\+MS}} = 10000
, \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ggaa0a51c870325217ac099881f09dd0800a18527a2d781eb4365aecd9a3184fc1da}{TIM\+\_\+\+Tick\+Base\+\_\+100\+MS}} = 100000
\}
\begin{DoxyCompactList}\small\item\em Длительность тика таймера (частота тактирования таймера) \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___o_c_gadb2f465d89f609e035867e980c3a29c6}{TIM\+\_\+\+Output\+\_\+\+PWM\+\_\+\+Init}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim, TIM\+\_\+\+OC\+\_\+\+Init\+Type\+Def \texorpdfstring{$\ast$}{*}s\+Config\+OC, uint32\+\_\+t TIM\+\_\+\+CHANNEL, GPIO\+\_\+\+Type\+Def \texorpdfstring{$\ast$}{*}GPIOx, uint32\+\_\+t PWM\+\_\+\+PIN)
\begin{DoxyCompactList}\small\item\em Инициализация выхода ШИМ таймера. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___o_c_gae2608ca8023e9a0713af0b4fbfbc1889}{TIM\+\_\+\+OC\+\_\+\+Comparator\+\_\+\+Init}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim, uint32\+\_\+t TIM\+\_\+\+CHANNEL)
\begin{DoxyCompactList}\small\item\em Инициализация OC компаратора таймера. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___e_n_c_o_d_e_r_ga8d16c3b7e7c6decc54c5c3d1a8bf0fbc}{TIM\+\_\+\+Encoder\+\_\+\+Init}} (\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\+\_\+\+Encoder\+Type\+Def}} \texorpdfstring{$\ast$}{*}henc1, TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim)
\begin{DoxyCompactList}\small\item\em Инициализация режима энкодер у таймера. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___e_n_c_o_d_e_r_gac3bc6525f88c275e47eb864e6d567501}{TIM\+\_\+\+Encoder\+\_\+\+Read}} (\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\+\_\+\+Encoder\+Type\+Def}} \texorpdfstring{$\ast$}{*}henc)
\begin{DoxyCompactList}\small\item\em Считать энкодер. \end{DoxyCompactList}\item
int \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___e_n_c_o_d_e_r_ga117b795017e9e3a357ddefe323412761}{TIM\+\_\+\+Encoder\+\_\+\+Read\+Switch}} (\mbox{\hyperlink{struct_t_i_m___encoder_type_def}{TIM\+\_\+\+Encoder\+Type\+Def}} \texorpdfstring{$\ast$}{*}henc)
\begin{DoxyCompactList}\small\item\em Считать кнопку энкодера. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___d_e_l_a_y_ga4c0dfde4e15f677600605348b4e97834}{TIM\+\_\+\+Delay\+\_\+\+Start}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim)
\begin{DoxyCompactList}\small\item\em Начать отсчет неблокирующей задержки. \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___d_e_l_a_y_ga88c552a133cb6e3015453cccab74c07e}{TIM\+\_\+\+Delay}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim, uint16\+\_\+t delay)
\begin{DoxyCompactList}\small\item\em Задержка в тиках таймера (блокирующая). \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___d_e_l_a_y_ga108637af414bff3373059273b815ce9b}{TIM\+\_\+\+Delay\+\_\+\+Non\+Blocking}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim, uint16\+\_\+t delay)
\begin{DoxyCompactList}\small\item\em Задержка в тиках таймера (неблокирующая). \end{DoxyCompactList}\item
HAL\+\_\+\+Status\+Type\+Def \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ga7044214f24a9868ba7e1650b55e639ec}{TIM\+\_\+\+Base\+\_\+\+Init}} (\mbox{\hyperlink{struct_t_i_m___settings_type_def}{TIM\+\_\+\+Settings\+Type\+Def}} \texorpdfstring{$\ast$}{*}stim)
\begin{DoxyCompactList}\small\item\em Инициализация таймера. \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaad47337be7ba2f6c0777c40d7278c931}{TIM\+\_\+\+Base\+\_\+\+Msp\+Init}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim, \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_gaeb611874216a4661fb83366b99b9e787}{TIM\+\_\+\+ITMode\+Type\+Def}} it\+\_\+mode)
\begin{DoxyCompactList}\small\item\em Инициализация CLK и NVIC таймеров. \end{DoxyCompactList}\item
void \mbox{\hyperlink{group___m_y_l_i_b_s___t_i_m___g_e_n_e_r_a_l_ga879e3f1c919c02990736730275367115}{TIM\+\_\+\+Base\+\_\+\+Msp\+De\+Init}} (TIM\+\_\+\+Handle\+Type\+Def \texorpdfstring{$\ast$}{*}htim)
\begin{DoxyCompactList}\small\item\em Деинициализация CLK и NVIC таймеров. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
Заголовочный файл для модуля инициализации таймеров и работы с ними.
Definition in file \mbox{\hyperlink{general__tim_8h_source}{general\+\_\+tim.\+h}}.
\label{doc-define-members}
\Hypertarget{general__tim_8h_doc-define-members}
\doxysubsection{Macro Definition Documentation}
\Hypertarget{general__tim_8h_a867308f75c1be4f2090bcda3bcd900c9}\index{general\_tim.h@{general\_tim.h}!TIM\_IT\_CONF\_Pos@{TIM\_IT\_CONF\_Pos}}
\index{TIM\_IT\_CONF\_Pos@{TIM\_IT\_CONF\_Pos}!general\_tim.h@{general\_tim.h}}
\doxysubsubsection{\texorpdfstring{TIM\_IT\_CONF\_Pos}{TIM\_IT\_CONF\_Pos}}
{\footnotesize\ttfamily \label{general__tim_8h_a867308f75c1be4f2090bcda3bcd900c9}
\#define TIM\+\_\+\+IT\+\_\+\+CONF\+\_\+\+Pos~0}
Definition at line \mbox{\hyperlink{general__tim_8h_source_l00056}{56}} of file \mbox{\hyperlink{general__tim_8h_source}{general\+\_\+tim.\+h}}.
\Hypertarget{general__tim_8h_a8c43257cbfd6ac70b6eb0839e47bbd07}\index{general\_tim.h@{general\_tim.h}!TIM\_IT\_CONF@{TIM\_IT\_CONF}}
\index{TIM\_IT\_CONF@{TIM\_IT\_CONF}!general\_tim.h@{general\_tim.h}}
\doxysubsubsection{\texorpdfstring{TIM\_IT\_CONF}{TIM\_IT\_CONF}}
{\footnotesize\ttfamily \label{general__tim_8h_a8c43257cbfd6ac70b6eb0839e47bbd07}
\#define TIM\+\_\+\+IT\+\_\+\+CONF~(1$<$$<$(TIM\+\_\+\+IT\+\_\+\+CONF\+\_\+\+Pos))}
Definition at line \mbox{\hyperlink{general__tim_8h_source_l00063}{63}} of file \mbox{\hyperlink{general__tim_8h_source}{general\+\_\+tim.\+h}}.

View File

@@ -0,0 +1 @@
48912ae69413105687efed9fcdd23d2d

Binary file not shown.

View File

@@ -0,0 +1 @@
72b7b62252ba432b33a3132214cb26dd

Binary file not shown.

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
58861c427738147326054c740ac5c202

View File

@@ -5,6 +5,14 @@
Макросы и typedef\textquotesingle{}ы для работы с битами в unsigned типах.
Collaboration diagram for Bit access defines\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=300pt]{group___b_i_t___a_c_c_e_s_s___d_e_f_i_n_e_s}
\end{center}
\end{figure}
\doxysubsubsubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item

View File

@@ -0,0 +1 @@
591a0b98d98294b7a16c22b9669d8b64

Binary file not shown.

View File

@@ -5,6 +5,14 @@
Макросы и определения для работы с задержками в миллисекундах.
Collaboration diagram for Delays defines\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=284pt]{group___d_e_l_a_y_s___d_e_f_i_n_e_s}
\end{center}
\end{figure}
\doxysubsubsubsubsection*{Macros}
\begin{DoxyCompactItemize}
\item
@@ -57,7 +65,7 @@
\end{DoxyNote}
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00082}{82}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00086}{86}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
\Hypertarget{group___d_e_l_a_y_s___d_e_f_i_n_e_s_ga8a5051b1292d1019fe8dd3fc5521ab25}\index{Delays defines@{Delays defines}!msDelayStart@{msDelayStart}}
\index{msDelayStart@{msDelayStart}!Delays defines@{Delays defines}}
@@ -83,7 +91,7 @@ Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00082}{82}} of file
Используется для реализации неблокирующих задержек.
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00094}{94}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00098}{98}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
\Hypertarget{group___d_e_l_a_y_s___d_e_f_i_n_e_s_ga0b97e172659a59ee4fa56f851643ae85}\index{Delays defines@{Delays defines}!msDelayWhileActive@{msDelayWhileActive}}
\index{msDelayWhileActive@{msDelayWhileActive}!Delays defines@{Delays defines}}
@@ -123,7 +131,7 @@ Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00094}{94}} of file
\end{DoxyCode}
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00111}{111}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00115}{115}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
\Hypertarget{group___d_e_l_a_y_s___d_e_f_i_n_e_s_gaed082c07b9fc4d1894330d885b9b5518}\index{Delays defines@{Delays defines}!msDelayWaitDone@{msDelayWaitDone}}
\index{msDelayWaitDone@{msDelayWaitDone}!Delays defines@{Delays defines}}
@@ -163,5 +171,5 @@ Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00111}{111}} of file
\end{DoxyCode}
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00128}{128}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00132}{132}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.

View File

@@ -0,0 +1 @@
e4a53f66d0e2072179f4dedfeba20d50

View File

@@ -5,20 +5,28 @@
Дефайны для обработки ошибок
Collaboration diagram for Error Handler defines\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=311pt]{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s}
\end{center}
\end{figure}
\doxysubsubsubsubsection*{Macros}
\begin{DoxyCompactItemize}
\item
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae110df81afd885a390bbeb152d7b709f}{My\+Libs\+\_\+\+Error\+\_\+\+Handler}}(params)
\begin{DoxyCompactList}\small\item\em Error\+\_\+\+Handler который будет вызыватся в библиотеке \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga0b75f0bcf066acdf797b8e6730c52f86}{check\+\_\+null\+\_\+ptr\+\_\+1}}(\+\_\+p1\+\_\+)
\begin{DoxyCompactList}\small\item\em Проверить указатель на NULL. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae7d1cbb9075ee4b830342fd564d96be0}{check\+\_\+null\+\_\+ptr\+\_\+2}}(\+\_\+p1\+\_\+, \+\_\+p2\+\_\+)
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga5d066a5b9781f9437e75d98677489eb9}{check\+\_\+null\+\_\+ptr\+\_\+1}}(p1)
\begin{DoxyCompactList}\small\item\em Проверить один указатель на NULL. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga27b363f333cacdccc15f5174e096b5b3}{check\+\_\+null\+\_\+ptr\+\_\+2}}(p1, p2)
\begin{DoxyCompactList}\small\item\em Проверить два указателя на NULL. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga002f4a5f5d8bb37d88f607386bc6ba2e}{check\+\_\+null\+\_\+ptr\+\_\+3}}(\+\_\+p1\+\_\+, \+\_\+p2\+\_\+, \+\_\+p3\+\_\+)
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}{check\+\_\+null\+\_\+ptr\+\_\+3}}(p1, p2, p3)
\begin{DoxyCompactList}\small\item\em Проверить три указателя на NULL. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gade91c09d89a5f69003dcfe506ed0327f}{check\+\_\+null\+\_\+ptr\+\_\+4}}(\+\_\+p1\+\_\+, \+\_\+p2\+\_\+, \+\_\+p3\+\_\+, \+\_\+p4\+\_\+)
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga590973be111afc3f9ba15e6939530254}{check\+\_\+null\+\_\+ptr\+\_\+4}}(p1, p2, p3, p4)
\begin{DoxyCompactList}\small\item\em Проверить четыре указателя на NULL. \end{DoxyCompactList}\item
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga944edcd2c65519578d36730b94701f64}{check\+\_\+null\+\_\+ptr\+\_\+5}}(\+\_\+p1\+\_\+, \+\_\+p2\+\_\+, \+\_\+p3\+\_\+, \+\_\+p4\+\_\+, \+\_\+p5\+\_\+)
\#define \mbox{\hyperlink{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gaab0aafd7a4a21ec4f338b19269f65490}{check\+\_\+null\+\_\+ptr\+\_\+5}}(p1, p2, p3, p4, p5)
\begin{DoxyCompactList}\small\item\em Проверить пять указателей на NULL. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsubsubsection*{Functions}
\begin{DoxyCompactItemize}
@@ -55,34 +63,34 @@ Error\+\_\+\+Handler который будет вызыватся в библи
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00031}{31}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
\Hypertarget{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga0b75f0bcf066acdf797b8e6730c52f86}\index{Error Handler defines@{Error Handler defines}!check\_null\_ptr\_1@{check\_null\_ptr\_1}}
\Hypertarget{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga5d066a5b9781f9437e75d98677489eb9}\index{Error Handler defines@{Error Handler defines}!check\_null\_ptr\_1@{check\_null\_ptr\_1}}
\index{check\_null\_ptr\_1@{check\_null\_ptr\_1}!Error Handler defines@{Error Handler defines}}
\doxysubsubsubsubsection{\texorpdfstring{check\_null\_ptr\_1}{check\_null\_ptr\_1}}
{\footnotesize\ttfamily \label{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga0b75f0bcf066acdf797b8e6730c52f86}
\#define check\+\_\+null\+\_\+ptr\+\_\+1(\begin{DoxyParamCaption}\item[{}]{\+\_\+p1\+\_\+}{}\end{DoxyParamCaption})}
{\footnotesize\ttfamily \label{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga5d066a5b9781f9437e75d98677489eb9}
\#define check\+\_\+null\+\_\+ptr\+\_\+1(\begin{DoxyParamCaption}\item[{}]{p1}{}\end{DoxyParamCaption})}
{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{(\_p1\_\ ==\ NULL)}
\DoxyCodeLine{(p1\ ==\ NULL)}
\end{DoxyCode}
Проверить указатель на NULL.
Проверить один указатель на NULL.
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00038}{38}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
\Hypertarget{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae7d1cbb9075ee4b830342fd564d96be0}\index{Error Handler defines@{Error Handler defines}!check\_null\_ptr\_2@{check\_null\_ptr\_2}}
\Hypertarget{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga27b363f333cacdccc15f5174e096b5b3}\index{Error Handler defines@{Error Handler defines}!check\_null\_ptr\_2@{check\_null\_ptr\_2}}
\index{check\_null\_ptr\_2@{check\_null\_ptr\_2}!Error Handler defines@{Error Handler defines}}
\doxysubsubsubsubsection{\texorpdfstring{check\_null\_ptr\_2}{check\_null\_ptr\_2}}
{\footnotesize\ttfamily \label{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gae7d1cbb9075ee4b830342fd564d96be0}
\#define check\+\_\+null\+\_\+ptr\+\_\+2(\begin{DoxyParamCaption}\item[{}]{\+\_\+p1\+\_\+}{, }\item[{}]{\+\_\+p2\+\_\+}{}\end{DoxyParamCaption})}
{\footnotesize\ttfamily \label{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga27b363f333cacdccc15f5174e096b5b3}
\#define check\+\_\+null\+\_\+ptr\+\_\+2(\begin{DoxyParamCaption}\item[{}]{p1}{, }\item[{}]{p2}{}\end{DoxyParamCaption})}
{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{((\_p1\_\ ==\ NULL)\ ||\ (\_p2\_\ ==\ NULL))}
\DoxyCodeLine{((p1\ ==\ NULL)\ ||\ (p1\ !=\ NULL\ \&\&\ p2\ ==\ NULL))}
\end{DoxyCode}
@@ -91,17 +99,17 @@ Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00038}{38}} of file
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00040}{40}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00041}{41}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
\Hypertarget{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga002f4a5f5d8bb37d88f607386bc6ba2e}\index{Error Handler defines@{Error Handler defines}!check\_null\_ptr\_3@{check\_null\_ptr\_3}}
\Hypertarget{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}\index{Error Handler defines@{Error Handler defines}!check\_null\_ptr\_3@{check\_null\_ptr\_3}}
\index{check\_null\_ptr\_3@{check\_null\_ptr\_3}!Error Handler defines@{Error Handler defines}}
\doxysubsubsubsubsection{\texorpdfstring{check\_null\_ptr\_3}{check\_null\_ptr\_3}}
{\footnotesize\ttfamily \label{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga002f4a5f5d8bb37d88f607386bc6ba2e}
\#define check\+\_\+null\+\_\+ptr\+\_\+3(\begin{DoxyParamCaption}\item[{}]{\+\_\+p1\+\_\+}{, }\item[{}]{\+\_\+p2\+\_\+}{, }\item[{}]{\+\_\+p3\+\_\+}{}\end{DoxyParamCaption})}
{\footnotesize\ttfamily \label{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga838b40542faa9aa273d18f921b21fda2}
\#define check\+\_\+null\+\_\+ptr\+\_\+3(\begin{DoxyParamCaption}\item[{}]{p1}{, }\item[{}]{p2}{, }\item[{}]{p3}{}\end{DoxyParamCaption})}
{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{((\_p1\_\ ==\ NULL)\ ||\ (\_p2\_\ ==\ NULL)\ ||\ (\_p3\_\ ==\ NULL))}
\DoxyCodeLine{((p1\ ==\ NULL)\ ||\ (p1\ !=\ NULL\ \&\&\ ((p2\ ==\ NULL)\ ||\ (p2\ !=\ NULL\ \&\&\ p3\ ==\ NULL))))}
\end{DoxyCode}
@@ -110,17 +118,17 @@ Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00040}{40}} of file
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00042}{42}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00044}{44}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
\Hypertarget{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gade91c09d89a5f69003dcfe506ed0327f}\index{Error Handler defines@{Error Handler defines}!check\_null\_ptr\_4@{check\_null\_ptr\_4}}
\Hypertarget{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga590973be111afc3f9ba15e6939530254}\index{Error Handler defines@{Error Handler defines}!check\_null\_ptr\_4@{check\_null\_ptr\_4}}
\index{check\_null\_ptr\_4@{check\_null\_ptr\_4}!Error Handler defines@{Error Handler defines}}
\doxysubsubsubsubsection{\texorpdfstring{check\_null\_ptr\_4}{check\_null\_ptr\_4}}
{\footnotesize\ttfamily \label{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gade91c09d89a5f69003dcfe506ed0327f}
\#define check\+\_\+null\+\_\+ptr\+\_\+4(\begin{DoxyParamCaption}\item[{}]{\+\_\+p1\+\_\+}{, }\item[{}]{\+\_\+p2\+\_\+}{, }\item[{}]{\+\_\+p3\+\_\+}{, }\item[{}]{\+\_\+p4\+\_\+}{}\end{DoxyParamCaption})}
{\footnotesize\ttfamily \label{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga590973be111afc3f9ba15e6939530254}
\#define check\+\_\+null\+\_\+ptr\+\_\+4(\begin{DoxyParamCaption}\item[{}]{p1}{, }\item[{}]{p2}{, }\item[{}]{p3}{, }\item[{}]{p4}{}\end{DoxyParamCaption})}
{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{((\_p1\_\ ==\ NULL)\ ||\ (\_p2\_\ ==\ NULL)\ ||\ (\_p3\_\ ==\ NULL)\ ||\ (\_p4\_\ ==\ NULL))}
\DoxyCodeLine{((p1\ ==\ NULL)\ ||\ (p1\ !=\ NULL\ \&\&\ ((p2\ ==\ NULL)\ ||\ (p2\ !=\ NULL\ \&\&\ ((p3\ ==\ NULL)\ ||\ (p3\ !=\ NULL\ \&\&\ p4\ ==\ NULL))))))}
\end{DoxyCode}
@@ -129,17 +137,17 @@ Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00042}{42}} of file
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00044}{44}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00047}{47}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
\Hypertarget{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga944edcd2c65519578d36730b94701f64}\index{Error Handler defines@{Error Handler defines}!check\_null\_ptr\_5@{check\_null\_ptr\_5}}
\Hypertarget{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gaab0aafd7a4a21ec4f338b19269f65490}\index{Error Handler defines@{Error Handler defines}!check\_null\_ptr\_5@{check\_null\_ptr\_5}}
\index{check\_null\_ptr\_5@{check\_null\_ptr\_5}!Error Handler defines@{Error Handler defines}}
\doxysubsubsubsubsection{\texorpdfstring{check\_null\_ptr\_5}{check\_null\_ptr\_5}}
{\footnotesize\ttfamily \label{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_ga944edcd2c65519578d36730b94701f64}
\#define check\+\_\+null\+\_\+ptr\+\_\+5(\begin{DoxyParamCaption}\item[{}]{\+\_\+p1\+\_\+}{, }\item[{}]{\+\_\+p2\+\_\+}{, }\item[{}]{\+\_\+p3\+\_\+}{, }\item[{}]{\+\_\+p4\+\_\+}{, }\item[{}]{\+\_\+p5\+\_\+}{}\end{DoxyParamCaption})}
{\footnotesize\ttfamily \label{group___e_r_r_o_r___h_a_n_d_l_e_r___d_e_f_i_n_e_s_gaab0aafd7a4a21ec4f338b19269f65490}
\#define check\+\_\+null\+\_\+ptr\+\_\+5(\begin{DoxyParamCaption}\item[{}]{p1}{, }\item[{}]{p2}{, }\item[{}]{p3}{, }\item[{}]{p4}{, }\item[{}]{p5}{}\end{DoxyParamCaption})}
{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{((\_p1\_\ ==\ NULL)\ ||\ (\_p2\_\ ==\ NULL)\ ||\ (\_p3\_\ ==\ NULL)\ ||\ (\_p4\_\ ==\ NULL)\ ||\ (\_p5\_\ ==\ NULL))}
\DoxyCodeLine{((p1\ ==\ NULL)\ ||\ (p1\ !=\ NULL\ \&\&\ ((p2\ ==\ NULL)\ ||\ (p2\ !=\ NULL\ \&\&\ ((p3\ ==\ NULL)\ ||\ (p3\ !=\ NULL\ \&\&\ ((p4\ ==\ NULL)\ ||\ (p4\ !=\ NULL\ \&\&\ p5\ ==\ NULL))))))))}
\end{DoxyCode}
@@ -148,5 +156,5 @@ Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00044}{44}} of file
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00046}{46}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__defs_8h_source_l00050}{50}} of file \mbox{\hyperlink{mylibs__defs_8h_source}{mylibs\+\_\+defs.\+h}}.

View File

@@ -0,0 +1 @@
b3e1b6c0e67365a2d690b83a8c502388

Binary file not shown.

View File

@@ -5,6 +5,14 @@
Настройка состояний кнопок и количества тиков в периоде ШИМ
Collaboration diagram for Init defines\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=254pt]{group___g_p_i_o___i_n_i_t}
\end{center}
\end{figure}
\doxysubsubsubsubsubsubsection*{Macros}
\begin{DoxyCompactItemize}
\item
@@ -40,7 +48,7 @@
Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00023}{23}} of file \mbox{\hyperlink{general__gpio_8h_source}{general\+\_\+gpio.\+h}}.
Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00031}{31}} of file \mbox{\hyperlink{general__gpio_8h_source}{general\+\_\+gpio.\+h}}.
\Hypertarget{group___g_p_i_o___i_n_i_t_gaf2e697ac60e05813d45ea2c9c9e79c25}\index{Init defines@{Init defines}!LED\_ON@{LED\_ON}}
\index{LED\_ON@{LED\_ON}!Init defines@{Init defines}}
@@ -54,7 +62,7 @@ Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00023}{23}} of file
Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00027}{27}} of file \mbox{\hyperlink{general__gpio_8h_source}{general\+\_\+gpio.\+h}}.
Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00035}{35}} of file \mbox{\hyperlink{general__gpio_8h_source}{general\+\_\+gpio.\+h}}.
\Hypertarget{group___g_p_i_o___i_n_i_t_ga80700bb63bd56ebabbb4728aa433fd29}\index{Init defines@{Init defines}!LED\_OFF@{LED\_OFF}}
\index{LED\_OFF@{LED\_OFF}!Init defines@{Init defines}}
@@ -68,7 +76,7 @@ Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00027}{27}} of file
Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00030}{30}} of file \mbox{\hyperlink{general__gpio_8h_source}{general\+\_\+gpio.\+h}}.
Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00038}{38}} of file \mbox{\hyperlink{general__gpio_8h_source}{general\+\_\+gpio.\+h}}.
\Hypertarget{group___g_p_i_o___i_n_i_t_ga19d9e3aced311179a2914e0c9b13d0f9}\index{Init defines@{Init defines}!SW\_ON@{SW\_ON}}
\index{SW\_ON@{SW\_ON}!Init defines@{Init defines}}
@@ -82,7 +90,7 @@ Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00030}{30}} of file
Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00034}{34}} of file \mbox{\hyperlink{general__gpio_8h_source}{general\+\_\+gpio.\+h}}.
Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00042}{42}} of file \mbox{\hyperlink{general__gpio_8h_source}{general\+\_\+gpio.\+h}}.
\Hypertarget{group___g_p_i_o___i_n_i_t_gacd8900c9ec0efde1da3253b718574067}\index{Init defines@{Init defines}!SW\_OFF@{SW\_OFF}}
\index{SW\_OFF@{SW\_OFF}!Init defines@{Init defines}}
@@ -96,5 +104,5 @@ Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00034}{34}} of file
Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00037}{37}} of file \mbox{\hyperlink{general__gpio_8h_source}{general\+\_\+gpio.\+h}}.
Definition at line \mbox{\hyperlink{general__gpio_8h_source_l00045}{45}} of file \mbox{\hyperlink{general__gpio_8h_source}{general\+\_\+gpio.\+h}}.

View File

@@ -0,0 +1 @@
808022049140e07e55939aab8e99f2c8

Binary file not shown.

View File

@@ -2,9 +2,17 @@
\hypertarget{group___l_i_b_s___c_o_n_f_i_g}{}\label{group___l_i_b_s___c_o_n_f_i_g}\index{Libraries configs@{Libraries configs}}
Включенные трекеры и трассировки в МЗКТЭ
Подключение различных модулей библиотеки
Collaboration diagram for Libraries configs\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=253pt]{group___l_i_b_s___c_o_n_f_i_g}
\end{center}
\end{figure}
\doxysubsubsubsubsection*{Macros}
\begin{DoxyCompactItemize}
\item
@@ -19,7 +27,7 @@
\doxysubsubsubsection{Detailed Description}
Включенные трекеры и трассировки в МЗКТЭ
Подключение различных модулей библиотеки
@@ -38,7 +46,7 @@
Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00069}{69}} of file \mbox{\hyperlink{mylibs__config_8h_source}{mylibs\+\_\+config.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00065}{65}} of file \mbox{\hyperlink{mylibs__config_8h_source}{mylibs\+\_\+config.\+h}}.
\Hypertarget{group___l_i_b_s___c_o_n_f_i_g_ga4403055986b70bb02b8d37073a122e32}\index{Libraries configs@{Libraries configs}!INCLUDE\_TRACKERS\_LIB@{INCLUDE\_TRACKERS\_LIB}}
\index{INCLUDE\_TRACKERS\_LIB@{INCLUDE\_TRACKERS\_LIB}!Libraries configs@{Libraries configs}}
@@ -52,7 +60,7 @@ Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00069}{69}} of fil
Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00070}{70}} of file \mbox{\hyperlink{mylibs__config_8h_source}{mylibs\+\_\+config.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00066}{66}} of file \mbox{\hyperlink{mylibs__config_8h_source}{mylibs\+\_\+config.\+h}}.
\Hypertarget{group___l_i_b_s___c_o_n_f_i_g_ga0a3ca94b616997069dd53e2c6c2687d7}\index{Libraries configs@{Libraries configs}!INCLUDE\_TRACE\_LIB@{INCLUDE\_TRACE\_LIB}}
\index{INCLUDE\_TRACE\_LIB@{INCLUDE\_TRACE\_LIB}!Libraries configs@{Libraries configs}}
@@ -66,7 +74,7 @@ Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00070}{70}} of fil
Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00071}{71}} of file \mbox{\hyperlink{mylibs__config_8h_source}{mylibs\+\_\+config.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00067}{67}} of file \mbox{\hyperlink{mylibs__config_8h_source}{mylibs\+\_\+config.\+h}}.
\Hypertarget{group___l_i_b_s___c_o_n_f_i_g_ga181a46326e46b60afb160190832c7281}\index{Libraries configs@{Libraries configs}!INCLUDE\_GENERAL\_PERIPH\_LIBS@{INCLUDE\_GENERAL\_PERIPH\_LIBS}}
\index{INCLUDE\_GENERAL\_PERIPH\_LIBS@{INCLUDE\_GENERAL\_PERIPH\_LIBS}!Libraries configs@{Libraries configs}}
@@ -80,5 +88,5 @@ Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00071}{71}} of fil
Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00072}{72}} of file \mbox{\hyperlink{mylibs__config_8h_source}{mylibs\+\_\+config.\+h}}.
Definition at line \mbox{\hyperlink{mylibs__config_8h_source_l00068}{68}} of file \mbox{\hyperlink{mylibs__config_8h_source}{mylibs\+\_\+config.\+h}}.

Some files were not shown because too many files have changed in this diff Show More