1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xmlns="http://www.w3.org/1999/xhtml"> 3<head> 4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> 5<meta http-equiv="X-UA-Compatible" content="IE=9"/> 6<meta name="generator" content="Doxygen 1.8.13"/> 7<meta name="viewport" content="width=device-width, initial-scale=1"/> 8<title>ISSDK: drivers/systick/systick_utils.c File Reference</title> 9<link href="tabs.css" rel="stylesheet" type="text/css"/> 10<script type="text/javascript" src="jquery.js"></script> 11<script type="text/javascript" src="dynsections.js"></script> 12<link href="issdk_stylesheet.css" rel="stylesheet" type="text/css" /> 13</head> 14<body> 15<div id="top"><!-- do not remove this div, it is closed by doxygen! --> 16<div id="titlearea"> 17<table cellspacing="0" cellpadding="0"> 18 <tbody> 19 <tr style="height: 56px;"> 20 <td id="projectlogo"><img alt="Logo" src="nxp_logo_small.png"/></td> 21 <td id="projectalign" style="padding-left: 0.5em;"> 22 <div id="projectname">ISSDK 23  <span id="projectnumber">1.8</span> 24 </div> 25 <div id="projectbrief">IoT Sensing Software Development Kit</div> 26 </td> 27 </tr> 28 </tbody> 29</table> 30</div> 31<!-- end header part --> 32<!-- Generated by Doxygen 1.8.13 --> 33<script type="text/javascript" src="menudata.js"></script> 34<script type="text/javascript" src="menu.js"></script> 35<script type="text/javascript"> 36$(function() { 37 initMenu('',false,false,'search.php','Search'); 38}); 39</script> 40<div id="main-nav"></div> 41<div id="nav-path" class="navpath"> 42 <ul> 43<li class="navelem"><a class="el" href="dir_14bc92f4b96c8519b376567118ac28b3.html">drivers</a></li><li class="navelem"><a class="el" href="dir_f670b913935809da779923b5e12832cc.html">systick</a></li> </ul> 44</div> 45</div><!-- top --> 46<div class="header"> 47 <div class="summary"> 48<a href="#define-members">Macros</a> | 49<a href="#func-members">Functions</a> | 50<a href="#var-members">Variables</a> </div> 51 <div class="headertitle"> 52<div class="title">systick_utils.c File Reference</div> </div> 53</div><!--header--> 54<div class="contents"> 55 56<p>Encapsulates the ARM sysTick counter, which is used for computing delays. ARM-core specific function that enables the ARM systick timer on Kinetis uCs. the timer is 24 bit so allows measurement of intervals up to 2^24/CORE_SYSTICK_HZ secs=0.35s for a 48MHz uC. 57<a href="#details">More...</a></p> 58<div class="textblock"><code>#include "issdk_hal.h"</code><br /> 59</div><div class="textblock"><div class="dynheader"> 60Include dependency graph for systick_utils.c:</div> 61<div class="dyncontent"> 62<div class="center"><img src="a00531.png" border="0" usemap="#drivers_2systick_2systick__utils_8c" alt=""/></div> 63</div> 64</div> 65<p><a href="a00530_source.html">Go to the source code of this file.</a></p> 66<table class="memberdecls"> 67<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a> 68Macros</h2></td></tr> 69<tr class="memitem:ab26b3fc75982181f81b185b206e897f6"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#ab26b3fc75982181f81b185b206e897f6">SYST_CSR</a>   SysTick->CTRL</td></tr> 70<tr class="separator:ab26b3fc75982181f81b185b206e897f6"><td class="memSeparator" colspan="2"> </td></tr> 71<tr class="memitem:a4e8efcc1f2b551dbf3cb0aae1231e380"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#a4e8efcc1f2b551dbf3cb0aae1231e380">SYST_RVR</a>   SysTick->LOAD</td></tr> 72<tr class="separator:a4e8efcc1f2b551dbf3cb0aae1231e380"><td class="memSeparator" colspan="2"> </td></tr> 73<tr class="memitem:ae3dc4d2dbfdf38c593a5581415fecfed"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#ae3dc4d2dbfdf38c593a5581415fecfed">SYST_CVR</a>   SysTick->VAL</td></tr> 74<tr class="separator:ae3dc4d2dbfdf38c593a5581415fecfed"><td class="memSeparator" colspan="2"> </td></tr> 75</table><table class="memberdecls"> 76<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> 77Functions</h2></td></tr> 78<tr class="memitem:ab5e09814056d617c521549e542639b7e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#ab5e09814056d617c521549e542639b7e">SysTick_Handler</a> (void)</td></tr> 79<tr class="separator:ab5e09814056d617c521549e542639b7e"><td class="memSeparator" colspan="2"> </td></tr> 80<tr class="memitem:ad43629969994e92bd3620e630bda24c8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#ad43629969994e92bd3620e630bda24c8">BOARD_SystickEnable</a> (void)</td></tr> 81<tr class="memdesc:ad43629969994e92bd3620e630bda24c8"><td class="mdescLeft"> </td><td class="mdescRight">Function to enable systicks framework. <a href="#ad43629969994e92bd3620e630bda24c8">More...</a><br /></td></tr> 82<tr class="separator:ad43629969994e92bd3620e630bda24c8"><td class="memSeparator" colspan="2"> </td></tr> 83<tr class="memitem:ac4471deeef0c2a93b7d4263259b0ed63"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#ac4471deeef0c2a93b7d4263259b0ed63">BOARD_SystickStart</a> (<a class="el" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f">int32_t</a> *pStart)</td></tr> 84<tr class="memdesc:ac4471deeef0c2a93b7d4263259b0ed63"><td class="mdescLeft"> </td><td class="mdescRight">Function to Record the Start systick. <a href="#ac4471deeef0c2a93b7d4263259b0ed63">More...</a><br /></td></tr> 85<tr class="separator:ac4471deeef0c2a93b7d4263259b0ed63"><td class="memSeparator" colspan="2"> </td></tr> 86<tr class="memitem:a5526698540030255f601fc77e6e80bda"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f">int32_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#a5526698540030255f601fc77e6e80bda">BOARD_SystickElapsedTicks</a> (<a class="el" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f">int32_t</a> *pStart)</td></tr> 87<tr class="memdesc:a5526698540030255f601fc77e6e80bda"><td class="mdescLeft"> </td><td class="mdescRight">Function to compute the Elapsed systicks. <a href="#a5526698540030255f601fc77e6e80bda">More...</a><br /></td></tr> 88<tr class="separator:a5526698540030255f601fc77e6e80bda"><td class="memSeparator" colspan="2"> </td></tr> 89<tr class="memitem:a85a32737b730fbb713ec910e1ad17c74"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#a85a32737b730fbb713ec910e1ad17c74">BOARD_SystickElapsedTime_us</a> (<a class="el" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f">int32_t</a> *pStart)</td></tr> 90<tr class="memdesc:a85a32737b730fbb713ec910e1ad17c74"><td class="mdescLeft"> </td><td class="mdescRight">Function to compute the Elapsed Time. <a href="#a85a32737b730fbb713ec910e1ad17c74">More...</a><br /></td></tr> 91<tr class="separator:a85a32737b730fbb713ec910e1ad17c74"><td class="memSeparator" colspan="2"> </td></tr> 92<tr class="memitem:ab052b802081fd87e1bda8d56e2c0db42"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#ab052b802081fd87e1bda8d56e2c0db42">BOARD_DELAY_ms</a> (uint32_t delay_ms)</td></tr> 93<tr class="memdesc:ab052b802081fd87e1bda8d56e2c0db42"><td class="mdescLeft"> </td><td class="mdescRight">Function to insert delays. <a href="#ab052b802081fd87e1bda8d56e2c0db42">More...</a><br /></td></tr> 94<tr class="separator:ab052b802081fd87e1bda8d56e2c0db42"><td class="memSeparator" colspan="2"> </td></tr> 95</table><table class="memberdecls"> 96<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a> 97Variables</h2></td></tr> 98<tr class="memitem:ac2d41df1a7ed0204bf5ff703fe298d0d"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#ac2d41df1a7ed0204bf5ff703fe298d0d">g_ovf_stamp</a></td></tr> 99<tr class="separator:ac2d41df1a7ed0204bf5ff703fe298d0d"><td class="memSeparator" colspan="2"> </td></tr> 100<tr class="memitem:a9f513763df42a1ba7bb6955361e29707"><td class="memItemLeft" align="right" valign="top">volatile uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00530.html#a9f513763df42a1ba7bb6955361e29707">g_ovf_counter</a> = 0</td></tr> 101<tr class="separator:a9f513763df42a1ba7bb6955361e29707"><td class="memSeparator" colspan="2"> </td></tr> 102</table> 103<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> 104<div class="textblock"><p>Encapsulates the ARM sysTick counter, which is used for computing delays. ARM-core specific function that enables the ARM systick timer on Kinetis uCs. the timer is 24 bit so allows measurement of intervals up to 2^24/CORE_SYSTICK_HZ secs=0.35s for a 48MHz uC. </p> 105 106<p class="definition">Definition in file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 107</div><h2 class="groupheader">Macro Definition Documentation</h2> 108<a id="ab26b3fc75982181f81b185b206e897f6"></a> 109<h2 class="memtitle"><span class="permalink"><a href="#ab26b3fc75982181f81b185b206e897f6">◆ </a></span>SYST_CSR</h2> 110 111<div class="memitem"> 112<div class="memproto"> 113 <table class="memname"> 114 <tr> 115 <td class="memname">#define SYST_CSR   SysTick->CTRL</td> 116 </tr> 117 </table> 118</div><div class="memdoc"> 119 120<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00019">19</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 121 122<p class="reference">Referenced by <a class="el" href="a00530_source.html#l00035">BOARD_SystickEnable()</a>.</p> 123 124</div> 125</div> 126<a id="ae3dc4d2dbfdf38c593a5581415fecfed"></a> 127<h2 class="memtitle"><span class="permalink"><a href="#ae3dc4d2dbfdf38c593a5581415fecfed">◆ </a></span>SYST_CVR</h2> 128 129<div class="memitem"> 130<div class="memproto"> 131 <table class="memname"> 132 <tr> 133 <td class="memname">#define SYST_CVR   SysTick->VAL</td> 134 </tr> 135 </table> 136</div><div class="memdoc"> 137 138<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00021">21</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 139 140<p class="reference">Referenced by <a class="el" href="a00530_source.html#l00052">BOARD_SystickElapsedTicks()</a>, and <a class="el" href="a00530_source.html#l00044">BOARD_SystickStart()</a>.</p> 141 142</div> 143</div> 144<a id="a4e8efcc1f2b551dbf3cb0aae1231e380"></a> 145<h2 class="memtitle"><span class="permalink"><a href="#a4e8efcc1f2b551dbf3cb0aae1231e380">◆ </a></span>SYST_RVR</h2> 146 147<div class="memitem"> 148<div class="memproto"> 149 <table class="memname"> 150 <tr> 151 <td class="memname">#define SYST_RVR   SysTick->LOAD</td> 152 </tr> 153 </table> 154</div><div class="memdoc"> 155 156<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00020">20</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 157 158<p class="reference">Referenced by <a class="el" href="a00530_source.html#l00052">BOARD_SystickElapsedTicks()</a>, and <a class="el" href="a00530_source.html#l00035">BOARD_SystickEnable()</a>.</p> 159 160</div> 161</div> 162<h2 class="groupheader">Function Documentation</h2> 163<a id="ab052b802081fd87e1bda8d56e2c0db42"></a> 164<h2 class="memtitle"><span class="permalink"><a href="#ab052b802081fd87e1bda8d56e2c0db42">◆ </a></span>BOARD_DELAY_ms()</h2> 165 166<div class="memitem"> 167<div class="memproto"> 168 <table class="memname"> 169 <tr> 170 <td class="memname">void BOARD_DELAY_ms </td> 171 <td>(</td> 172 <td class="paramtype">uint32_t </td> 173 <td class="paramname"><em>delay_ms</em></td><td>)</td> 174 <td></td> 175 </tr> 176 </table> 177</div><div class="memdoc"> 178 179<p>Function to insert delays. </p> 180<p>This function blocks for the specified milli seconds by using the elapsed systicks to determine time delays. </p><dl class="params"><dt>Parameters</dt><dd> 181 <table class="params"> 182 <tr><td class="paramdir">[in]</td><td class="paramname">delay_ms</td><td>The required time to block. </td></tr> 183 </table> 184 </dd> 185</dl> 186<dl class="section return"><dt>Returns</dt><dd>void. </dd></dl> 187<dl class="section user"><dt>Constraints:</dt><dd>None. Yes </dd></dl> 188 189<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00081">81</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 190 191<p class="reference">References <a class="el" href="a00530_source.html#l00052">BOARD_SystickElapsedTicks()</a>, <a class="el" href="a00530_source.html#l00044">BOARD_SystickStart()</a>, and <a class="el" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f">int32_t()</a>.</p> 192 193<p class="reference">Referenced by <a class="el" href="a00542_source.html#l00805">ADS_DetectShield()</a>, <a class="el" href="a00542_source.html#l00665">ADS_MMA9553Query()</a>, <a class="el" href="a00038_source.html#l00068">FXLC95000_SPI_Initialize()</a>, <a class="el" href="a00056_source.html#l00360">FXLS8962_I2C_DeInit()</a>, <a class="el" href="a00056_source.html#l00205">FXLS8962_SPI_Deinit()</a>, <a class="el" href="a00065_source.html#l00359">FXLS896x_I2C_DeInit()</a>, <a class="el" href="a00065_source.html#l00204">FXLS896x_SPI_Deinit()</a>, <a class="el" href="a00074_source.html#l00359">FXLS8974_I2C_DeInit()</a>, <a class="el" href="a00074_source.html#l00204">FXLS8974_SPI_Deinit()</a>, <a class="el" href="a00152_source.html#l00369">MMA9553_I2C_Initialize()</a>, <a class="el" href="a00152_source.html#l00157">MMA9553_SPI_Initialize()</a>, <a class="el" href="a00338_source.html#l00911">perform_selftest()</a>, <a class="el" href="a00182_source.html#l00024">Sensor_I2C_BlockWrite()</a>, and <a class="el" href="a00188_source.html#l00024">Sensor_SPI_BlockWrite()</a>.</p> 194<div class="dynheader"> 195Here is the call graph for this function:</div> 196<div class="dyncontent"> 197<div class="center"><img src="a00530_ab052b802081fd87e1bda8d56e2c0db42_cgraph.png" border="0" usemap="#a00530_ab052b802081fd87e1bda8d56e2c0db42_cgraph" alt=""/></div> 198<map name="a00530_ab052b802081fd87e1bda8d56e2c0db42_cgraph" id="a00530_ab052b802081fd87e1bda8d56e2c0db42_cgraph"> 199<area shape="rect" id="node2" href="a00530.html#a5526698540030255f601fc77e6e80bda" title="Function to compute the Elapsed systicks. " alt="" coords="196,5,393,32"/> 200<area shape="rect" id="node3" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f" title="The interface function to append the data on the formated stream. " alt="" coords="441,31,503,57"/> 201<area shape="rect" id="node4" href="a00530.html#ac4471deeef0c2a93b7d4263259b0ed63" title="Function to Record the Start systick. " alt="" coords="221,107,368,133"/> 202</map> 203</div> 204<div class="dynheader"> 205Here is the caller graph for this function:</div> 206<div class="dyncontent"> 207<div class="center"><img src="a00530_ab052b802081fd87e1bda8d56e2c0db42_icgraph.png" border="0" usemap="#a00530_ab052b802081fd87e1bda8d56e2c0db42_icgraph" alt=""/></div> 208<map name="a00530_ab052b802081fd87e1bda8d56e2c0db42_icgraph" id="a00530_ab052b802081fd87e1bda8d56e2c0db42_icgraph"> 209<area shape="rect" id="node2" href="a00542.html#a01f30c94c49eadb65cc176f79209e84c" title="ADS_DetectShield" alt="" coords="431,26,561,52"/> 210<area shape="rect" id="node3" href="a00542.html#a61f59d3254fb54c57b010f2f9f8a7499" title="ADS_MMA9553Query" alt="" coords="206,51,357,78"/> 211<area shape="rect" id="node4" href="a00041.html#aec67caf020c27066c2918ca5ba6807ac" title="The interface function to initialize the sensor. " alt="" coords="196,102,367,128"/> 212<area shape="rect" id="node5" href="a00059.html#a13160308eebd2dce90198d9f1388ad27" title="The interface function to De Initialize sensor.. " alt="" coords="208,152,355,179"/> 213<area shape="rect" id="node6" href="a00059.html#afa8884917291129b676fc1395fd95671" title="The interface function to De Initialize sensor.. " alt="" coords="207,203,356,230"/> 214<area shape="rect" id="node7" href="a00068.html#a49e7f7cd7bfced26acd32836bfd8e2a9" title="The interface function to De Initialize sensor.. " alt="" coords="208,254,355,280"/> 215<area shape="rect" id="node8" href="a00068.html#aeb87047a2521d9f022f3668e3b2d50ff" title="The interface function to De Initialize sensor.. " alt="" coords="207,304,356,331"/> 216<area shape="rect" id="node9" href="a00077.html#af8bfcdd9fde5faa5f85101c4f9fc5d48" title="The interface function to De Initialize sensor.. " alt="" coords="208,355,355,382"/> 217<area shape="rect" id="node10" href="a00077.html#a4037b168e84024b4c42a78d89ec80afe" title="The interface function to De Initialize sensor.. " alt="" coords="207,406,356,432"/> 218<area shape="rect" id="node11" href="a00155.html#af91dd70fb511444f848db38d965c68c0" title="The interface function to initialize the sensor. " alt="" coords="415,482,577,508"/> 219<area shape="rect" id="node12" href="a00155.html#aa9e0baf731b01815b94c95276e6be639" title="The interface function to initialize the sensor. " alt="" coords="415,634,577,660"/> 220<area shape="rect" id="node13" href="a00338.html#adc709b747f2b14694b4fac4fd080f75c" title="Function to perform FXLS896x self test. " alt="" coords="224,558,339,584"/> 221<area shape="rect" id="node14" href="a00185.html#ad6c175b9a45aa936aa74abda223eeafe" title="Write commands to a sensor. " alt="" coords="201,507,361,534"/> 222<area shape="rect" id="node15" href="a00191.html#a6891c5409037ff96ef29750f131f4c00" title="Write commands to a sensor. " alt="" coords="200,608,363,635"/> 223</map> 224</div> 225 226</div> 227</div> 228<a id="a5526698540030255f601fc77e6e80bda"></a> 229<h2 class="memtitle"><span class="permalink"><a href="#a5526698540030255f601fc77e6e80bda">◆ </a></span>BOARD_SystickElapsedTicks()</h2> 230 231<div class="memitem"> 232<div class="memproto"> 233 <table class="memname"> 234 <tr> 235 <td class="memname"><a class="el" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f">int32_t</a> BOARD_SystickElapsedTicks </td> 236 <td>(</td> 237 <td class="paramtype"><a class="el" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f">int32_t</a> * </td> 238 <td class="paramname"><em>pStart</em></td><td>)</td> 239 <td></td> 240 </tr> 241 </table> 242</div><div class="memdoc"> 243 244<p>Function to compute the Elapsed systicks. </p> 245<p>This function computes the elapsed ticks by getting the difference of the current tick to the one in the arguement. </p><dl class="params"><dt>Parameters</dt><dd> 246 <table class="params"> 247 <tr><td class="paramdir">[in]</td><td class="paramname">pStart</td><td>Pointer to the variable contating the start systick. </td></tr> 248 </table> 249 </dd> 250</dl> 251<dl class="section return"><dt>Returns</dt><dd>int32_t The elapsed systicks. </dd></dl> 252<dl class="section user"><dt>Constraints:</dt><dd>None. Yes </dd></dl> 253 254<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00052">52</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 255 256<p class="reference">References <a class="el" href="a00530_source.html#l00024">g_ovf_counter</a>, <a class="el" href="a00530_source.html#l00023">g_ovf_stamp</a>, <a class="el" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f">int32_t()</a>, <a class="el" href="a00530_source.html#l00021">SYST_CVR</a>, and <a class="el" href="a00530_source.html#l00020">SYST_RVR</a>.</p> 257 258<p class="reference">Referenced by <a class="el" href="a00530_source.html#l00081">BOARD_DELAY_ms()</a>, and <a class="el" href="a00530_source.html#l00064">BOARD_SystickElapsedTime_us()</a>.</p> 259<div class="dynheader"> 260Here is the call graph for this function:</div> 261<div class="dyncontent"> 262<div class="center"><img src="a00530_a5526698540030255f601fc77e6e80bda_cgraph.png" border="0" usemap="#a00530_a5526698540030255f601fc77e6e80bda_cgraph" alt=""/></div> 263<map name="a00530_a5526698540030255f601fc77e6e80bda_cgraph" id="a00530_a5526698540030255f601fc77e6e80bda_cgraph"> 264<area shape="rect" id="node2" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f" title="The interface function to append the data on the formated stream. " alt="" coords="251,5,312,32"/> 265</map> 266</div> 267<div class="dynheader"> 268Here is the caller graph for this function:</div> 269<div class="dyncontent"> 270<div class="center"><img src="a00530_a5526698540030255f601fc77e6e80bda_icgraph.png" border="0" usemap="#a00530_a5526698540030255f601fc77e6e80bda_icgraph" alt=""/></div> 271<map name="a00530_a5526698540030255f601fc77e6e80bda_icgraph" id="a00530_a5526698540030255f601fc77e6e80bda_icgraph"> 272<area shape="rect" id="node2" href="a00533.html#ab052b802081fd87e1bda8d56e2c0db42" title="Function to insert delays. " alt="" coords="287,5,429,32"/> 273<area shape="rect" id="node3" href="a00533.html#a85a32737b730fbb713ec910e1ad17c74" title="Function to compute the Elapsed Time. " alt="" coords="251,56,465,83"/> 274</map> 275</div> 276 277</div> 278</div> 279<a id="a85a32737b730fbb713ec910e1ad17c74"></a> 280<h2 class="memtitle"><span class="permalink"><a href="#a85a32737b730fbb713ec910e1ad17c74">◆ </a></span>BOARD_SystickElapsedTime_us()</h2> 281 282<div class="memitem"> 283<div class="memproto"> 284 <table class="memname"> 285 <tr> 286 <td class="memname">uint32_t BOARD_SystickElapsedTime_us </td> 287 <td>(</td> 288 <td class="paramtype"><a class="el" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f">int32_t</a> * </td> 289 <td class="paramname"><em>pStart</em></td><td>)</td> 290 <td></td> 291 </tr> 292 </table> 293</div><div class="memdoc"> 294 295<p>Function to compute the Elapsed Time. </p> 296<p>This function computes the elapsed Time in micro seconds by getting the difference of the current tick to the one in the arguement. It also updates the start tick to the current systick. </p><dl class="params"><dt>Parameters</dt><dd> 297 <table class="params"> 298 <tr><td class="paramdir">[in]</td><td class="paramname">pStart</td><td>Pointer to the variable contating the start systick. </td></tr> 299 </table> 300 </dd> 301</dl> 302<dl class="section return"><dt>Returns</dt><dd>uint32_t The elapsed Time in micro seconds. </dd></dl> 303<dl class="section user"><dt>Constraints:</dt><dd>None. Yes </dd></dl> 304 305<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00064">64</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 306 307<p class="reference">References <a class="el" href="a00530_source.html#l00052">BOARD_SystickElapsedTicks()</a>, and <a class="el" href="a00530_source.html#l00044">BOARD_SystickStart()</a>.</p> 308 309<p class="reference">Referenced by <a class="el" href="a00401_source.html#l00227">main()</a>.</p> 310<div class="dynheader"> 311Here is the call graph for this function:</div> 312<div class="dyncontent"> 313<div class="center"><img src="a00530_a85a32737b730fbb713ec910e1ad17c74_cgraph.png" border="0" usemap="#a00530_a85a32737b730fbb713ec910e1ad17c74_cgraph" alt=""/></div> 314<map name="a00530_a85a32737b730fbb713ec910e1ad17c74_cgraph" id="a00530_a85a32737b730fbb713ec910e1ad17c74_cgraph"> 315<area shape="rect" id="node2" href="a00530.html#a5526698540030255f601fc77e6e80bda" title="Function to compute the Elapsed systicks. " alt="" coords="268,5,465,32"/> 316<area shape="rect" id="node3" href="a00530.html#ac4471deeef0c2a93b7d4263259b0ed63" title="Function to Record the Start systick. " alt="" coords="293,56,440,83"/> 317</map> 318</div> 319<div class="dynheader"> 320Here is the caller graph for this function:</div> 321<div class="dyncontent"> 322<div class="center"><img src="a00530_a85a32737b730fbb713ec910e1ad17c74_icgraph.png" border="0" usemap="#a00530_a85a32737b730fbb713ec910e1ad17c74_icgraph" alt=""/></div> 323<map name="a00530_a85a32737b730fbb713ec910e1ad17c74_icgraph" id="a00530_a85a32737b730fbb713ec910e1ad17c74_icgraph"> 324<area shape="rect" id="node2" href="a00401.html#a840291bc02cba5474a4cb46a9b9566fe" title="Main function. " alt="" coords="268,5,319,32"/> 325</map> 326</div> 327 328</div> 329</div> 330<a id="ad43629969994e92bd3620e630bda24c8"></a> 331<h2 class="memtitle"><span class="permalink"><a href="#ad43629969994e92bd3620e630bda24c8">◆ </a></span>BOARD_SystickEnable()</h2> 332 333<div class="memitem"> 334<div class="memproto"> 335 <table class="memname"> 336 <tr> 337 <td class="memname">void BOARD_SystickEnable </td> 338 <td>(</td> 339 <td class="paramtype">void </td> 340 <td class="paramname"></td><td>)</td> 341 <td></td> 342 </tr> 343 </table> 344</div><div class="memdoc"> 345 346<p>Function to enable systicks framework. </p> 347<p>This function initializes the CMSIS define ARM core specific systick implementation. </p><dl class="params"><dt>Parameters</dt><dd> 348 <table class="params"> 349 <tr><td class="paramdir">[in]</td><td class="paramname">void.</td><td></td></tr> 350 </table> 351 </dd> 352</dl> 353<dl class="section return"><dt>Returns</dt><dd>void. </dd></dl> 354<dl class="section user"><dt>Constraints:</dt><dd>This should be the first function to be invoked before other Systick APIs. Yes </dd></dl> 355 356<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00035">35</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 357 358<p class="reference">References <a class="el" href="a00530_source.html#l00019">SYST_CSR</a>, and <a class="el" href="a00530_source.html#l00020">SYST_RVR</a>.</p> 359 360<p class="reference">Referenced by <a class="el" href="a00401_source.html#l00227">main()</a>.</p> 361<div class="dynheader"> 362Here is the caller graph for this function:</div> 363<div class="dyncontent"> 364<div class="center"><img src="a00530_ad43629969994e92bd3620e630bda24c8_icgraph.png" border="0" usemap="#a00530_ad43629969994e92bd3620e630bda24c8_icgraph" alt=""/></div> 365<map name="a00530_ad43629969994e92bd3620e630bda24c8_icgraph" id="a00530_ad43629969994e92bd3620e630bda24c8_icgraph"> 366<area shape="rect" id="node2" href="a00401.html#a840291bc02cba5474a4cb46a9b9566fe" title="Main function. " alt="" coords="212,5,263,32"/> 367</map> 368</div> 369 370</div> 371</div> 372<a id="ac4471deeef0c2a93b7d4263259b0ed63"></a> 373<h2 class="memtitle"><span class="permalink"><a href="#ac4471deeef0c2a93b7d4263259b0ed63">◆ </a></span>BOARD_SystickStart()</h2> 374 375<div class="memitem"> 376<div class="memproto"> 377 <table class="memname"> 378 <tr> 379 <td class="memname">void BOARD_SystickStart </td> 380 <td>(</td> 381 <td class="paramtype"><a class="el" href="a00521.html#a5d7069350a7d7e65686c77a8038f462f">int32_t</a> * </td> 382 <td class="paramname"><em>pStart</em></td><td>)</td> 383 <td></td> 384 </tr> 385 </table> 386</div><div class="memdoc"> 387 388<p>Function to Record the Start systick. </p> 389<p>This function records the current systick count for other APIs to compute difference. </p><dl class="params"><dt>Parameters</dt><dd> 390 <table class="params"> 391 <tr><td class="paramdir">[in]</td><td class="paramname">pStart</td><td>Pointer to the variable to store the current/start systick. </td></tr> 392 </table> 393 </dd> 394</dl> 395<dl class="section return"><dt>Returns</dt><dd>void. </dd></dl> 396<dl class="section user"><dt>Constraints:</dt><dd>None. Yes </dd></dl> 397 398<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00044">44</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 399 400<p class="reference">References <a class="el" href="a00530_source.html#l00024">g_ovf_counter</a>, <a class="el" href="a00530_source.html#l00023">g_ovf_stamp</a>, and <a class="el" href="a00530_source.html#l00021">SYST_CVR</a>.</p> 401 402<p class="reference">Referenced by <a class="el" href="a00530_source.html#l00081">BOARD_DELAY_ms()</a>, <a class="el" href="a00530_source.html#l00064">BOARD_SystickElapsedTime_us()</a>, <a class="el" href="a00464_source.html#l00180">main()</a>, and <a class="el" href="a00401_source.html#l00144">process_host_command()</a>.</p> 403<div class="dynheader"> 404Here is the caller graph for this function:</div> 405<div class="dyncontent"> 406<div class="center"><img src="a00530_ac4471deeef0c2a93b7d4263259b0ed63_icgraph.png" border="0" usemap="#a00530_ac4471deeef0c2a93b7d4263259b0ed63_icgraph" alt=""/></div> 407<map name="a00530_ac4471deeef0c2a93b7d4263259b0ed63_icgraph" id="a00530_ac4471deeef0c2a93b7d4263259b0ed63_icgraph"> 408<area shape="rect" id="node2" href="a00533.html#ab052b802081fd87e1bda8d56e2c0db42" title="Function to insert delays. " alt="" coords="236,5,379,32"/> 409<area shape="rect" id="node3" href="a00533.html#a85a32737b730fbb713ec910e1ad17c74" title="Function to compute the Elapsed Time. " alt="" coords="200,56,415,83"/> 410<area shape="rect" id="node4" href="a00464.html#a840291bc02cba5474a4cb46a9b9566fe" title="Main function. " alt="" coords="282,107,333,133"/> 411<area shape="rect" id="node5" href="a00401.html#a0076d28c9a17cd6908c7b3b0f5c6006c" title="process_host_command" alt="" coords="225,157,389,184"/> 412</map> 413</div> 414 415</div> 416</div> 417<a id="ab5e09814056d617c521549e542639b7e"></a> 418<h2 class="memtitle"><span class="permalink"><a href="#ab5e09814056d617c521549e542639b7e">◆ </a></span>SysTick_Handler()</h2> 419 420<div class="memitem"> 421<div class="memproto"> 422 <table class="memname"> 423 <tr> 424 <td class="memname">void SysTick_Handler </td> 425 <td>(</td> 426 <td class="paramtype">void </td> 427 <td class="paramname"></td><td>)</td> 428 <td></td> 429 </tr> 430 </table> 431</div><div class="memdoc"> 432 433<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00028">28</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 434 435<p class="reference">References <a class="el" href="a00530_source.html#l00024">g_ovf_counter</a>.</p> 436 437</div> 438</div> 439<h2 class="groupheader">Variable Documentation</h2> 440<a id="a9f513763df42a1ba7bb6955361e29707"></a> 441<h2 class="memtitle"><span class="permalink"><a href="#a9f513763df42a1ba7bb6955361e29707">◆ </a></span>g_ovf_counter</h2> 442 443<div class="memitem"> 444<div class="memproto"> 445 <table class="memname"> 446 <tr> 447 <td class="memname">volatile uint32_t g_ovf_counter = 0</td> 448 </tr> 449 </table> 450</div><div class="memdoc"> 451 452<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00024">24</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 453 454<p class="reference">Referenced by <a class="el" href="a00530_source.html#l00052">BOARD_SystickElapsedTicks()</a>, <a class="el" href="a00530_source.html#l00044">BOARD_SystickStart()</a>, and <a class="el" href="a00530_source.html#l00028">SysTick_Handler()</a>.</p> 455 456</div> 457</div> 458<a id="ac2d41df1a7ed0204bf5ff703fe298d0d"></a> 459<h2 class="memtitle"><span class="permalink"><a href="#ac2d41df1a7ed0204bf5ff703fe298d0d">◆ </a></span>g_ovf_stamp</h2> 460 461<div class="memitem"> 462<div class="memproto"> 463 <table class="memname"> 464 <tr> 465 <td class="memname">uint32_t g_ovf_stamp</td> 466 </tr> 467 </table> 468</div><div class="memdoc"> 469 470<p class="definition">Definition at line <a class="el" href="a00530_source.html#l00023">23</a> of file <a class="el" href="a00530_source.html">systick_utils.c</a>.</p> 471 472<p class="reference">Referenced by <a class="el" href="a00530_source.html#l00052">BOARD_SystickElapsedTicks()</a>, and <a class="el" href="a00530_source.html#l00044">BOARD_SystickStart()</a>.</p> 473 474</div> 475</div> 476</div><!-- contents --> 477 478<hr class="footer"/><address class="footer"><small> 479© Copyright 2016-2022 NXP. All Rights Reserved. SPDX-License-Identifier: BSD-3-Clause 480</small></address> 481</body> 482</html> 483