]> begriffs open source - cmsis-driver-validation/blob - docs/html/group__spi__funcs.html
Update documentation hosted on github
[cmsis-driver-validation] / docs / html / group__spi__funcs.html
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 <title>SPI Validation</title>
7 <title>CMSIS-Driver Validation: SPI Validation</title>
8 <link href="tabs.css" rel="stylesheet" type="text/css"/>
9 <link href="drv.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 <script type="text/javascript" src="printComponentTabs.js"></script>
13 <link href="navtree.css" rel="stylesheet" type="text/css"/>
14 <script type="text/javascript" src="resize.js"></script>
15 <script type="text/javascript" src="navtree.js"></script>
16 <script type="text/javascript">
17   $(document).ready(initResizable);
18   $(window).load(resizeHeight);
19 </script>
20 <link href="search/search.css" rel="stylesheet" type="text/css"/>
21 <script type="text/javascript" src="search/search.js"></script>
22 <script type="text/javascript">
23   $(document).ready(function() { searchBox.OnSelectItem(0); });
24 </script>
25 <link href="stylsheetf" rel="stylesheet" type="text/css" />
26 </head>
27 <body>
28 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
29 <div id="titlearea">
30 <table cellspacing="0" cellpadding="0">
31  <tbody>
32  <tr style="height: 46px;">
33   <td id="projectlogo"><img alt="Logo" src="keilarm.png"/></td>
34   <td style="padding-left: 0.5em;">
35    <div id="projectname">CMSIS-Driver Validation
36    &#160;<span id="projectnumber">Version 1.4.0</span>
37    </div>
38    <div id="projectbrief">Driver Validation</div>
39   </td>
40  </tr>
41  </tbody>
42 </table>
43 </div>
44 <!-- end header part -->
45 <div id="DRVnav" class="tabs1">
46     <ul class="tablist">
47       <script type="text/javascript">
48                 <!--
49                 writeComponentTabs.call(this);
50                 //-->
51       </script>
52           </ul>
53 </div>
54 <!-- Generated by Doxygen 1.8.6 -->
55 <script type="text/javascript">
56 var searchBox = new SearchBox("searchBox", "search",false,'Search');
57 </script>
58   <div id="navrow1" class="tabs">
59     <ul class="tablist">
60       <li><a href="index.html"><span>Main&#160;Page</span></a></li>
61       <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
62       <li><a href="modules.html"><span>Reference</span></a></li>
63       <li>
64         <div id="MSearchBox" class="MSearchBoxInactive">
65         <span class="left">
66           <img id="MSearchSelect" src="search/mag_sel.png"
67                onmouseover="return searchBox.OnSearchSelectShow()"
68                onmouseout="return searchBox.OnSearchSelectHide()"
69                alt=""/>
70           <input type="text" id="MSearchField" value="Search" accesskey="S"
71                onfocus="searchBox.OnSearchFieldFocus(true)" 
72                onblur="searchBox.OnSearchFieldFocus(false)" 
73                onkeyup="searchBox.OnSearchFieldChange(event)"/>
74           </span><span class="right">
75             <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
76           </span>
77         </div>
78       </li>
79     </ul>
80   </div>
81 </div><!-- top -->
82 <div id="side-nav" class="ui-resizable side-nav-resizable">
83   <div id="nav-tree">
84     <div id="nav-tree-contents">
85       <div id="nav-sync" class="sync"></div>
86     </div>
87   </div>
88   <div id="splitbar" style="-moz-user-select:none;" 
89        class="ui-resizable-handle">
90   </div>
91 </div>
92 <script type="text/javascript">
93 $(document).ready(function(){initNavTree('group__spi__funcs.html','');});
94 </script>
95 <div id="doc-content">
96 <!-- window showing the filter options -->
97 <div id="MSearchSelectWindow"
98      onmouseover="return searchBox.OnSearchSelectShow()"
99      onmouseout="return searchBox.OnSearchSelectHide()"
100      onkeydown="return searchBox.OnSearchSelectKey(event)">
101 <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Pages</a></div>
102
103 <!-- iframe showing the search results (closed by default) -->
104 <div id="MSearchResultsWindow">
105 <iframe src="javascript:void(0)" frameborder="0" 
106         name="MSearchResults" id="MSearchResults">
107 </iframe>
108 </div>
109
110 <div class="header">
111   <div class="summary">
112 <a href="#func-members">Functions</a>  </div>
113   <div class="headertitle">
114 <div class="title">SPI Validation</div>  </div>
115 </div><!--header-->
116 <div class="contents">
117
118 <p>SPI test cases.  
119 <a href="#details">More...</a></p>
120 <table class="memberdecls">
121 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
122 Functions</h2></td></tr>
123 <tr class="memitem:ga73d306b64a92cb27421a5142042c823c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#ga73d306b64a92cb27421a5142042c823c">SPI_GetCapabilities</a> (void)</td></tr>
124 <tr class="memdesc:ga73d306b64a92cb27421a5142042c823c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_GetCapabilities.  <a href="#ga73d306b64a92cb27421a5142042c823c">More...</a><br/></td></tr>
125 <tr class="separator:ga73d306b64a92cb27421a5142042c823c"><td class="memSeparator" colspan="2">&#160;</td></tr>
126 <tr class="memitem:gae4a0ac618ed63a8f50edf0bd8695d32f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#gae4a0ac618ed63a8f50edf0bd8695d32f">SPI_Initialization</a> (void)</td></tr>
127 <tr class="memdesc:gae4a0ac618ed63a8f50edf0bd8695d32f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Initialization.  <a href="#gae4a0ac618ed63a8f50edf0bd8695d32f">More...</a><br/></td></tr>
128 <tr class="separator:gae4a0ac618ed63a8f50edf0bd8695d32f"><td class="memSeparator" colspan="2">&#160;</td></tr>
129 <tr class="memitem:gaea97b1c1f0eb01125cd3fbd7b4c3c17e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#gaea97b1c1f0eb01125cd3fbd7b4c3c17e">SPI_CheckInvalidInit</a> (void)</td></tr>
130 <tr class="memdesc:gaea97b1c1f0eb01125cd3fbd7b4c3c17e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_CheckInvalidInit.  <a href="#gaea97b1c1f0eb01125cd3fbd7b4c3c17e">More...</a><br/></td></tr>
131 <tr class="separator:gaea97b1c1f0eb01125cd3fbd7b4c3c17e"><td class="memSeparator" colspan="2">&#160;</td></tr>
132 <tr class="memitem:gaf9277686b4b32b538df354e2b2c5a6b6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#gaf9277686b4b32b538df354e2b2c5a6b6">SPI_PowerControl</a> (void)</td></tr>
133 <tr class="memdesc:gaf9277686b4b32b538df354e2b2c5a6b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_PowerControl.  <a href="#gaf9277686b4b32b538df354e2b2c5a6b6">More...</a><br/></td></tr>
134 <tr class="separator:gaf9277686b4b32b538df354e2b2c5a6b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
135 <tr class="memitem:gadcb4b87071f9a0a36f4ecf2e50bf6c55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#gadcb4b87071f9a0a36f4ecf2e50bf6c55">SPI_Config_PolarityPhase</a> (void)</td></tr>
136 <tr class="memdesc:gadcb4b87071f9a0a36f4ecf2e50bf6c55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Config_PolarityPhase.  <a href="#gadcb4b87071f9a0a36f4ecf2e50bf6c55">More...</a><br/></td></tr>
137 <tr class="separator:gadcb4b87071f9a0a36f4ecf2e50bf6c55"><td class="memSeparator" colspan="2">&#160;</td></tr>
138 <tr class="memitem:ga89e584382590e47a988d45601cde0618"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#ga89e584382590e47a988d45601cde0618">SPI_Config_DataBits</a> (void)</td></tr>
139 <tr class="memdesc:ga89e584382590e47a988d45601cde0618"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Config_DataBits.  <a href="#ga89e584382590e47a988d45601cde0618">More...</a><br/></td></tr>
140 <tr class="separator:ga89e584382590e47a988d45601cde0618"><td class="memSeparator" colspan="2">&#160;</td></tr>
141 <tr class="memitem:ga799f263fe9df0f9042e82e7aa07efe5b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#ga799f263fe9df0f9042e82e7aa07efe5b">SPI_Config_BitOrder</a> (void)</td></tr>
142 <tr class="memdesc:ga799f263fe9df0f9042e82e7aa07efe5b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Config_BitOrder.  <a href="#ga799f263fe9df0f9042e82e7aa07efe5b">More...</a><br/></td></tr>
143 <tr class="separator:ga799f263fe9df0f9042e82e7aa07efe5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
144 <tr class="memitem:gac86e68ee47bb5fd0a07473fac97c575f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#gac86e68ee47bb5fd0a07473fac97c575f">SPI_Config_SSMode</a> (void)</td></tr>
145 <tr class="memdesc:gac86e68ee47bb5fd0a07473fac97c575f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Config_SSMode.  <a href="#gac86e68ee47bb5fd0a07473fac97c575f">More...</a><br/></td></tr>
146 <tr class="separator:gac86e68ee47bb5fd0a07473fac97c575f"><td class="memSeparator" colspan="2">&#160;</td></tr>
147 <tr class="memitem:gaa483804e6aad12f9f78021fdfb171e38"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#gaa483804e6aad12f9f78021fdfb171e38">SPI_Config_CommonParams</a> (void)</td></tr>
148 <tr class="memdesc:gaa483804e6aad12f9f78021fdfb171e38"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Config_CommonParams.  <a href="#gaa483804e6aad12f9f78021fdfb171e38">More...</a><br/></td></tr>
149 <tr class="separator:gaa483804e6aad12f9f78021fdfb171e38"><td class="memSeparator" colspan="2">&#160;</td></tr>
150 <tr class="memitem:ga058587832c4ffc3afb60203d5b1d4a72"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#ga058587832c4ffc3afb60203d5b1d4a72">SPI_Config_BusSpeed</a> (void)</td></tr>
151 <tr class="memdesc:ga058587832c4ffc3afb60203d5b1d4a72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Config_BusSpeed.  <a href="#ga058587832c4ffc3afb60203d5b1d4a72">More...</a><br/></td></tr>
152 <tr class="separator:ga058587832c4ffc3afb60203d5b1d4a72"><td class="memSeparator" colspan="2">&#160;</td></tr>
153 <tr class="memitem:gaa17002cf53acef9aff6085a33900414b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#gaa17002cf53acef9aff6085a33900414b">SPI_Send</a> (void)</td></tr>
154 <tr class="memdesc:gaa17002cf53acef9aff6085a33900414b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Send.  <a href="#gaa17002cf53acef9aff6085a33900414b">More...</a><br/></td></tr>
155 <tr class="separator:gaa17002cf53acef9aff6085a33900414b"><td class="memSeparator" colspan="2">&#160;</td></tr>
156 <tr class="memitem:gab46280a4600b1bdcdb0dcdda89fc255f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#gab46280a4600b1bdcdb0dcdda89fc255f">SPI_Receive</a> (void)</td></tr>
157 <tr class="memdesc:gab46280a4600b1bdcdb0dcdda89fc255f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Receive.  <a href="#gab46280a4600b1bdcdb0dcdda89fc255f">More...</a><br/></td></tr>
158 <tr class="separator:gab46280a4600b1bdcdb0dcdda89fc255f"><td class="memSeparator" colspan="2">&#160;</td></tr>
159 <tr class="memitem:ga20fdfd0f18a99ed6657b11bf41027e8f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#ga20fdfd0f18a99ed6657b11bf41027e8f">SPI_Loopback_CheckBusSpeed</a> (void)</td></tr>
160 <tr class="memdesc:ga20fdfd0f18a99ed6657b11bf41027e8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Loopback_CheckBusSpeed.  <a href="#ga20fdfd0f18a99ed6657b11bf41027e8f">More...</a><br/></td></tr>
161 <tr class="separator:ga20fdfd0f18a99ed6657b11bf41027e8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
162 <tr class="memitem:gaa5e25bf35251cd57c795d8b7b32c965e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__spi__funcs.html#gaa5e25bf35251cd57c795d8b7b32c965e">SPI_Loopback_Transfer</a> (void)</td></tr>
163 <tr class="memdesc:gaa5e25bf35251cd57c795d8b7b32c965e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test case: SPI_Loopback_Transfer.  <a href="#gaa5e25bf35251cd57c795d8b7b32c965e">More...</a><br/></td></tr>
164 <tr class="separator:gaa5e25bf35251cd57c795d8b7b32c965e"><td class="memSeparator" colspan="2">&#160;</td></tr>
165 </table>
166 <a name="details" id="details"></a><h2 class="groupheader">Description</h2>
167 <p>The SPI validation test performs the following checks:</p>
168 <ul>
169 <li>API interface compliance.</li>
170 <li>Data communication with various transfer sizes and communication parameters.</li>
171 <li>Transfer speed of the data communication.</li>
172 <li>Loopback communication.</li>
173 </ul>
174 <p><a class="anchor" id="spi_loop_back_setup"></a></p>
175 <h2>Loopback Communication Setup </h2>
176 <p>To perform loopback communication tests, it is required to connect the SPI's <b>MISO</b> signal to the <b>MOSI</b> signal (refer to the schematics of your target hardware for detailed pinout information). </p>
177 <h2 class="groupheader">Function Documentation</h2>
178 <a class="anchor" id="gaea97b1c1f0eb01125cd3fbd7b4c3c17e"></a>
179 <div class="memitem">
180 <div class="memproto">
181       <table class="memname">
182         <tr>
183           <td class="memname">void SPI_CheckInvalidInit </td>
184           <td>(</td>
185           <td class="paramtype">void&#160;</td>
186           <td class="paramname"></td><td>)</td>
187           <td></td>
188         </tr>
189       </table>
190 </div><div class="memdoc">
191 <p>The test case <b>SPI_CheckInvalidInit</b> verifies the driver behaviour when receiving an invalid initialization sequence:</p>
192 <ul>
193 <li><b>Uninitialize</b> </li>
194 <li><b>PowerControl</b> with Power off</li>
195 <li><b>PowerControl</b> with Power on</li>
196 <li><b>Control</b> </li>
197 <li><b>PowerControl</b> with Power off</li>
198 <li><b>Uninitialize</b> </li>
199 </ul>
200
201 </div>
202 </div>
203 <a class="anchor" id="ga799f263fe9df0f9042e82e7aa07efe5b"></a>
204 <div class="memitem">
205 <div class="memproto">
206       <table class="memname">
207         <tr>
208           <td class="memname">void SPI_Config_BitOrder </td>
209           <td>(</td>
210           <td class="paramtype">void&#160;</td>
211           <td class="paramname"></td><td>)</td>
212           <td></td>
213         </tr>
214       </table>
215 </div><div class="memdoc">
216 <p>The test case <b>SPI_Config_BitOrder</b> verifies the <b>Control</b> function with the sequence:</p>
217 <ul>
218 <li>Initialize with callback</li>
219 <li>Power on</li>
220 <li>Bit order LSB_MSB</li>
221 <li>Bit order MSB_LSB</li>
222 <li>Power off</li>
223 <li>Uninitialize </li>
224 </ul>
225
226 </div>
227 </div>
228 <a class="anchor" id="ga058587832c4ffc3afb60203d5b1d4a72"></a>
229 <div class="memitem">
230 <div class="memproto">
231       <table class="memname">
232         <tr>
233           <td class="memname">void SPI_Config_BusSpeed </td>
234           <td>(</td>
235           <td class="paramtype">void&#160;</td>
236           <td class="paramname"></td><td>)</td>
237           <td></td>
238         </tr>
239       </table>
240 </div><div class="memdoc">
241 <p>The test case <b>SPI_Config_BusSpeed</b> verifies the <b>Control</b> function and tests bus speeds with the sequence:</p>
242 <ul>
243 <li>Initialize with callback</li>
244 <li>Power on</li>
245 <li>Change bus speed with specific control parameter</li>
246 <li>Read bus speed</li>
247 <li>Change bus speed with general control parameter</li>
248 <li>Read bus speed</li>
249 <li>Power off</li>
250 <li>Uninitialize</li>
251 </ul>
252 <dl class="section note"><dt>Note</dt><dd>Typically, the SPI bus speed is limited to a maximum number. This means that for a bus speed of 25 MHz, values below 25 MHz are also acceptable. If this test returns a higher value than the one that is being set, you need to check the driver. </dd></dl>
253
254 </div>
255 </div>
256 <a class="anchor" id="gaa483804e6aad12f9f78021fdfb171e38"></a>
257 <div class="memitem">
258 <div class="memproto">
259       <table class="memname">
260         <tr>
261           <td class="memname">void SPI_Config_CommonParams </td>
262           <td>(</td>
263           <td class="paramtype">void&#160;</td>
264           <td class="paramname"></td><td>)</td>
265           <td></td>
266         </tr>
267       </table>
268 </div><div class="memdoc">
269 <p>The test case <b>SPI_Config_CommonParams</b> verifies the <b>Control</b> function with the sequence:</p>
270 <ul>
271 <li>Initialize with callback</li>
272 <li>Power on</li>
273 <li>Configure SPI bus</li>
274 <li>Power off</li>
275 <li>Uninitialize </li>
276 </ul>
277
278 </div>
279 </div>
280 <a class="anchor" id="ga89e584382590e47a988d45601cde0618"></a>
281 <div class="memitem">
282 <div class="memproto">
283       <table class="memname">
284         <tr>
285           <td class="memname">void SPI_Config_DataBits </td>
286           <td>(</td>
287           <td class="paramtype">void&#160;</td>
288           <td class="paramname"></td><td>)</td>
289           <td></td>
290         </tr>
291       </table>
292 </div><div class="memdoc">
293 <p>The test case <b>SPI_Config_DataBits</b> verifies the <b>Control</b> function with the sequence:</p>
294 <ul>
295 <li>Initialize with callback</li>
296 <li>Power on</li>
297 <li>Data bits = <span class="XML-Token">8</span></li>
298 <li>Data bits = <span class="XML-Token">16</span></li>
299 <li>Power off</li>
300 <li>Uninitialize </li>
301 </ul>
302
303 </div>
304 </div>
305 <a class="anchor" id="gadcb4b87071f9a0a36f4ecf2e50bf6c55"></a>
306 <div class="memitem">
307 <div class="memproto">
308       <table class="memname">
309         <tr>
310           <td class="memname">void SPI_Config_PolarityPhase </td>
311           <td>(</td>
312           <td class="paramtype">void&#160;</td>
313           <td class="paramname"></td><td>)</td>
314           <td></td>
315         </tr>
316       </table>
317 </div><div class="memdoc">
318 <p>The test case <b>SPI_Config_PolarityPhase</b> verifies the <b>Control</b> function with the sequence:</p>
319 <ul>
320 <li>Initialize with callback</li>
321 <li>Power on</li>
322 <li>Set basic SPI bus configuration</li>
323 <li>Change polarity</li>
324 <li>Change phase</li>
325 <li>Change polarity and phase</li>
326 <li>Power off</li>
327 <li>Uninitialize </li>
328 </ul>
329
330 </div>
331 </div>
332 <a class="anchor" id="gac86e68ee47bb5fd0a07473fac97c575f"></a>
333 <div class="memitem">
334 <div class="memproto">
335       <table class="memname">
336         <tr>
337           <td class="memname">void SPI_Config_SSMode </td>
338           <td>(</td>
339           <td class="paramtype">void&#160;</td>
340           <td class="paramname"></td><td>)</td>
341           <td></td>
342         </tr>
343       </table>
344 </div><div class="memdoc">
345 <p>The test case <b>SPI_Config_SSMode</b> verifies the <b>Control</b> function with the sequence:</p>
346 <ul>
347 <li>Initialize with callback</li>
348 <li>Power on</li>
349 <li>SS Mode MASTER_HW_OUTPUT</li>
350 <li>SS Mode MASTER_HW_INPUT</li>
351 <li>SS Mode MASTER_SW</li>
352 <li>Power off</li>
353 <li>Uninitialize </li>
354 </ul>
355
356 </div>
357 </div>
358 <a class="anchor" id="ga73d306b64a92cb27421a5142042c823c"></a>
359 <div class="memitem">
360 <div class="memproto">
361       <table class="memname">
362         <tr>
363           <td class="memname">void SPI_GetCapabilities </td>
364           <td>(</td>
365           <td class="paramtype">void&#160;</td>
366           <td class="paramname"></td><td>)</td>
367           <td></td>
368         </tr>
369       </table>
370 </div><div class="memdoc">
371 <p>The test case <b>SPI_GetCapabilities</b> verifies the function <b>GetCapabilities</b>. </p>
372
373 </div>
374 </div>
375 <a class="anchor" id="gae4a0ac618ed63a8f50edf0bd8695d32f"></a>
376 <div class="memitem">
377 <div class="memproto">
378       <table class="memname">
379         <tr>
380           <td class="memname">void SPI_Initialization </td>
381           <td>(</td>
382           <td class="paramtype">void&#160;</td>
383           <td class="paramname"></td><td>)</td>
384           <td></td>
385         </tr>
386       </table>
387 </div><div class="memdoc">
388 <p>The test case <b>SPI_Initialization</b> verifies the SPI functions with the sequence:</p>
389 <ul>
390 <li><b>Initialize</b> without callback</li>
391 <li><b>Uninitialize</b> </li>
392 <li><b>Initialize</b> with callback</li>
393 <li><b>Uninitialize</b> </li>
394 </ul>
395
396 </div>
397 </div>
398 <a class="anchor" id="ga20fdfd0f18a99ed6657b11bf41027e8f"></a>
399 <div class="memitem">
400 <div class="memproto">
401       <table class="memname">
402         <tr>
403           <td class="memname">void SPI_Loopback_CheckBusSpeed </td>
404           <td>(</td>
405           <td class="paramtype">void&#160;</td>
406           <td class="paramname"></td><td>)</td>
407           <td></td>
408         </tr>
409       </table>
410 </div><div class="memdoc">
411 <p>The test case <b>SPI_Loopback_CheckBusSpeed</b> verifies the <b>Control</b> function, configures various bus speeds, and measures the transfer time with this sequence:</p>
412 <ul>
413 <li>Initialize with callback</li>
414 <li>Power on</li>
415 <li>Change bus speed with specific control parameter</li>
416 <li>Measure transfer time</li>
417 <li>Power off</li>
418 <li>Uninitialize</li>
419 </ul>
420 <dl class="section note"><dt>Note</dt><dd>If this test issues errors or warnings, refer to the <a class="el" href="test_results.html">Reading Test Results</a> section for more information. </dd></dl>
421
422 </div>
423 </div>
424 <a class="anchor" id="gaa5e25bf35251cd57c795d8b7b32c965e"></a>
425 <div class="memitem">
426 <div class="memproto">
427       <table class="memname">
428         <tr>
429           <td class="memname">void SPI_Loopback_Transfer </td>
430           <td>(</td>
431           <td class="paramtype">void&#160;</td>
432           <td class="paramname"></td><td>)</td>
433           <td></td>
434         </tr>
435       </table>
436 </div><div class="memdoc">
437 <p>The test case <b>SPI_Loopback_Transfer</b> verifies the function <b>Transfer</b> with the sequence:</p>
438 <ul>
439 <li>Initialize with callback</li>
440 <li>Power on</li>
441 <li>Transfer data</li>
442 <li>Check received data against sent data</li>
443 <li>Power off</li>
444 <li>Uninitialize </li>
445 </ul>
446
447 </div>
448 </div>
449 <a class="anchor" id="gaf9277686b4b32b538df354e2b2c5a6b6"></a>
450 <div class="memitem">
451 <div class="memproto">
452       <table class="memname">
453         <tr>
454           <td class="memname">void SPI_PowerControl </td>
455           <td>(</td>
456           <td class="paramtype">void&#160;</td>
457           <td class="paramname"></td><td>)</td>
458           <td></td>
459         </tr>
460       </table>
461 </div><div class="memdoc">
462 <p>The test case <b>SPI_PowerControl</b> verifies the <b>PowerControl</b> function with the sequence:</p>
463 <ul>
464 <li>Initialize with callback</li>
465 <li>Power on</li>
466 <li>Power low</li>
467 <li>Power off</li>
468 <li>Uninitialize </li>
469 </ul>
470
471 </div>
472 </div>
473 <a class="anchor" id="gab46280a4600b1bdcdb0dcdda89fc255f"></a>
474 <div class="memitem">
475 <div class="memproto">
476       <table class="memname">
477         <tr>
478           <td class="memname">void SPI_Receive </td>
479           <td>(</td>
480           <td class="paramtype">void&#160;</td>
481           <td class="paramname"></td><td>)</td>
482           <td></td>
483         </tr>
484       </table>
485 </div><div class="memdoc">
486 <p>The test case <b>SPI_Receive</b> verifies the function <b>Receive</b> with the sequence:</p>
487 <ul>
488 <li>Initialize with callback</li>
489 <li>Power on</li>
490 <li>Receive using callback</li>
491 <li>Receive without callback</li>
492 <li>Power off</li>
493 <li>Uninitialize </li>
494 </ul>
495
496 </div>
497 </div>
498 <a class="anchor" id="gaa17002cf53acef9aff6085a33900414b"></a>
499 <div class="memitem">
500 <div class="memproto">
501       <table class="memname">
502         <tr>
503           <td class="memname">void SPI_Send </td>
504           <td>(</td>
505           <td class="paramtype">void&#160;</td>
506           <td class="paramname"></td><td>)</td>
507           <td></td>
508         </tr>
509       </table>
510 </div><div class="memdoc">
511 <p>The test case <b>SPI_Send</b> verifies the function <b>Send</b> with the sequence:</p>
512 <ul>
513 <li>Initialize with callback</li>
514 <li>Power on</li>
515 <li>Send using callback</li>
516 <li>Send without callback</li>
517 <li>Power off</li>
518 <li>Uninitialize </li>
519 </ul>
520
521 </div>
522 </div>
523 </div><!-- contents -->
524 </div><!-- doc-content -->
525 <!-- start footer part -->
526 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
527   <ul>
528     <li class="footer">Generated on Mon Dec 2 2019 12:02:23 for CMSIS-Driver Validation by ARM Ltd. All rights reserved.
529         <!--
530     <a href="http://www.doxygen.org/index.html">
531     <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 
532         -->
533         </li>
534   </ul>
535 </div>
536 </body>
537 </html>