matlab_stm_emulate/DOCS/html/stm32f4xx__matlab__tim_8h_source.html

300 lines
58 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.10.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>STM MATLAB Simulator: F:/Work/Projects/MATLAB/matlab_stm_emulate/MCU_STM32F4xx_Matlab/STM32F4xx_SIMULINK/stm32f4xx_matlab_tim.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript" src="darkmode_toggle.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">STM MATLAB Simulator
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.10.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_9609623a411adcd586e91350a30aa9d5.html">MCU_STM32F4xx_Matlab</a></li><li class="navelem"><a class="el" href="dir_df8c7f866fb3beabf246989867a8aa90.html">STM32F4xx_SIMULINK</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">stm32f4xx_matlab_tim.h</div></div>
</div><!--header-->
<div class="contents">
<a href="stm32f4xx__matlab__tim_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment">**************************************************************************</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment">* @file stm32f4xx_matlab_tim.h</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment">* @brief Заголовочный файл для симулятора таймеров.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment">**************************************************************************</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">@details</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment">Данный файл содержит объявления всякого для симуляции таймеров STM32F407xx.</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment">**************************************************************************/</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#ifndef _MATLAB_TIM_H_</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#define _MATLAB_TIM_H_</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;stm32f4xx_hal.h&quot;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &quot;stm32f4xx_it.h&quot;</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &quot;<a class="code" href="mcu__wrapper__conf_8h.html">mcu_wrapper_conf.h</a>&quot;</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="comment"></span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment">/**</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="comment"> * @addtogroup TIM_SIMULATOR TIM Simulator</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="comment"> * @ingroup MAIN_SIMULATOR</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment"> * @brief Симулятор для таймеров</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment"> * @details Дефайны и функции для симуляции таймеров.</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment"> * @{</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment"> */</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment"></span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="comment">/////////////////////////////---DEFINES---/////////////////////////////</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment"></span><span class="comment">/**</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment"> * @brief Дефайн для сдвига между первой и второй половиной CCMRx регистров</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"> */</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#gae44a51b8c43872a8186ef4740d8f83d4"> 28</a></span><span class="preprocessor">#define TIM_OCMODE_SECOND_SHIFT (TIM_CCMR1_OC2M_Pos - TIM_CCMR1_OC1M_Pos)</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="comment"></span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="comment">/**</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="comment"> * @brief Дефайн для проверки выводить ли канал таймера на GPIO </span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><span class="comment"> * @details Данный дефайн проверяет, настроен ли пин GPIO на альтернативную функцию. Если да - то таймер выводиться на этот пин</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="comment"> */</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"><a class="line" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga332e5c16b48c0bc5a7c1f978442ef49f"> 34</a></span><span class="preprocessor">#define Check_OCx_GPIO_Output(_tims_, _OCx_GPIOx_, _OCx_PIN_SHIFT_) (_tims_-&gt;Channels._OCx_GPIOx_-&gt;MODER &amp; (0b11&lt;&lt;(2*_tims_-&gt;Channels._OCx_PIN_SHIFT_))) == (0b10&lt;&lt;(2*_tims_-&gt;Channels._OCx_PIN_SHIFT_))</span><span class="comment"></span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="comment">/**</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="comment"> * @brief Дефайн для проверки выводить ли канал 1 на GPIO (настроен ли GPIO на альтернативную функцию) </span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="comment"> */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga819ef3dc9ad489178802ed1dcb0e6b41"> 38</a></span><span class="preprocessor">#define Check_OC1_GPIO_Output(_tims_) Check_OCx_GPIO_Output(_tims_, OC1_GPIOx, OC1_PIN_SHIFT)</span><span class="comment"></span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="comment">/**</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="comment"> * @brief Дефайн для проверки выводить ли канал 2 на GPIO (настроен ли GPIO на альтернативную функцию) </span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="comment"> */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#gab05cf435dbdfc0a827fc6cf093d27694"> 42</a></span><span class="preprocessor">#define Check_OC2_GPIO_Output(_tims_) Check_OCx_GPIO_Output(_tims_, OC2_GPIOx, OC2_PIN_SHIFT)</span><span class="comment"></span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="comment">/**</span></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="comment"> * @brief Дефайн для проверки выводить ли канал 3 на GPIO (настроен ли GPIO на альтернативную функцию) </span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="comment"> */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga1303da0a61cb89d0952378d46b1be2a3"> 46</a></span><span class="preprocessor">#define Check_OC3_GPIO_Output(_tims_) Check_OCx_GPIO_Output(_tims_, OC3_GPIOx, OC3_PIN_SHIFT)</span><span class="comment"></span></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="comment">/** </span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="comment"> * @brief Дефайн для проверки выводить ли канал 4 на GPIO (настроен ли GPIO на альтернативную функцию) </span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span><span class="comment"> */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#gadd3fec5a120bcd59e8396435da2cb639"> 50</a></span><span class="preprocessor">#define Check_OC4_GPIO_Output(_tims_) Check_OCx_GPIO_Output(_tims_, OC4_GPIOx, OC4_PIN_SHIFT)</span></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span><span class="comment"></span> </div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><span class="comment">/////////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span><span class="comment"></span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="comment"></span> </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span><span class="comment">///////////////////////////---STRUCTURES---//////////////////////////</span></div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><span class="comment"></span><span class="comment">/**</span></div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span><span class="comment"> * @brief Структура для управления Слейв Таймерами </span></div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><span class="comment"> */</span></div>
<div class="foldopen" id="foldopen00060" data-start="{" data-end="};">
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="struct_slave_channels.html"> 60</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_slave_channels.html">SlaveChannels</a></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span>{</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="struct_slave_channels.html#a1bb1d8089ac5eff5af1df34649b50a94"> 62</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_slave_channels.html#a1bb1d8089ac5eff5af1df34649b50a94">TIM1_TRGO</a> : 1; <span class="comment">///&lt; Синган синхронизации таймера 1</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="struct_slave_channels.html#a7b0ea9ba4357a49b11b9c1ef79252613"> 63</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_slave_channels.html#a7b0ea9ba4357a49b11b9c1ef79252613">TIM2_TRGO</a> : 1; <span class="comment">///&lt; Синган синхронизации таймера 2</span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"><a class="line" href="struct_slave_channels.html#aab5be57f956df4be03effc282a0479e5"> 64</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_slave_channels.html#aab5be57f956df4be03effc282a0479e5">TIM3_TRGO</a> : 1; <span class="comment">///&lt; Синган синхронизации таймера 3</span></div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"><a class="line" href="struct_slave_channels.html#ab9bff03506a4f82f55b13a1065bccaa6"> 65</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_slave_channels.html#ab9bff03506a4f82f55b13a1065bccaa6">TIM4_TRGO</a> : 1; <span class="comment">///&lt; Синган синхронизации таймера 4</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"><a class="line" href="struct_slave_channels.html#a9780a406b85390dddcc18d4c6e606462"> 66</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_slave_channels.html#a9780a406b85390dddcc18d4c6e606462">TIM5_TRGO</a> : 1; <span class="comment">///&lt; Синган синхронизации таймера 5</span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="struct_slave_channels.html#a2b1207a49068c13e3257396b4f369932"> 67</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_slave_channels.html#a2b1207a49068c13e3257396b4f369932">TIM6_TRGO</a> : 1; <span class="comment">///&lt; Синган синхронизации таймера 6</span></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="struct_slave_channels.html#a8a06a1b3f32a6abaf0a7ad38e27cf0e1"> 68</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_slave_channels.html#a8a06a1b3f32a6abaf0a7ad38e27cf0e1">TIM7_TRGO</a> : 1; <span class="comment">///&lt; Синган синхронизации таймера 7</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"><a class="line" href="struct_slave_channels.html#a591c0247b983b782f88fb92aea40f0c7"> 69</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_slave_channels.html#a591c0247b983b782f88fb92aea40f0c7">TIM8_TRGO</a> : 1; <span class="comment">///&lt; Синган синхронизации таймера 8 </span></div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span>};</div>
</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span><span class="comment"></span> </div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span><span class="comment">/**</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span><span class="comment"> * @brief Структура для моделирования каналов таймера </span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span><span class="comment"> */</span></div>
<div class="foldopen" id="foldopen00076" data-start="{" data-end="};">
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"><a class="line" href="struct_channels___sim.html"> 76</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_channels___sim.html">Channels_Sim</a></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span>{</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="comment">// Каналы таймера</span></div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#aae6762f43d55e99c3076c9f7e5cda5d9"> 79</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_channels___sim.html#aae6762f43d55e99c3076c9f7e5cda5d9">OC1REF</a>:1; <span class="comment">///&lt; Первый канал</span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#aa038da4ce5b26f3d86cda283a9cd749e"> 80</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_channels___sim.html#aa038da4ce5b26f3d86cda283a9cd749e">OC2REF</a>:1; <span class="comment">///&lt; Второй канал</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#abbea161f1b685a5d353d453fc9b56284"> 81</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_channels___sim.html#abbea161f1b685a5d353d453fc9b56284">OC3REF</a>:1; <span class="comment">///&lt; Третьий канал</span></div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#a1c6c166d70bfe9597717f6892da4f446"> 82</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="struct_channels___sim.html#a1c6c166d70bfe9597717f6892da4f446">OC4REF</a>:1; <span class="comment">///&lt; Четвертый канал</span></div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> </div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="comment">// связанные с каналами GPIO порты и пины</span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#a48f9b22f7e44d1b56aa793c2344e06d1"> 85</a></span> GPIO_TypeDef *<a class="code hl_variable" href="struct_channels___sim.html#a48f9b22f7e44d1b56aa793c2344e06d1">OC1_GPIOx</a>; <span class="comment">///&lt; Порт первого канала</span></div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#a2d558fbd100d8052eb0e235ad9b1edfe"> 86</a></span> uint32_t <a class="code hl_variable" href="struct_channels___sim.html#a2d558fbd100d8052eb0e235ad9b1edfe">OC1_PIN_SHIFT</a>; <span class="comment">///&lt; Пин первого канала</span></div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> </div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#a095026a66ff13e090dae52ee17263f2d"> 88</a></span> GPIO_TypeDef *<a class="code hl_variable" href="struct_channels___sim.html#a095026a66ff13e090dae52ee17263f2d">OC2_GPIOx</a>; <span class="comment">///&lt; Порт второго канала</span></div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#ac2fdf8c4e985eee4ab2e6c82251c12cf"> 89</a></span> uint32_t <a class="code hl_variable" href="struct_channels___sim.html#ac2fdf8c4e985eee4ab2e6c82251c12cf">OC2_PIN_SHIFT</a>; <span class="comment">///&lt; Пин второго канала</span></div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#a7d239c94641795d3caf5c28f8b7cc68d"> 91</a></span> GPIO_TypeDef *<a class="code hl_variable" href="struct_channels___sim.html#a7d239c94641795d3caf5c28f8b7cc68d">OC3_GPIOx</a>; <span class="comment">///&lt; Порт третьего канала</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#ac15bcebfa2102716c5b6a4f80b2d51ab"> 92</a></span> uint32_t <a class="code hl_variable" href="struct_channels___sim.html#ac15bcebfa2102716c5b6a4f80b2d51ab">OC3_PIN_SHIFT</a>; <span class="comment">///&lt; Пин третьего канала</span></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> </div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#a851558373b04d1a8a5dbb3c0da9279d8"> 94</a></span> GPIO_TypeDef *<a class="code hl_variable" href="struct_channels___sim.html#a851558373b04d1a8a5dbb3c0da9279d8">OC4_GPIOx</a>; <span class="comment">///&lt; Порт четвертого канала</span></div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"><a class="line" href="struct_channels___sim.html#aa87736409f5ca9986200fcb480920c5b"> 95</a></span> uint32_t <a class="code hl_variable" href="struct_channels___sim.html#aa87736409f5ca9986200fcb480920c5b">OC4_PIN_SHIFT</a>; <span class="comment">///&lt; Пин четвертого канала</span></div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> </div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span>};</div>
</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span><span class="comment"></span> </div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span><span class="comment">/**</span></div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span><span class="comment"> * @brief Структура для моделирования таймера </span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span><span class="comment"> */</span></div>
<div class="foldopen" id="foldopen00102" data-start="{" data-end="};">
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"><a class="line" href="struct_t_i_m___sim.html"> 102</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a></div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span>{</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"><a class="line" href="struct_t_i_m___sim.html#a369177ee20a3798f0d7b98cf7c549498"> 104</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="struct_t_i_m___sim.html#a369177ee20a3798f0d7b98cf7c549498">tx_cnt</a>; <span class="comment">///&lt; Счетчик таймера (double, т.к. кол-во тактов за шаг симуляции может быть дробным)</span></div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"><a class="line" href="struct_t_i_m___sim.html#a838a96dee1a1980434ae35295f85141e"> 105</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="struct_t_i_m___sim.html#a838a96dee1a1980434ae35295f85141e">tx_step</a>; <span class="comment">///&lt; Шаг счета за один шаг симуляции (double, т.к. кол-во тактов за шаг симуляции может быть дробным)</span></div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"><a class="line" href="struct_t_i_m___sim.html#a1798863b8849972c8e0cf75abbbd116b"> 106</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="struct_t_i_m___sim.html#a1798863b8849972c8e0cf75abbbd116b">RELOAD</a>; <span class="comment">///&lt; Буфер для периода таймера (для реализации функции PRELOAD)</span></div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"><a class="line" href="struct_t_i_m___sim.html#a41f21d0d1bfe0fb45e3f643ece9cdcee"> 107</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="struct_channels___sim.html">Channels_Sim</a> <a class="code hl_variable" href="struct_t_i_m___sim.html#a41f21d0d1bfe0fb45e3f643ece9cdcee">Channels</a>; <span class="comment">///&lt; Структура для симуляции каналов</span></div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span>};<span class="comment"></span></div>
</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span><span class="comment">/////////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span><span class="comment"></span> </div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> </div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span><span class="comment"></span> </div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span><span class="comment">///////////////////////////---FUNCTIONS---///////////////////////////</span></div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span><span class="comment"></span> </div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span><span class="comment">//----------------------TIMER BASE FUNCTIONS-----------------------//</span></div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span><span class="comment">/* Базовая функция для симуляции таймера: она вызывается каждый шаг симуляции */</span></div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga3fcb4dd48557c21fdd6c379ad16bd229">TIM_Simulation</a>(TIM_TypeDef *TIMx, <span class="keyword">struct</span> <a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a> *TIMS);</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span><span class="comment">/* Счет таймера за один такт */</span></div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga55e7ce9aae452502d5104acbe8fa4237">TIMx_Count</a>(TIM_TypeDef* TIMx, <span class="keyword">struct</span> <a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a>* TIMS);</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span><span class="comment">/* Проверка на переполнение и дальнейшая его обработка */</span></div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga05b798408f2179ae27731f231cf4b620">Overflow_Check</a>(TIM_TypeDef* TIMx, <span class="keyword">struct</span> <a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a>* TIMS);</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span><span class="comment">/* Вызов прерывания */</span></div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#gaa2b3ab4507a894ffa6e4487d42054e67">call_IRQHandller</a>(TIM_TypeDef *TIMx);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span><span class="comment">//-----------------------------------------------------------------//</span></div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> </div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> </div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span><span class="comment">//------------------------CHANNELS FUNCTIONS-----------------------//</span></div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span><span class="comment">/* Симуляция каналов таймера */</span></div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga63dc3b53fe4b165b4c70e4d600258d50">Channels_Simulation</a>(TIM_TypeDef *TIMx, <span class="keyword">struct</span> <a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a> *TIMS);</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span><span class="comment">/*---------------- - CAPTURE COPMARE &amp; PWM FUNCTIONS------------------*/</span></div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span><span class="comment">/* Выбор режима CaptureCompare или PWM и симуляция для каждого канала */</span></div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga609dd2da1a15ffb80256e85942ed2671">CC_PWM_Ch1_Simulation</a>(TIM_TypeDef* TIMx, <span class="keyword">struct</span> <a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a>* TIMS);</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#gaef90da33b410dcd77d9cdb58363d729c">CC_PWM_Ch2_Simulation</a>(TIM_TypeDef* TIMx, <span class="keyword">struct</span> <a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a>* TIMS);</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga99db7a05808ca9b5aa12df01745ed2ef">CC_PWM_Ch3_Simulation</a>(TIM_TypeDef* TIMx, <span class="keyword">struct</span> <a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a>* TIMS);</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#gad51e3fbb47f5768c33876ad803fbef20">CC_PWM_Ch4_Simulation</a>(TIM_TypeDef* TIMx, <span class="keyword">struct</span> <a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a>* TIMS);</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span><span class="comment">/* Запись каналов таймера в порты GPIO */</span></div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga28ab1124ab4cfbd21acb613cb0873d2d">Write_OC_to_GPIO</a>(TIM_TypeDef* TIMx, <span class="keyword">struct</span> <a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a>* TIMS);</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span><span class="comment">/* Запись результата compare в глабальную структуру с TRIGGER OUTPUT */</span></div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga4ac3f9a63d2433519bd5137bab286080">Write_OC_to_TRGO</a>(TIM_TypeDef* TIMx, <span class="keyword">struct</span> <a class="code hl_struct" href="struct_t_i_m___sim.html">TIM_Sim</a>* TIMS);</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span><span class="comment">//------------------------------------------------------------------//</span></div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> </div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> </div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span><span class="comment">//--------------------MISC (temporary) FUNCTIONS--------------------//</span></div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span><span class="comment">/* Определение источника для запуска таймера в SLAVE MODE */</span></div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga60fe7ff05dcbc30ca3c35aa08e87de21">Slave_Mode_Check_Source</a>(TIM_TypeDef* TIMx);</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span><span class="comment">//------------------------------------------------------------------//</span></div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> </div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> </div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span><span class="comment">//------------------------SIMULINK FUNCTIONS------------------------//</span></div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span><span class="comment">// Симулирование выбранных таймеров</span></div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga3128cf64eeea541a8e25a72ce10da335">Simulate_TIMs</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span><span class="comment">// Деинициализирование выбранных таймеров (вызывается в конце симуляции)</span></div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span><span class="keywordtype">void</span> <a class="code hl_function" href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga52ac5ac026ea57787d19cd1a8611abba">TIM_SIM_DEINIT</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span><span class="comment">//------------------------------------------------------------------//</span><span class="comment"></span></div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span><span class="comment">/** TIM_SIMULATOR</span></div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span><span class="comment"> * @}</span></div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span><span class="comment"> */</span></div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span><span class="preprocessor">#endif </span><span class="comment">// _MATLAB_TIM_H_</span></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga05b798408f2179ae27731f231cf4b620"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga05b798408f2179ae27731f231cf4b620">Overflow_Check</a></div><div class="ttdeci">void Overflow_Check(TIM_TypeDef *TIMx, struct TIM_Sim *TIMS)</div><div class="ttdoc">Проверка на переполнение и дальнейшая его обработка.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00080">stm32f4xx_matlab_tim.c:80</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga28ab1124ab4cfbd21acb613cb0873d2d"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga28ab1124ab4cfbd21acb613cb0873d2d">Write_OC_to_GPIO</a></div><div class="ttdeci">void Write_OC_to_GPIO(TIM_TypeDef *TIMx, struct TIM_Sim *TIMS)</div><div class="ttdoc">Запись каналов таймера в порты GPIO.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00330">stm32f4xx_matlab_tim.c:330</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga3128cf64eeea541a8e25a72ce10da335"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga3128cf64eeea541a8e25a72ce10da335">Simulate_TIMs</a></div><div class="ttdeci">void Simulate_TIMs(void)</div><div class="ttdoc">Симуляция выбранных таймеров.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00521">stm32f4xx_matlab_tim.c:521</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga3fcb4dd48557c21fdd6c379ad16bd229"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga3fcb4dd48557c21fdd6c379ad16bd229">TIM_Simulation</a></div><div class="ttdeci">void TIM_Simulation(TIM_TypeDef *TIMx, struct TIM_Sim *TIMS)</div><div class="ttdoc">Симуляция таймера на один такт симуляции.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00028">stm32f4xx_matlab_tim.c:28</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga4ac3f9a63d2433519bd5137bab286080"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga4ac3f9a63d2433519bd5137bab286080">Write_OC_to_TRGO</a></div><div class="ttdeci">void Write_OC_to_TRGO(TIM_TypeDef *TIMx, struct TIM_Sim *TIMS)</div><div class="ttdoc">Запись каналов таймера в глабальную структуру с TRIGGER OUTPUT.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00410">stm32f4xx_matlab_tim.c:410</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga52ac5ac026ea57787d19cd1a8611abba"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga52ac5ac026ea57787d19cd1a8611abba">TIM_SIM_DEINIT</a></div><div class="ttdeci">void TIM_SIM_DEINIT(void)</div><div class="ttdoc">Деинициализирование выбранных таймеров.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00571">stm32f4xx_matlab_tim.c:571</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga55e7ce9aae452502d5104acbe8fa4237"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga55e7ce9aae452502d5104acbe8fa4237">TIMx_Count</a></div><div class="ttdeci">void TIMx_Count(TIM_TypeDef *TIMx, struct TIM_Sim *TIMS)</div><div class="ttdoc">Симуляция счетчика таймера на один такт симуляции.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00063">stm32f4xx_matlab_tim.c:63</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga609dd2da1a15ffb80256e85942ed2671"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga609dd2da1a15ffb80256e85942ed2671">CC_PWM_Ch1_Simulation</a></div><div class="ttdeci">void CC_PWM_Ch1_Simulation(TIM_TypeDef *TIMx, struct TIM_Sim *TIMS)</div><div class="ttdoc">Выбор режима первого канала и его симуляция.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00137">stm32f4xx_matlab_tim.c:137</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga60fe7ff05dcbc30ca3c35aa08e87de21"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga60fe7ff05dcbc30ca3c35aa08e87de21">Slave_Mode_Check_Source</a></div><div class="ttdeci">void Slave_Mode_Check_Source(TIM_TypeDef *TIMx)</div><div class="ttdoc">Определение источника для запуска таймера в SLAVE MODE.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00464">stm32f4xx_matlab_tim.c:464</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga63dc3b53fe4b165b4c70e4d600258d50"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga63dc3b53fe4b165b4c70e4d600258d50">Channels_Simulation</a></div><div class="ttdeci">void Channels_Simulation(TIM_TypeDef *TIMx, struct TIM_Sim *TIMS)</div><div class="ttdoc">Симуляция каналов таймера.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00118">stm32f4xx_matlab_tim.c:118</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_ga99db7a05808ca9b5aa12df01745ed2ef"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#ga99db7a05808ca9b5aa12df01745ed2ef">CC_PWM_Ch3_Simulation</a></div><div class="ttdeci">void CC_PWM_Ch3_Simulation(TIM_TypeDef *TIMx, struct TIM_Sim *TIMS)</div><div class="ttdoc">Выбор режима третьего канала и его симуляция.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00233">stm32f4xx_matlab_tim.c:233</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_gaa2b3ab4507a894ffa6e4487d42054e67"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#gaa2b3ab4507a894ffa6e4487d42054e67">call_IRQHandller</a></div><div class="ttdeci">void call_IRQHandller(TIM_TypeDef *TIMx)</div><div class="ttdoc">Вызов прерывания таймера TIMx.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00665">stm32f4xx_matlab_tim.c:665</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_gad51e3fbb47f5768c33876ad803fbef20"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#gad51e3fbb47f5768c33876ad803fbef20">CC_PWM_Ch4_Simulation</a></div><div class="ttdeci">void CC_PWM_Ch4_Simulation(TIM_TypeDef *TIMx, struct TIM_Sim *TIMS)</div><div class="ttdoc">Выбор режима четвертого канала и его симуляция.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00281">stm32f4xx_matlab_tim.c:281</a></div></div>
<div class="ttc" id="agroup___t_i_m___s_i_m_u_l_a_t_o_r_html_gaef90da33b410dcd77d9cdb58363d729c"><div class="ttname"><a href="group___t_i_m___s_i_m_u_l_a_t_o_r.html#gaef90da33b410dcd77d9cdb58363d729c">CC_PWM_Ch2_Simulation</a></div><div class="ttdeci">void CC_PWM_Ch2_Simulation(TIM_TypeDef *TIMx, struct TIM_Sim *TIMS)</div><div class="ttdoc">Выбор режима второго канала и его симуляция.</div><div class="ttdef"><b>Definition</b> <a href="stm32f4xx__matlab__tim_8c_source.html#l00185">stm32f4xx_matlab_tim.c:185</a></div></div>
<div class="ttc" id="amcu__wrapper__conf_8h_html"><div class="ttname"><a href="mcu__wrapper__conf_8h.html">mcu_wrapper_conf.h</a></div><div class="ttdoc">Заголовочный файл для оболочки МК.</div></div>
<div class="ttc" id="astruct_channels___sim_html"><div class="ttname"><a href="struct_channels___sim.html">Channels_Sim</a></div><div class="ttdoc">Структура для моделирования каналов таймера</div><div class="ttdef"><b>Definition</b> <a href="#l00076">stm32f4xx_matlab_tim.h:77</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_a095026a66ff13e090dae52ee17263f2d"><div class="ttname"><a href="struct_channels___sim.html#a095026a66ff13e090dae52ee17263f2d">Channels_Sim::OC2_GPIOx</a></div><div class="ttdeci">GPIO_TypeDef * OC2_GPIOx</div><div class="ttdoc">Порт второго канала</div><div class="ttdef"><b>Definition</b> <a href="#l00088">stm32f4xx_matlab_tim.h:88</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_a1c6c166d70bfe9597717f6892da4f446"><div class="ttname"><a href="struct_channels___sim.html#a1c6c166d70bfe9597717f6892da4f446">Channels_Sim::OC4REF</a></div><div class="ttdeci">unsigned OC4REF</div><div class="ttdoc">Четвертый канал</div><div class="ttdef"><b>Definition</b> <a href="#l00082">stm32f4xx_matlab_tim.h:82</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_a2d558fbd100d8052eb0e235ad9b1edfe"><div class="ttname"><a href="struct_channels___sim.html#a2d558fbd100d8052eb0e235ad9b1edfe">Channels_Sim::OC1_PIN_SHIFT</a></div><div class="ttdeci">uint32_t OC1_PIN_SHIFT</div><div class="ttdoc">Пин первого канала</div><div class="ttdef"><b>Definition</b> <a href="#l00086">stm32f4xx_matlab_tim.h:86</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_a48f9b22f7e44d1b56aa793c2344e06d1"><div class="ttname"><a href="struct_channels___sim.html#a48f9b22f7e44d1b56aa793c2344e06d1">Channels_Sim::OC1_GPIOx</a></div><div class="ttdeci">GPIO_TypeDef * OC1_GPIOx</div><div class="ttdoc">Порт первого канала</div><div class="ttdef"><b>Definition</b> <a href="#l00085">stm32f4xx_matlab_tim.h:85</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_a7d239c94641795d3caf5c28f8b7cc68d"><div class="ttname"><a href="struct_channels___sim.html#a7d239c94641795d3caf5c28f8b7cc68d">Channels_Sim::OC3_GPIOx</a></div><div class="ttdeci">GPIO_TypeDef * OC3_GPIOx</div><div class="ttdoc">Порт третьего канала</div><div class="ttdef"><b>Definition</b> <a href="#l00091">stm32f4xx_matlab_tim.h:91</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_a851558373b04d1a8a5dbb3c0da9279d8"><div class="ttname"><a href="struct_channels___sim.html#a851558373b04d1a8a5dbb3c0da9279d8">Channels_Sim::OC4_GPIOx</a></div><div class="ttdeci">GPIO_TypeDef * OC4_GPIOx</div><div class="ttdoc">Порт четвертого канала</div><div class="ttdef"><b>Definition</b> <a href="#l00094">stm32f4xx_matlab_tim.h:94</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_aa038da4ce5b26f3d86cda283a9cd749e"><div class="ttname"><a href="struct_channels___sim.html#aa038da4ce5b26f3d86cda283a9cd749e">Channels_Sim::OC2REF</a></div><div class="ttdeci">unsigned OC2REF</div><div class="ttdoc">Второй канал</div><div class="ttdef"><b>Definition</b> <a href="#l00080">stm32f4xx_matlab_tim.h:80</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_aa87736409f5ca9986200fcb480920c5b"><div class="ttname"><a href="struct_channels___sim.html#aa87736409f5ca9986200fcb480920c5b">Channels_Sim::OC4_PIN_SHIFT</a></div><div class="ttdeci">uint32_t OC4_PIN_SHIFT</div><div class="ttdoc">Пин четвертого канала</div><div class="ttdef"><b>Definition</b> <a href="#l00095">stm32f4xx_matlab_tim.h:95</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_aae6762f43d55e99c3076c9f7e5cda5d9"><div class="ttname"><a href="struct_channels___sim.html#aae6762f43d55e99c3076c9f7e5cda5d9">Channels_Sim::OC1REF</a></div><div class="ttdeci">unsigned OC1REF</div><div class="ttdoc">Первый канал</div><div class="ttdef"><b>Definition</b> <a href="#l00079">stm32f4xx_matlab_tim.h:79</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_abbea161f1b685a5d353d453fc9b56284"><div class="ttname"><a href="struct_channels___sim.html#abbea161f1b685a5d353d453fc9b56284">Channels_Sim::OC3REF</a></div><div class="ttdeci">unsigned OC3REF</div><div class="ttdoc">Третьий канал</div><div class="ttdef"><b>Definition</b> <a href="#l00081">stm32f4xx_matlab_tim.h:81</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_ac15bcebfa2102716c5b6a4f80b2d51ab"><div class="ttname"><a href="struct_channels___sim.html#ac15bcebfa2102716c5b6a4f80b2d51ab">Channels_Sim::OC3_PIN_SHIFT</a></div><div class="ttdeci">uint32_t OC3_PIN_SHIFT</div><div class="ttdoc">Пин третьего канала</div><div class="ttdef"><b>Definition</b> <a href="#l00092">stm32f4xx_matlab_tim.h:92</a></div></div>
<div class="ttc" id="astruct_channels___sim_html_ac2fdf8c4e985eee4ab2e6c82251c12cf"><div class="ttname"><a href="struct_channels___sim.html#ac2fdf8c4e985eee4ab2e6c82251c12cf">Channels_Sim::OC2_PIN_SHIFT</a></div><div class="ttdeci">uint32_t OC2_PIN_SHIFT</div><div class="ttdoc">Пин второго канала</div><div class="ttdef"><b>Definition</b> <a href="#l00089">stm32f4xx_matlab_tim.h:89</a></div></div>
<div class="ttc" id="astruct_slave_channels_html"><div class="ttname"><a href="struct_slave_channels.html">SlaveChannels</a></div><div class="ttdoc">Структура для управления Слейв Таймерами</div><div class="ttdef"><b>Definition</b> <a href="#l00060">stm32f4xx_matlab_tim.h:61</a></div></div>
<div class="ttc" id="astruct_slave_channels_html_a1bb1d8089ac5eff5af1df34649b50a94"><div class="ttname"><a href="struct_slave_channels.html#a1bb1d8089ac5eff5af1df34649b50a94">SlaveChannels::TIM1_TRGO</a></div><div class="ttdeci">unsigned TIM1_TRGO</div><div class="ttdoc">Синган синхронизации таймера 1.</div><div class="ttdef"><b>Definition</b> <a href="#l00062">stm32f4xx_matlab_tim.h:62</a></div></div>
<div class="ttc" id="astruct_slave_channels_html_a2b1207a49068c13e3257396b4f369932"><div class="ttname"><a href="struct_slave_channels.html#a2b1207a49068c13e3257396b4f369932">SlaveChannels::TIM6_TRGO</a></div><div class="ttdeci">unsigned TIM6_TRGO</div><div class="ttdoc">Синган синхронизации таймера 6.</div><div class="ttdef"><b>Definition</b> <a href="#l00067">stm32f4xx_matlab_tim.h:67</a></div></div>
<div class="ttc" id="astruct_slave_channels_html_a591c0247b983b782f88fb92aea40f0c7"><div class="ttname"><a href="struct_slave_channels.html#a591c0247b983b782f88fb92aea40f0c7">SlaveChannels::TIM8_TRGO</a></div><div class="ttdeci">unsigned TIM8_TRGO</div><div class="ttdoc">Синган синхронизации таймера 8</div><div class="ttdef"><b>Definition</b> <a href="#l00069">stm32f4xx_matlab_tim.h:69</a></div></div>
<div class="ttc" id="astruct_slave_channels_html_a7b0ea9ba4357a49b11b9c1ef79252613"><div class="ttname"><a href="struct_slave_channels.html#a7b0ea9ba4357a49b11b9c1ef79252613">SlaveChannels::TIM2_TRGO</a></div><div class="ttdeci">unsigned TIM2_TRGO</div><div class="ttdoc">Синган синхронизации таймера 2.</div><div class="ttdef"><b>Definition</b> <a href="#l00063">stm32f4xx_matlab_tim.h:63</a></div></div>
<div class="ttc" id="astruct_slave_channels_html_a8a06a1b3f32a6abaf0a7ad38e27cf0e1"><div class="ttname"><a href="struct_slave_channels.html#a8a06a1b3f32a6abaf0a7ad38e27cf0e1">SlaveChannels::TIM7_TRGO</a></div><div class="ttdeci">unsigned TIM7_TRGO</div><div class="ttdoc">Синган синхронизации таймера 7.</div><div class="ttdef"><b>Definition</b> <a href="#l00068">stm32f4xx_matlab_tim.h:68</a></div></div>
<div class="ttc" id="astruct_slave_channels_html_a9780a406b85390dddcc18d4c6e606462"><div class="ttname"><a href="struct_slave_channels.html#a9780a406b85390dddcc18d4c6e606462">SlaveChannels::TIM5_TRGO</a></div><div class="ttdeci">unsigned TIM5_TRGO</div><div class="ttdoc">Синган синхронизации таймера 5.</div><div class="ttdef"><b>Definition</b> <a href="#l00066">stm32f4xx_matlab_tim.h:66</a></div></div>
<div class="ttc" id="astruct_slave_channels_html_aab5be57f956df4be03effc282a0479e5"><div class="ttname"><a href="struct_slave_channels.html#aab5be57f956df4be03effc282a0479e5">SlaveChannels::TIM3_TRGO</a></div><div class="ttdeci">unsigned TIM3_TRGO</div><div class="ttdoc">Синган синхронизации таймера 3.</div><div class="ttdef"><b>Definition</b> <a href="#l00064">stm32f4xx_matlab_tim.h:64</a></div></div>
<div class="ttc" id="astruct_slave_channels_html_ab9bff03506a4f82f55b13a1065bccaa6"><div class="ttname"><a href="struct_slave_channels.html#ab9bff03506a4f82f55b13a1065bccaa6">SlaveChannels::TIM4_TRGO</a></div><div class="ttdeci">unsigned TIM4_TRGO</div><div class="ttdoc">Синган синхронизации таймера 4.</div><div class="ttdef"><b>Definition</b> <a href="#l00065">stm32f4xx_matlab_tim.h:65</a></div></div>
<div class="ttc" id="astruct_t_i_m___sim_html"><div class="ttname"><a href="struct_t_i_m___sim.html">TIM_Sim</a></div><div class="ttdoc">Структура для моделирования таймера</div><div class="ttdef"><b>Definition</b> <a href="#l00102">stm32f4xx_matlab_tim.h:103</a></div></div>
<div class="ttc" id="astruct_t_i_m___sim_html_a1798863b8849972c8e0cf75abbbd116b"><div class="ttname"><a href="struct_t_i_m___sim.html#a1798863b8849972c8e0cf75abbbd116b">TIM_Sim::RELOAD</a></div><div class="ttdeci">int RELOAD</div><div class="ttdoc">Буфер для периода таймера (для реализации функции PRELOAD)</div><div class="ttdef"><b>Definition</b> <a href="#l00106">stm32f4xx_matlab_tim.h:106</a></div></div>
<div class="ttc" id="astruct_t_i_m___sim_html_a369177ee20a3798f0d7b98cf7c549498"><div class="ttname"><a href="struct_t_i_m___sim.html#a369177ee20a3798f0d7b98cf7c549498">TIM_Sim::tx_cnt</a></div><div class="ttdeci">double tx_cnt</div><div class="ttdoc">Счетчик таймера (double, т.к. кол-во тактов за шаг симуляции может быть дробным)</div><div class="ttdef"><b>Definition</b> <a href="#l00104">stm32f4xx_matlab_tim.h:104</a></div></div>
<div class="ttc" id="astruct_t_i_m___sim_html_a41f21d0d1bfe0fb45e3f643ece9cdcee"><div class="ttname"><a href="struct_t_i_m___sim.html#a41f21d0d1bfe0fb45e3f643ece9cdcee">TIM_Sim::Channels</a></div><div class="ttdeci">struct Channels_Sim Channels</div><div class="ttdoc">Структура для симуляции каналов</div><div class="ttdef"><b>Definition</b> <a href="#l00107">stm32f4xx_matlab_tim.h:107</a></div></div>
<div class="ttc" id="astruct_t_i_m___sim_html_a838a96dee1a1980434ae35295f85141e"><div class="ttname"><a href="struct_t_i_m___sim.html#a838a96dee1a1980434ae35295f85141e">TIM_Sim::tx_step</a></div><div class="ttdeci">double tx_step</div><div class="ttdoc">Шаг счета за один шаг симуляции (double, т.к. кол-во тактов за шаг симуляции может быть дробным)</div><div class="ttdef"><b>Definition</b> <a href="#l00105">stm32f4xx_matlab_tim.h:105</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.10.0
</small></address>
</body>
</html>