MCUXpresso_LPC804/docs/MCUXpresso SDK API Reference Manual_LPC804/a00019.html
Yilin Sun 28c7a119e9
Updated to SDK v2.15.000
Signed-off-by: Yilin Sun <imi415@imi.moe>
2024-01-29 14:45:13 +08:00

2252 lines
138 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>MCUXpresso SDK API Reference Manual: SPI Driver</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>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.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 style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="fs_logo.gif"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">MCUXpresso SDK API Reference Manual
&#160;<span id="projectnumber">Rev 2.15.000</span>
</div>
<div id="projectbrief">NXP Semiconductors</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>API&#160;Reference</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('a00019.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<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>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</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>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#files">Files</a> &#124;
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">SPI Driver<div class="ingroups"><a class="el" href="a00086.html">SPI: Serial Peripheral Interface Driver</a></div></div> </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Overview</h2>
<p>This section describes the programming interface of the SPI driver. </p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
Files</h2></td></tr>
<tr class="memitem:a00059"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00059.html">fsl_spi.h</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:a00117"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a00117">_spi_delay_config</a></td></tr>
<tr class="memdesc:a00117"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI delay time configure structure. <a href="a00019.html#a00117">More...</a><br/></td></tr>
<tr class="separator:a00117"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00118"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a00118">_spi_master_config</a></td></tr>
<tr class="memdesc:a00118"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI master user configure structure. <a href="a00019.html#a00118">More...</a><br/></td></tr>
<tr class="separator:a00118"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00120"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a00120">_spi_slave_config</a></td></tr>
<tr class="memdesc:a00120"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI slave user configure structure. <a href="a00019.html#a00120">More...</a><br/></td></tr>
<tr class="separator:a00120"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00121"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a00121">_spi_transfer</a></td></tr>
<tr class="memdesc:a00121"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI transfer structure. <a href="a00019.html#a00121">More...</a><br/></td></tr>
<tr class="separator:a00121"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00119"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a00119">_spi_master_handle</a></td></tr>
<tr class="memdesc:a00119"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI transfer handle structure. <a href="a00019.html#a00119">More...</a><br/></td></tr>
<tr class="separator:a00119"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga1541129ba8262e1649592b5109e2074c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga1541129ba8262e1649592b5109e2074c">SPI_DUMMYDATA</a>&#160;&#160;&#160;(0x00U)</td></tr>
<tr class="memdesc:ga1541129ba8262e1649592b5109e2074c"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI dummy transfer data, the data is sent while txBuff is NULL. <a href="#ga1541129ba8262e1649592b5109e2074c">More...</a><br/></td></tr>
<tr class="separator:ga1541129ba8262e1649592b5109e2074c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa4717c15ca9604c505a5e5c60df29ebe"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gaa4717c15ca9604c505a5e5c60df29ebe">SPI_RETRY_TIMES</a>&#160;&#160;&#160;0U /* Define to zero means keep waiting until the flag is assert/deassert. */</td></tr>
<tr class="memdesc:gaa4717c15ca9604c505a5e5c60df29ebe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retry times for waiting flag. <a href="#gaa4717c15ca9604c505a5e5c60df29ebe">More...</a><br/></td></tr>
<tr class="separator:gaa4717c15ca9604c505a5e5c60df29ebe"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gadc24bb931a59fc64ee4cb60ed56addb4"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="a00019.html#ga1737fd82344e0800f66b541342894b85">_spi_shift_direction</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gadc24bb931a59fc64ee4cb60ed56addb4">spi_shift_direction_t</a></td></tr>
<tr class="memdesc:gadc24bb931a59fc64ee4cb60ed56addb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI data shifter direction options. <a href="#gadc24bb931a59fc64ee4cb60ed56addb4">More...</a><br/></td></tr>
<tr class="separator:gadc24bb931a59fc64ee4cb60ed56addb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9de95ac02ae859ac26534c06eb47b5b8"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="a00019.html#ga17f9450af8f63de3fa2b3b105eeec38d">_spi_clock_polarity</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga9de95ac02ae859ac26534c06eb47b5b8">spi_clock_polarity_t</a></td></tr>
<tr class="memdesc:ga9de95ac02ae859ac26534c06eb47b5b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI clock polarity configuration. <a href="#ga9de95ac02ae859ac26534c06eb47b5b8">More...</a><br/></td></tr>
<tr class="separator:ga9de95ac02ae859ac26534c06eb47b5b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga12e1c73dd72aaabd76ff5ce23c0d3244"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="a00019.html#ga76b6ec98408fdaf2e9133952eefa1baa">_spi_clock_phase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga12e1c73dd72aaabd76ff5ce23c0d3244">spi_clock_phase_t</a></td></tr>
<tr class="memdesc:ga12e1c73dd72aaabd76ff5ce23c0d3244"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI clock phase configuration. <a href="#ga12e1c73dd72aaabd76ff5ce23c0d3244">More...</a><br/></td></tr>
<tr class="separator:ga12e1c73dd72aaabd76ff5ce23c0d3244"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab2c4dcc02a93990358783cbdce5e6d51"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab2c4dcc02a93990358783cbdce5e6d51"></a>
typedef enum <a class="el" href="a00019.html#ga6cb1b64722deb9a98a4f1a442f58f8a9">_spi_ssel</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gab2c4dcc02a93990358783cbdce5e6d51">spi_ssel_t</a></td></tr>
<tr class="memdesc:gab2c4dcc02a93990358783cbdce5e6d51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Slave select. <br/></td></tr>
<tr class="separator:gab2c4dcc02a93990358783cbdce5e6d51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga81db47cb3d4de3ce1bee11725659b0d7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga81db47cb3d4de3ce1bee11725659b0d7"></a>
typedef enum <a class="el" href="a00019.html#gaace382ece8210631749c404f115f2998">_spi_spol</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga81db47cb3d4de3ce1bee11725659b0d7">spi_spol_t</a></td></tr>
<tr class="memdesc:ga81db47cb3d4de3ce1bee11725659b0d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">ssel polarity <br/></td></tr>
<tr class="separator:ga81db47cb3d4de3ce1bee11725659b0d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga237f202331592eab8ddadc63b780fa9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga237f202331592eab8ddadc63b780fa9d"></a>
typedef enum <a class="el" href="a00019.html#ga63554b1f1f01b827bf6449b55ca80280">_spi_data_width</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga237f202331592eab8ddadc63b780fa9d">spi_data_width_t</a></td></tr>
<tr class="memdesc:ga237f202331592eab8ddadc63b780fa9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transfer data width. <br/></td></tr>
<tr class="separator:ga237f202331592eab8ddadc63b780fa9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5d2ab71dbc12d399a9e125103fd3ec10"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="a00019.html#a00117">_spi_delay_config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga5d2ab71dbc12d399a9e125103fd3ec10">spi_delay_config_t</a></td></tr>
<tr class="memdesc:ga5d2ab71dbc12d399a9e125103fd3ec10"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI delay time configure structure. <a href="#ga5d2ab71dbc12d399a9e125103fd3ec10">More...</a><br/></td></tr>
<tr class="separator:ga5d2ab71dbc12d399a9e125103fd3ec10"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga15e5f834f83ba89de1e920bba9d00394"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="a00019.html#a00118">_spi_master_config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga15e5f834f83ba89de1e920bba9d00394">spi_master_config_t</a></td></tr>
<tr class="memdesc:ga15e5f834f83ba89de1e920bba9d00394"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI master user configure structure. <a href="#ga15e5f834f83ba89de1e920bba9d00394">More...</a><br/></td></tr>
<tr class="separator:ga15e5f834f83ba89de1e920bba9d00394"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa62352a5d0a01f70fe74941809d03ec3"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="a00019.html#a00120">_spi_slave_config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gaa62352a5d0a01f70fe74941809d03ec3">spi_slave_config_t</a></td></tr>
<tr class="memdesc:gaa62352a5d0a01f70fe74941809d03ec3"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI slave user configure structure. <a href="#gaa62352a5d0a01f70fe74941809d03ec3">More...</a><br/></td></tr>
<tr class="separator:gaa62352a5d0a01f70fe74941809d03ec3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga59314d5596f240cfbe8b9466bd99ed3f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga59314d5596f240cfbe8b9466bd99ed3f"></a>
typedef struct <a class="el" href="a00019.html#a00121">_spi_transfer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga59314d5596f240cfbe8b9466bd99ed3f">spi_transfer_t</a></td></tr>
<tr class="memdesc:ga59314d5596f240cfbe8b9466bd99ed3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI transfer structure. <br/></td></tr>
<tr class="separator:ga59314d5596f240cfbe8b9466bd99ed3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafb311d8a8b7de084d82915f5a003a300"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafb311d8a8b7de084d82915f5a003a300"></a>
typedef struct <a class="el" href="a00019.html#a00119">_spi_master_handle</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a></td></tr>
<tr class="memdesc:gafb311d8a8b7de084d82915f5a003a300"><td class="mdescLeft">&#160;</td><td class="mdescRight">Master handle type. <br/></td></tr>
<tr class="separator:gafb311d8a8b7de084d82915f5a003a300"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad267cfee3a876b2860217ff94f03f574"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad267cfee3a876b2860217ff94f03f574"></a>
typedef <a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a></td></tr>
<tr class="memdesc:gad267cfee3a876b2860217ff94f03f574"><td class="mdescLeft">&#160;</td><td class="mdescRight">Slave handle type. <br/></td></tr>
<tr class="separator:gad267cfee3a876b2860217ff94f03f574"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae9bd140aeb645efab6c7552b3994e01a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae9bd140aeb645efab6c7552b3994e01a"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gae9bd140aeb645efab6c7552b3994e01a">spi_master_callback_t</a> )(SPI_Type *base, <a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *handle, <a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> status, void *userData)</td></tr>
<tr class="memdesc:gae9bd140aeb645efab6c7552b3994e01a"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI master callback for finished transmit. <br/></td></tr>
<tr class="separator:gae9bd140aeb645efab6c7552b3994e01a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga86b45b85e036adc762eed5bcd2a0491d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga86b45b85e036adc762eed5bcd2a0491d"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga86b45b85e036adc762eed5bcd2a0491d">spi_slave_callback_t</a> )(SPI_Type *base, <a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *handle, <a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> status, void *userData)</td></tr>
<tr class="memdesc:ga86b45b85e036adc762eed5bcd2a0491d"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI slave callback for finished transmit. <br/></td></tr>
<tr class="separator:ga86b45b85e036adc762eed5bcd2a0491d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:gaaa2e2f2efa7be228c775fa239ab5ea03"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gaaa2e2f2efa7be228c775fa239ab5ea03">_spi_xfer_option</a> { <br/>
&#160;&#160;<a class="el" href="a00019.html#ggaaa2e2f2efa7be228c775fa239ab5ea03a3bc0d76da8f97613467566dc39bee3b4">kSPI_EndOfFrame</a> = (SPI_TXDATCTL_EOF_MASK),
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggaaa2e2f2efa7be228c775fa239ab5ea03a857a31be854542eafecfea1484ad38b5">kSPI_EndOfTransfer</a>,
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggaaa2e2f2efa7be228c775fa239ab5ea03a2616295b1939805764ffb815876b9eea">kSPI_ReceiveIgnore</a> = (SPI_TXDATCTL_RXIGNORE_MASK)
<br/>
}</td></tr>
<tr class="memdesc:gaaa2e2f2efa7be228c775fa239ab5ea03"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI transfer option. <a href="a00019.html#gaaa2e2f2efa7be228c775fa239ab5ea03">More...</a><br/></td></tr>
<tr class="separator:gaaa2e2f2efa7be228c775fa239ab5ea03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1737fd82344e0800f66b541342894b85"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga1737fd82344e0800f66b541342894b85">_spi_shift_direction</a> { <br/>
&#160;&#160;<a class="el" href="a00019.html#gga1737fd82344e0800f66b541342894b85ae7b997e8cff761aab865cbd42c4c3989">kSPI_MsbFirst</a> = 0U,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga1737fd82344e0800f66b541342894b85a20ac53684c3e1ad338553cecbfab94a9">kSPI_LsbFirst</a> = 1U
<br/>
}</td></tr>
<tr class="memdesc:ga1737fd82344e0800f66b541342894b85"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI data shifter direction options. <a href="a00019.html#ga1737fd82344e0800f66b541342894b85">More...</a><br/></td></tr>
<tr class="separator:ga1737fd82344e0800f66b541342894b85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga17f9450af8f63de3fa2b3b105eeec38d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga17f9450af8f63de3fa2b3b105eeec38d">_spi_clock_polarity</a> { <br/>
&#160;&#160;<a class="el" href="a00019.html#gga17f9450af8f63de3fa2b3b105eeec38da031c0ee2693cf1fd621e8b8cba676629">kSPI_ClockPolarityActiveHigh</a> = 0x0U,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga17f9450af8f63de3fa2b3b105eeec38dacfc8257079c9604086622df6de326aea">kSPI_ClockPolarityActiveLow</a> = 0x1U
<br/>
}</td></tr>
<tr class="memdesc:ga17f9450af8f63de3fa2b3b105eeec38d"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI clock polarity configuration. <a href="a00019.html#ga17f9450af8f63de3fa2b3b105eeec38d">More...</a><br/></td></tr>
<tr class="separator:ga17f9450af8f63de3fa2b3b105eeec38d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga76b6ec98408fdaf2e9133952eefa1baa"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga76b6ec98408fdaf2e9133952eefa1baa">_spi_clock_phase</a> { <br/>
&#160;&#160;<a class="el" href="a00019.html#gga76b6ec98408fdaf2e9133952eefa1baaad15d61c6fd642f13101edbf401d0c72e">kSPI_ClockPhaseFirstEdge</a> = 0x0U,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga76b6ec98408fdaf2e9133952eefa1baaa18a98985c1f7dd56175e4a2724db3675">kSPI_ClockPhaseSecondEdge</a> = 0x1U
<br/>
}</td></tr>
<tr class="memdesc:ga76b6ec98408fdaf2e9133952eefa1baa"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI clock phase configuration. <a href="a00019.html#ga76b6ec98408fdaf2e9133952eefa1baa">More...</a><br/></td></tr>
<tr class="separator:ga76b6ec98408fdaf2e9133952eefa1baa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6cb1b64722deb9a98a4f1a442f58f8a9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga6cb1b64722deb9a98a4f1a442f58f8a9">_spi_ssel</a> { <a class="el" href="a00019.html#gga6cb1b64722deb9a98a4f1a442f58f8a9af64655214a47d11f960f633b1478b117">kSPI_Ssel0Assert</a> = (int)(~SPI_TXDATCTL_TXSSEL0_N_MASK)
}</td></tr>
<tr class="memdesc:ga6cb1b64722deb9a98a4f1a442f58f8a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Slave select. <a href="a00019.html#ga6cb1b64722deb9a98a4f1a442f58f8a9">More...</a><br/></td></tr>
<tr class="separator:ga6cb1b64722deb9a98a4f1a442f58f8a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaace382ece8210631749c404f115f2998"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gaace382ece8210631749c404f115f2998">_spi_spol</a> </td></tr>
<tr class="memdesc:gaace382ece8210631749c404f115f2998"><td class="mdescLeft">&#160;</td><td class="mdescRight">ssel polarity <br/></td></tr>
<tr class="separator:gaace382ece8210631749c404f115f2998"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga63554b1f1f01b827bf6449b55ca80280"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga63554b1f1f01b827bf6449b55ca80280">_spi_data_width</a> { <br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280a0cb8b30c67c53c6d53712d5bacc818ce">kSPI_Data4Bits</a> = 3,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280a7232b4afb5bd82503252ce608638e6eb">kSPI_Data5Bits</a> = 4,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280a6604fcf5c8bebf904c5b072295027bba">kSPI_Data6Bits</a> = 5,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280a2c62d3d7d92866c97bb513d4e603518e">kSPI_Data7Bits</a> = 6,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280ad6b98474a7f14ae7665b7b6d3355657c">kSPI_Data8Bits</a> = 7,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280a4b864a74545165c2cf2dd74134fdadd1">kSPI_Data9Bits</a> = 8,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280a2b2887663c9d025a4137263fc7984024">kSPI_Data10Bits</a> = 9,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280a91e908a7a4725ab9df05549a2b034dec">kSPI_Data11Bits</a> = 10,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280ad1cfe18fd912c0d25dc32e6ca9fa8f97">kSPI_Data12Bits</a> = 11,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280ad8c2fa2e2f5bf137176dc736cc6a2531">kSPI_Data13Bits</a> = 12,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280ae83435f494d1b9f3ce2f2da0ac03fc38">kSPI_Data14Bits</a> = 13,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280add11012a8887066fad29e23c20d66af8">kSPI_Data15Bits</a> = 14,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga63554b1f1f01b827bf6449b55ca80280abbc2566ba4eb2b5e5dc259a7c4f80bcf">kSPI_Data16Bits</a> = 15
<br/>
}</td></tr>
<tr class="memdesc:ga63554b1f1f01b827bf6449b55ca80280"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transfer data width. <a href="a00019.html#ga63554b1f1f01b827bf6449b55ca80280">More...</a><br/></td></tr>
<tr class="separator:ga63554b1f1f01b827bf6449b55ca80280"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabc6126af1d45847bc59afa0aa3216b04"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br/>
&#160;&#160;<a class="el" href="a00019.html#ggabc6126af1d45847bc59afa0aa3216b04a703abdf7900047c4d13536480f3463ab">kStatus_SPI_Busy</a> = MAKE_STATUS(kStatusGroup_LPC_MINISPI, 0),
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggabc6126af1d45847bc59afa0aa3216b04a4e32c5b06dccaf4b81e2fd1679e1b560">kStatus_SPI_Idle</a> = MAKE_STATUS(kStatusGroup_LPC_MINISPI, 1),
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggabc6126af1d45847bc59afa0aa3216b04a2ff91d774e93aed936b87ffaa18aaf9e">kStatus_SPI_Error</a> = MAKE_STATUS(kStatusGroup_LPC_MINISPI, 2),
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggabc6126af1d45847bc59afa0aa3216b04ab0f4d4de5f92524c9d33524f22a04e03">kStatus_SPI_BaudrateNotSupport</a>,
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggabc6126af1d45847bc59afa0aa3216b04a496ced6fffc33d7bbeb01d203dfc4836">kStatus_SPI_Timeout</a> = MAKE_STATUS(kStatusGroup_LPC_MINISPI, 4)
<br/>
}</td></tr>
<tr class="memdesc:gabc6126af1d45847bc59afa0aa3216b04"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI transfer status. <a href="a00019.html#gabc6126af1d45847bc59afa0aa3216b04">More...</a><br/></td></tr>
<tr class="separator:gabc6126af1d45847bc59afa0aa3216b04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaedd690a0f91a0a9eb0fd573b57e31f67"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gaedd690a0f91a0a9eb0fd573b57e31f67">_spi_interrupt_enable</a> { <br/>
&#160;&#160;<a class="el" href="a00019.html#ggaedd690a0f91a0a9eb0fd573b57e31f67ac8d5eef4469ce888d4b2fb3c3b4fb215">kSPI_RxReadyInterruptEnable</a> = SPI_INTENSET_RXRDYEN_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggaedd690a0f91a0a9eb0fd573b57e31f67a0ec3e79b793d213ed30f74a338437129">kSPI_TxReadyInterruptEnable</a> = SPI_INTENSET_TXRDYEN_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggaedd690a0f91a0a9eb0fd573b57e31f67a4acd737132f9c3cbd8cac500767289e5">kSPI_RxOverrunInterruptEnable</a> = SPI_INTENSET_RXOVEN_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggaedd690a0f91a0a9eb0fd573b57e31f67ad1f9b1e8b5209604a0eca8750f2876ad">kSPI_TxUnderrunInterruptEnable</a> = SPI_INTENSET_TXUREN_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggaedd690a0f91a0a9eb0fd573b57e31f67ad1de0c0c42c7a707e305edbd3fde88b7">kSPI_SlaveSelectAssertInterruptEnable</a> = SPI_INTENSET_SSAEN_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#ggaedd690a0f91a0a9eb0fd573b57e31f67a8f55948795fa8d256b5b6e520a95f145">kSPI_SlaveSelectDeassertInterruptEnable</a> = SPI_INTENSET_SSDEN_MASK
<br/>
}</td></tr>
<tr class="memdesc:gaedd690a0f91a0a9eb0fd573b57e31f67"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI interrupt sources. <a href="a00019.html#gaedd690a0f91a0a9eb0fd573b57e31f67">More...</a><br/></td></tr>
<tr class="separator:gaedd690a0f91a0a9eb0fd573b57e31f67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga17a846c851b3b17e6a1564a5fab48e09"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga17a846c851b3b17e6a1564a5fab48e09">_spi_status_flags</a> { <br/>
&#160;&#160;<a class="el" href="a00019.html#gga17a846c851b3b17e6a1564a5fab48e09a76b9aac1ff3856afdcb4eebdb3be9094">kSPI_RxReadyFlag</a> = SPI_STAT_RXRDY_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga17a846c851b3b17e6a1564a5fab48e09a3f796180c934ef3b688530986a844fe5">kSPI_TxReadyFlag</a> = SPI_STAT_TXRDY_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga17a846c851b3b17e6a1564a5fab48e09ae281d12263ce63ef7c964f8564bea473">kSPI_RxOverrunFlag</a> = SPI_STAT_RXOV_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga17a846c851b3b17e6a1564a5fab48e09a4be82e1306daa139870673c30de9e238">kSPI_TxUnderrunFlag</a> = SPI_STAT_TXUR_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga17a846c851b3b17e6a1564a5fab48e09ab25cacb436c5e32113bd98c1ae151641">kSPI_SlaveSelectAssertFlag</a> = SPI_STAT_SSA_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga17a846c851b3b17e6a1564a5fab48e09a1f153042fdb9681e7bd435c4cb9bd7c5">kSPI_SlaveSelectDeassertFlag</a> = SPI_STAT_SSD_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga17a846c851b3b17e6a1564a5fab48e09a214bc23d48bafcc89241530e55195f76">kSPI_StallFlag</a> = SPI_STAT_STALLED_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga17a846c851b3b17e6a1564a5fab48e09a4f52f3d130ab947331e668c7856d8551">kSPI_EndTransferFlag</a> = SPI_STAT_ENDTRANSFER_MASK,
<br/>
&#160;&#160;<a class="el" href="a00019.html#gga17a846c851b3b17e6a1564a5fab48e09a03ba57874691d230ad0f657cf01a7978">kSPI_MasterIdleFlag</a> = SPI_STAT_MSTIDLE_MASK
<br/>
}</td></tr>
<tr class="memdesc:ga17a846c851b3b17e6a1564a5fab48e09"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI status flags. <a href="a00019.html#ga17a846c851b3b17e6a1564a5fab48e09">More...</a><br/></td></tr>
<tr class="separator:ga17a846c851b3b17e6a1564a5fab48e09"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gad823d00c394f6ca35c391dc178a25334"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gad823d00c394f6ca35c391dc178a25334">SPI_GetInstance</a> (SPI_Type *base)</td></tr>
<tr class="memdesc:gad823d00c394f6ca35c391dc178a25334"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns instance number for SPI peripheral base address. <a href="#gad823d00c394f6ca35c391dc178a25334">More...</a><br/></td></tr>
<tr class="separator:gad823d00c394f6ca35c391dc178a25334"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Driver version</h2></td></tr>
<tr class="memitem:gaeb6046de02dffe9248de71332fac246e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gaeb6046de02dffe9248de71332fac246e">FSL_SPI_DRIVER_VERSION</a>&#160;&#160;&#160;(<a class="el" href="a00082.html#ga812138aa3315b0c6953c1a26130bcc37">MAKE_VERSION</a>(2, 0, 6))</td></tr>
<tr class="memdesc:gaeb6046de02dffe9248de71332fac246e"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI driver version. <a href="#gaeb6046de02dffe9248de71332fac246e">More...</a><br/></td></tr>
<tr class="separator:gaeb6046de02dffe9248de71332fac246e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Initialization and deinitialization</h2></td></tr>
<tr class="memitem:ga45c08fc078ae334b79fb844379140838"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga45c08fc078ae334b79fb844379140838">SPI_MasterGetDefaultConfig</a> (<a class="el" href="a00019.html#ga15e5f834f83ba89de1e920bba9d00394">spi_master_config_t</a> *config)</td></tr>
<tr class="memdesc:ga45c08fc078ae334b79fb844379140838"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the SPI master configuration structure to default values. <a href="#ga45c08fc078ae334b79fb844379140838">More...</a><br/></td></tr>
<tr class="separator:ga45c08fc078ae334b79fb844379140838"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab36e8463576abeded221a1e5a1eec01c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gab36e8463576abeded221a1e5a1eec01c">SPI_MasterInit</a> (SPI_Type *base, const <a class="el" href="a00019.html#ga15e5f834f83ba89de1e920bba9d00394">spi_master_config_t</a> *config, uint32_t srcClock_Hz)</td></tr>
<tr class="memdesc:gab36e8463576abeded221a1e5a1eec01c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the SPI with master configuration. <a href="#gab36e8463576abeded221a1e5a1eec01c">More...</a><br/></td></tr>
<tr class="separator:gab36e8463576abeded221a1e5a1eec01c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac000b63ed033f57a9eee342a8c8e67f2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gac000b63ed033f57a9eee342a8c8e67f2">SPI_SlaveGetDefaultConfig</a> (<a class="el" href="a00019.html#gaa62352a5d0a01f70fe74941809d03ec3">spi_slave_config_t</a> *config)</td></tr>
<tr class="memdesc:gac000b63ed033f57a9eee342a8c8e67f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the SPI slave configuration structure to default values. <a href="#gac000b63ed033f57a9eee342a8c8e67f2">More...</a><br/></td></tr>
<tr class="separator:gac000b63ed033f57a9eee342a8c8e67f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae40850ce14ba74ea75b3eef79beecf8a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gae40850ce14ba74ea75b3eef79beecf8a">SPI_SlaveInit</a> (SPI_Type *base, const <a class="el" href="a00019.html#gaa62352a5d0a01f70fe74941809d03ec3">spi_slave_config_t</a> *config)</td></tr>
<tr class="memdesc:gae40850ce14ba74ea75b3eef79beecf8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the SPI with slave configuration. <a href="#gae40850ce14ba74ea75b3eef79beecf8a">More...</a><br/></td></tr>
<tr class="separator:gae40850ce14ba74ea75b3eef79beecf8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaac0bc2b87ea2eb7eeba78d9449d4dbbf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gaac0bc2b87ea2eb7eeba78d9449d4dbbf">SPI_Deinit</a> (SPI_Type *base)</td></tr>
<tr class="memdesc:gaac0bc2b87ea2eb7eeba78d9449d4dbbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">De-initializes the SPI. <a href="#gaac0bc2b87ea2eb7eeba78d9449d4dbbf">More...</a><br/></td></tr>
<tr class="separator:gaac0bc2b87ea2eb7eeba78d9449d4dbbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6d32506242b9596989efbbb2d030e997"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga6d32506242b9596989efbbb2d030e997">SPI_Enable</a> (SPI_Type *base, bool enable)</td></tr>
<tr class="memdesc:ga6d32506242b9596989efbbb2d030e997"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or disable the SPI Master or Slave. <a href="#ga6d32506242b9596989efbbb2d030e997">More...</a><br/></td></tr>
<tr class="separator:ga6d32506242b9596989efbbb2d030e997"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Status</h2></td></tr>
<tr class="memitem:ga9e7412ad45aeb7f620fe34559034ad2e"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga9e7412ad45aeb7f620fe34559034ad2e">SPI_GetStatusFlags</a> (SPI_Type *base)</td></tr>
<tr class="memdesc:ga9e7412ad45aeb7f620fe34559034ad2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the status flag. <a href="#ga9e7412ad45aeb7f620fe34559034ad2e">More...</a><br/></td></tr>
<tr class="separator:ga9e7412ad45aeb7f620fe34559034ad2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga794c7435fa108012df54bb6294f20505"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga794c7435fa108012df54bb6294f20505">SPI_ClearStatusFlags</a> (SPI_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:ga794c7435fa108012df54bb6294f20505"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the status flag. <a href="#ga794c7435fa108012df54bb6294f20505">More...</a><br/></td></tr>
<tr class="separator:ga794c7435fa108012df54bb6294f20505"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Interrupts</h2></td></tr>
<tr class="memitem:gab87ea500d8f74369882afe52a81d1199"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gab87ea500d8f74369882afe52a81d1199">SPI_EnableInterrupts</a> (SPI_Type *base, uint32_t irqs)</td></tr>
<tr class="memdesc:gab87ea500d8f74369882afe52a81d1199"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the interrupt for the SPI. <a href="#gab87ea500d8f74369882afe52a81d1199">More...</a><br/></td></tr>
<tr class="separator:gab87ea500d8f74369882afe52a81d1199"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6289b192b135592b7b0996c05422be4d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga6289b192b135592b7b0996c05422be4d">SPI_DisableInterrupts</a> (SPI_Type *base, uint32_t irqs)</td></tr>
<tr class="memdesc:ga6289b192b135592b7b0996c05422be4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables the interrupt for the SPI. <a href="#ga6289b192b135592b7b0996c05422be4d">More...</a><br/></td></tr>
<tr class="separator:ga6289b192b135592b7b0996c05422be4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Bus Operations</h2></td></tr>
<tr class="memitem:ga97782e786464ec2de946bd42e63aefbc"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga97782e786464ec2de946bd42e63aefbc">SPI_IsMaster</a> (SPI_Type *base)</td></tr>
<tr class="memdesc:ga97782e786464ec2de946bd42e63aefbc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether the SPI module is in master mode. <a href="#ga97782e786464ec2de946bd42e63aefbc">More...</a><br/></td></tr>
<tr class="separator:ga97782e786464ec2de946bd42e63aefbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3ad4747ccc31c142c54af5639cd49328"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga3ad4747ccc31c142c54af5639cd49328">SPI_MasterSetBaudRate</a> (SPI_Type *base, uint32_t baudrate_Bps, uint32_t srcClock_Hz)</td></tr>
<tr class="memdesc:ga3ad4747ccc31c142c54af5639cd49328"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the baud rate for SPI transfer. <a href="#ga3ad4747ccc31c142c54af5639cd49328">More...</a><br/></td></tr>
<tr class="separator:ga3ad4747ccc31c142c54af5639cd49328"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga92c1bd47d2ad7b45fc138fccb4bc1ace"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga92c1bd47d2ad7b45fc138fccb4bc1ace">SPI_WriteData</a> (SPI_Type *base, uint16_t data)</td></tr>
<tr class="memdesc:ga92c1bd47d2ad7b45fc138fccb4bc1ace"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a data into the SPI data register directly. <a href="#ga92c1bd47d2ad7b45fc138fccb4bc1ace">More...</a><br/></td></tr>
<tr class="separator:ga92c1bd47d2ad7b45fc138fccb4bc1ace"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga709b0d176b737a8009221565f3ae19e6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga709b0d176b737a8009221565f3ae19e6">SPI_WriteConfigFlags</a> (SPI_Type *base, uint32_t configFlags)</td></tr>
<tr class="memdesc:ga709b0d176b737a8009221565f3ae19e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a data into the SPI TXCTL register directly. <a href="#ga709b0d176b737a8009221565f3ae19e6">More...</a><br/></td></tr>
<tr class="separator:ga709b0d176b737a8009221565f3ae19e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad3810513c85cb28f1dbf18b15614a09d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gad3810513c85cb28f1dbf18b15614a09d">SPI_WriteDataWithConfigFlags</a> (SPI_Type *base, uint16_t data, uint32_t configFlags)</td></tr>
<tr class="memdesc:gad3810513c85cb28f1dbf18b15614a09d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a data control info and data into the SPI TX register directly. <a href="#gad3810513c85cb28f1dbf18b15614a09d">More...</a><br/></td></tr>
<tr class="separator:gad3810513c85cb28f1dbf18b15614a09d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga08dec9d9d6abf910589a591f1cc52f58"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga08dec9d9d6abf910589a591f1cc52f58">SPI_ReadData</a> (SPI_Type *base)</td></tr>
<tr class="memdesc:ga08dec9d9d6abf910589a591f1cc52f58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a data from the SPI data register. <a href="#ga08dec9d9d6abf910589a591f1cc52f58">More...</a><br/></td></tr>
<tr class="separator:ga08dec9d9d6abf910589a591f1cc52f58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad4071c9fc158109945e724872f4760b6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gad4071c9fc158109945e724872f4760b6">SPI_SetTransferDelay</a> (SPI_Type *base, const <a class="el" href="a00019.html#ga5d2ab71dbc12d399a9e125103fd3ec10">spi_delay_config_t</a> *config)</td></tr>
<tr class="memdesc:gad4071c9fc158109945e724872f4760b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set delay time for transfer. <a href="#gad4071c9fc158109945e724872f4760b6">More...</a><br/></td></tr>
<tr class="separator:gad4071c9fc158109945e724872f4760b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac75808445b18f687387bea02892a5246"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gac75808445b18f687387bea02892a5246">SPI_SetDummyData</a> (SPI_Type *base, uint16_t dummyData)</td></tr>
<tr class="memdesc:gac75808445b18f687387bea02892a5246"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set up the dummy data. <a href="#gac75808445b18f687387bea02892a5246">More...</a><br/></td></tr>
<tr class="separator:gac75808445b18f687387bea02892a5246"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5b05095245ecf01258e64cc0458fb2e9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga5b05095245ecf01258e64cc0458fb2e9">SPI_MasterTransferBlocking</a> (SPI_Type *base, <a class="el" href="a00019.html#ga59314d5596f240cfbe8b9466bd99ed3f">spi_transfer_t</a> *xfer)</td></tr>
<tr class="memdesc:ga5b05095245ecf01258e64cc0458fb2e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transfers a block of data using a polling method. <a href="#ga5b05095245ecf01258e64cc0458fb2e9">More...</a><br/></td></tr>
<tr class="separator:ga5b05095245ecf01258e64cc0458fb2e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Transactional</h2></td></tr>
<tr class="memitem:gad0d8eaa132d8c882d8a42286ecfbab64"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gad0d8eaa132d8c882d8a42286ecfbab64">SPI_MasterTransferCreateHandle</a> (SPI_Type *base, <a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *handle, <a class="el" href="a00019.html#gae9bd140aeb645efab6c7552b3994e01a">spi_master_callback_t</a> callback, void *userData)</td></tr>
<tr class="memdesc:gad0d8eaa132d8c882d8a42286ecfbab64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the SPI master handle. <a href="#gad0d8eaa132d8c882d8a42286ecfbab64">More...</a><br/></td></tr>
<tr class="separator:gad0d8eaa132d8c882d8a42286ecfbab64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga820c78a32fa29735168d2e517f4881a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga820c78a32fa29735168d2e517f4881a1">SPI_MasterTransferNonBlocking</a> (SPI_Type *base, <a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *handle, <a class="el" href="a00019.html#ga59314d5596f240cfbe8b9466bd99ed3f">spi_transfer_t</a> *xfer)</td></tr>
<tr class="memdesc:ga820c78a32fa29735168d2e517f4881a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs a non-blocking SPI interrupt transfer. <a href="#ga820c78a32fa29735168d2e517f4881a1">More...</a><br/></td></tr>
<tr class="separator:ga820c78a32fa29735168d2e517f4881a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabde0dccfb0783d103b9cf57e0202582f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gabde0dccfb0783d103b9cf57e0202582f">SPI_MasterTransferGetCount</a> (SPI_Type *base, <a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *handle, size_t *count)</td></tr>
<tr class="memdesc:gabde0dccfb0783d103b9cf57e0202582f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the master transfer count. <a href="#gabde0dccfb0783d103b9cf57e0202582f">More...</a><br/></td></tr>
<tr class="separator:gabde0dccfb0783d103b9cf57e0202582f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae90962a54978acf05ca7780489301eb4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gae90962a54978acf05ca7780489301eb4">SPI_MasterTransferAbort</a> (SPI_Type *base, <a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *handle)</td></tr>
<tr class="memdesc:gae90962a54978acf05ca7780489301eb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI master aborts a transfer using an interrupt. <a href="#gae90962a54978acf05ca7780489301eb4">More...</a><br/></td></tr>
<tr class="separator:gae90962a54978acf05ca7780489301eb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga645d041a92bde312d6cf64517c618c41"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga645d041a92bde312d6cf64517c618c41">SPI_MasterTransferHandleIRQ</a> (SPI_Type *base, <a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *handle)</td></tr>
<tr class="memdesc:ga645d041a92bde312d6cf64517c618c41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupts the handler for the SPI. <a href="#ga645d041a92bde312d6cf64517c618c41">More...</a><br/></td></tr>
<tr class="separator:ga645d041a92bde312d6cf64517c618c41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7c6a9ac8e0e410684970f3169404bafd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga7c6a9ac8e0e410684970f3169404bafd">SPI_SlaveTransferCreateHandle</a> (SPI_Type *base, <a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *handle, <a class="el" href="a00019.html#ga86b45b85e036adc762eed5bcd2a0491d">spi_slave_callback_t</a> callback, void *userData)</td></tr>
<tr class="memdesc:ga7c6a9ac8e0e410684970f3169404bafd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the SPI slave handle. <a href="#ga7c6a9ac8e0e410684970f3169404bafd">More...</a><br/></td></tr>
<tr class="separator:ga7c6a9ac8e0e410684970f3169404bafd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga93765aa3b062471b641f1b8f733b8b5b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga93765aa3b062471b641f1b8f733b8b5b">SPI_SlaveTransferNonBlocking</a> (SPI_Type *base, <a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *handle, <a class="el" href="a00019.html#ga59314d5596f240cfbe8b9466bd99ed3f">spi_transfer_t</a> *xfer)</td></tr>
<tr class="memdesc:ga93765aa3b062471b641f1b8f733b8b5b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs a non-blocking SPI slave interrupt transfer. <a href="#ga93765aa3b062471b641f1b8f733b8b5b">More...</a><br/></td></tr>
<tr class="separator:ga93765aa3b062471b641f1b8f733b8b5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0dcd2ed8373d992ff93bb500e1442815"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ga0dcd2ed8373d992ff93bb500e1442815">SPI_SlaveTransferGetCount</a> (SPI_Type *base, <a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *handle, size_t *count)</td></tr>
<tr class="memdesc:ga0dcd2ed8373d992ff93bb500e1442815"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the slave transfer count. <a href="#ga0dcd2ed8373d992ff93bb500e1442815">More...</a><br/></td></tr>
<tr class="separator:ga0dcd2ed8373d992ff93bb500e1442815"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae719048431a3e4fb334f83bd824a407b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gae719048431a3e4fb334f83bd824a407b">SPI_SlaveTransferAbort</a> (SPI_Type *base, <a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *handle)</td></tr>
<tr class="memdesc:gae719048431a3e4fb334f83bd824a407b"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI slave aborts a transfer using an interrupt. <a href="#gae719048431a3e4fb334f83bd824a407b">More...</a><br/></td></tr>
<tr class="separator:gae719048431a3e4fb334f83bd824a407b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaac1ff8fc728c925d78b1237949ebf7c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#gaac1ff8fc728c925d78b1237949ebf7c3">SPI_SlaveTransferHandleIRQ</a> (SPI_Type *base, <a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *handle)</td></tr>
<tr class="memdesc:gaac1ff8fc728c925d78b1237949ebf7c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupts a handler for the SPI slave. <a href="#gaac1ff8fc728c925d78b1237949ebf7c3">More...</a><br/></td></tr>
<tr class="separator:gaac1ff8fc728c925d78b1237949ebf7c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="a00117" id="a00117"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _spi_delay_config</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"></div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:a5a9538fb17f9ad1ae6e5bc3654674bf5"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a5a9538fb17f9ad1ae6e5bc3654674bf5">preDelay</a></td></tr>
<tr class="memdesc:a5a9538fb17f9ad1ae6e5bc3654674bf5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delay between SSEL assertion and the beginning of transfer. <a href="#a5a9538fb17f9ad1ae6e5bc3654674bf5">More...</a><br/></td></tr>
<tr class="separator:a5a9538fb17f9ad1ae6e5bc3654674bf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed8236ecb1aea1a39be3f060e8de34c7"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#aed8236ecb1aea1a39be3f060e8de34c7">postDelay</a></td></tr>
<tr class="memdesc:aed8236ecb1aea1a39be3f060e8de34c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delay between the end of transfer and SSEL deassertion. <a href="#aed8236ecb1aea1a39be3f060e8de34c7">More...</a><br/></td></tr>
<tr class="separator:aed8236ecb1aea1a39be3f060e8de34c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf7584dd222128b434052c58d1bdecbc"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#abf7584dd222128b434052c58d1bdecbc">frameDelay</a></td></tr>
<tr class="memdesc:abf7584dd222128b434052c58d1bdecbc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delay between frame to frame. <a href="#abf7584dd222128b434052c58d1bdecbc">More...</a><br/></td></tr>
<tr class="separator:abf7584dd222128b434052c58d1bdecbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef054205e545959e62a3aea546cee042"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#aef054205e545959e62a3aea546cee042">transferDelay</a></td></tr>
<tr class="memdesc:aef054205e545959e62a3aea546cee042"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delay between transfer to transfer. <a href="#aef054205e545959e62a3aea546cee042">More...</a><br/></td></tr>
<tr class="separator:aef054205e545959e62a3aea546cee042"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="a5a9538fb17f9ad1ae6e5bc3654674bf5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t _spi_delay_config::preDelay</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="aed8236ecb1aea1a39be3f060e8de34c7"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t _spi_delay_config::postDelay</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="abf7584dd222128b434052c58d1bdecbc"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t _spi_delay_config::frameDelay</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="aef054205e545959e62a3aea546cee042"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t _spi_delay_config::transferDelay</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="a00118" id="a00118"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _spi_master_config</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"></div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:a1677d25ffaa802e2a44ea7ed20d2ca18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1677d25ffaa802e2a44ea7ed20d2ca18"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a1677d25ffaa802e2a44ea7ed20d2ca18">enableLoopback</a></td></tr>
<tr class="memdesc:a1677d25ffaa802e2a44ea7ed20d2ca18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable loopback for test purpose. <br/></td></tr>
<tr class="separator:a1677d25ffaa802e2a44ea7ed20d2ca18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21f290440b9d5e90f40c297a35e9d5ec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a21f290440b9d5e90f40c297a35e9d5ec"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a21f290440b9d5e90f40c297a35e9d5ec">enableMaster</a></td></tr>
<tr class="memdesc:a21f290440b9d5e90f40c297a35e9d5ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable SPI at initialization time. <br/></td></tr>
<tr class="separator:a21f290440b9d5e90f40c297a35e9d5ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cba2f473c8c924773ddc933be83c939"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8cba2f473c8c924773ddc933be83c939"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a8cba2f473c8c924773ddc933be83c939">baudRate_Bps</a></td></tr>
<tr class="memdesc:a8cba2f473c8c924773ddc933be83c939"><td class="mdescLeft">&#160;</td><td class="mdescRight">Baud Rate for SPI in Hz. <br/></td></tr>
<tr class="separator:a8cba2f473c8c924773ddc933be83c939"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae90ee3831c40c91378c657046f74825f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae90ee3831c40c91378c657046f74825f"></a>
<a class="el" href="a00019.html#ga9de95ac02ae859ac26534c06eb47b5b8">spi_clock_polarity_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ae90ee3831c40c91378c657046f74825f">clockPolarity</a></td></tr>
<tr class="memdesc:ae90ee3831c40c91378c657046f74825f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clock polarity. <br/></td></tr>
<tr class="separator:ae90ee3831c40c91378c657046f74825f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9e0087b540a3d80d58ab1cd7384538f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9e0087b540a3d80d58ab1cd7384538f"></a>
<a class="el" href="a00019.html#ga12e1c73dd72aaabd76ff5ce23c0d3244">spi_clock_phase_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#af9e0087b540a3d80d58ab1cd7384538f">clockPhase</a></td></tr>
<tr class="memdesc:af9e0087b540a3d80d58ab1cd7384538f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clock phase. <br/></td></tr>
<tr class="separator:af9e0087b540a3d80d58ab1cd7384538f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae222bf1f735603efc912489f7d3b778c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae222bf1f735603efc912489f7d3b778c"></a>
<a class="el" href="a00019.html#gadc24bb931a59fc64ee4cb60ed56addb4">spi_shift_direction_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ae222bf1f735603efc912489f7d3b778c">direction</a></td></tr>
<tr class="memdesc:ae222bf1f735603efc912489f7d3b778c"><td class="mdescLeft">&#160;</td><td class="mdescRight">MSB or LSB. <br/></td></tr>
<tr class="separator:ae222bf1f735603efc912489f7d3b778c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d506d4156e7e9d46ba531ff56ddd3a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8d506d4156e7e9d46ba531ff56ddd3a7"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a8d506d4156e7e9d46ba531ff56ddd3a7">dataWidth</a></td></tr>
<tr class="memdesc:a8d506d4156e7e9d46ba531ff56ddd3a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Width of the data. <br/></td></tr>
<tr class="separator:a8d506d4156e7e9d46ba531ff56ddd3a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f58207867da4bce8e21aef3d14b36c0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f58207867da4bce8e21aef3d14b36c0"></a>
<a class="el" href="a00019.html#gab2c4dcc02a93990358783cbdce5e6d51">spi_ssel_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a2f58207867da4bce8e21aef3d14b36c0">sselNumber</a></td></tr>
<tr class="memdesc:a2f58207867da4bce8e21aef3d14b36c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Slave select number. <br/></td></tr>
<tr class="separator:a2f58207867da4bce8e21aef3d14b36c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af04e8fe6a645da87ee12619e59e2598f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af04e8fe6a645da87ee12619e59e2598f"></a>
<a class="el" href="a00019.html#ga81db47cb3d4de3ce1bee11725659b0d7">spi_spol_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#af04e8fe6a645da87ee12619e59e2598f">sselPolarity</a></td></tr>
<tr class="memdesc:af04e8fe6a645da87ee12619e59e2598f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configure active CS polarity. <br/></td></tr>
<tr class="separator:af04e8fe6a645da87ee12619e59e2598f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0dd557fb69673bc7e825d0e9845fd575"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00019.html#ga5d2ab71dbc12d399a9e125103fd3ec10">spi_delay_config_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a0dd557fb69673bc7e825d0e9845fd575">delayConfig</a></td></tr>
<tr class="memdesc:a0dd557fb69673bc7e825d0e9845fd575"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configure for delay time. <a href="#a0dd557fb69673bc7e825d0e9845fd575">More...</a><br/></td></tr>
<tr class="separator:a0dd557fb69673bc7e825d0e9845fd575"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="a0dd557fb69673bc7e825d0e9845fd575"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00019.html#ga5d2ab71dbc12d399a9e125103fd3ec10">spi_delay_config_t</a> _spi_master_config::delayConfig</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="a00120" id="a00120"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _spi_slave_config</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"></div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:a9cd2350556d5f374c285e1cc82d1a0cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9cd2350556d5f374c285e1cc82d1a0cd"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a9cd2350556d5f374c285e1cc82d1a0cd">enableSlave</a></td></tr>
<tr class="memdesc:a9cd2350556d5f374c285e1cc82d1a0cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable SPI at initialization time. <br/></td></tr>
<tr class="separator:a9cd2350556d5f374c285e1cc82d1a0cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3c74e7d0889da63926fe36ab14ec477"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3c74e7d0889da63926fe36ab14ec477"></a>
<a class="el" href="a00019.html#ga9de95ac02ae859ac26534c06eb47b5b8">spi_clock_polarity_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ad3c74e7d0889da63926fe36ab14ec477">clockPolarity</a></td></tr>
<tr class="memdesc:ad3c74e7d0889da63926fe36ab14ec477"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clock polarity. <br/></td></tr>
<tr class="separator:ad3c74e7d0889da63926fe36ab14ec477"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcaa0eec27e2e09c26c4eb4d7a516de8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abcaa0eec27e2e09c26c4eb4d7a516de8"></a>
<a class="el" href="a00019.html#ga12e1c73dd72aaabd76ff5ce23c0d3244">spi_clock_phase_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#abcaa0eec27e2e09c26c4eb4d7a516de8">clockPhase</a></td></tr>
<tr class="memdesc:abcaa0eec27e2e09c26c4eb4d7a516de8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clock phase. <br/></td></tr>
<tr class="separator:abcaa0eec27e2e09c26c4eb4d7a516de8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa45fa3b6868b3efab6bb769342a83b08"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa45fa3b6868b3efab6bb769342a83b08"></a>
<a class="el" href="a00019.html#gadc24bb931a59fc64ee4cb60ed56addb4">spi_shift_direction_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#aa45fa3b6868b3efab6bb769342a83b08">direction</a></td></tr>
<tr class="memdesc:aa45fa3b6868b3efab6bb769342a83b08"><td class="mdescLeft">&#160;</td><td class="mdescRight">MSB or LSB. <br/></td></tr>
<tr class="separator:aa45fa3b6868b3efab6bb769342a83b08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7313f9e492afbf8ff4680502124b4fe2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7313f9e492afbf8ff4680502124b4fe2"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a7313f9e492afbf8ff4680502124b4fe2">dataWidth</a></td></tr>
<tr class="memdesc:a7313f9e492afbf8ff4680502124b4fe2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Width of the data. <br/></td></tr>
<tr class="separator:a7313f9e492afbf8ff4680502124b4fe2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63ddc4cf4beddeb93868a2511bf6286f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63ddc4cf4beddeb93868a2511bf6286f"></a>
<a class="el" href="a00019.html#ga81db47cb3d4de3ce1bee11725659b0d7">spi_spol_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a63ddc4cf4beddeb93868a2511bf6286f">sselPolarity</a></td></tr>
<tr class="memdesc:a63ddc4cf4beddeb93868a2511bf6286f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configure active CS polarity. <br/></td></tr>
<tr class="separator:a63ddc4cf4beddeb93868a2511bf6286f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div>
</div>
<a name="a00121" id="a00121"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _spi_transfer</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"></div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:a4c9897ae5dd550dba2db4a5bc4beb00e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c9897ae5dd550dba2db4a5bc4beb00e"></a>
uint8_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a4c9897ae5dd550dba2db4a5bc4beb00e">txData</a></td></tr>
<tr class="memdesc:a4c9897ae5dd550dba2db4a5bc4beb00e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send buffer. <br/></td></tr>
<tr class="separator:a4c9897ae5dd550dba2db4a5bc4beb00e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a747148e84f9c242b274a022aed7a0555"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a747148e84f9c242b274a022aed7a0555"></a>
uint8_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a747148e84f9c242b274a022aed7a0555">rxData</a></td></tr>
<tr class="memdesc:a747148e84f9c242b274a022aed7a0555"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receive buffer. <br/></td></tr>
<tr class="separator:a747148e84f9c242b274a022aed7a0555"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79e2b8992abc1795158494ee18ad4473"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79e2b8992abc1795158494ee18ad4473"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a79e2b8992abc1795158494ee18ad4473">dataSize</a></td></tr>
<tr class="memdesc:a79e2b8992abc1795158494ee18ad4473"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transfer bytes. <br/></td></tr>
<tr class="separator:a79e2b8992abc1795158494ee18ad4473"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59471cf32712d027d561669583d2f89f"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a59471cf32712d027d561669583d2f89f">configFlags</a></td></tr>
<tr class="memdesc:a59471cf32712d027d561669583d2f89f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Additional option to control transfer <a class="el" href="a00019.html#gaaa2e2f2efa7be228c775fa239ab5ea03">_spi_xfer_option</a>. <a href="#a59471cf32712d027d561669583d2f89f">More...</a><br/></td></tr>
<tr class="separator:a59471cf32712d027d561669583d2f89f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="a59471cf32712d027d561669583d2f89f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t _spi_transfer::configFlags</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="a00119" id="a00119"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _spi_master_handle</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"></div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:a867963777e36d1376c6650031c56a8dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a867963777e36d1376c6650031c56a8dc"></a>
uint8_t *volatile&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a867963777e36d1376c6650031c56a8dc">txData</a></td></tr>
<tr class="memdesc:a867963777e36d1376c6650031c56a8dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transfer buffer. <br/></td></tr>
<tr class="separator:a867963777e36d1376c6650031c56a8dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2ff0ccc0b7c02ad4be567e9e09eb840"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac2ff0ccc0b7c02ad4be567e9e09eb840"></a>
uint8_t *volatile&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#ac2ff0ccc0b7c02ad4be567e9e09eb840">rxData</a></td></tr>
<tr class="memdesc:ac2ff0ccc0b7c02ad4be567e9e09eb840"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receive buffer. <br/></td></tr>
<tr class="separator:ac2ff0ccc0b7c02ad4be567e9e09eb840"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6694d3629434500b949c94f88e6f6743"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6694d3629434500b949c94f88e6f6743"></a>
volatile size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a6694d3629434500b949c94f88e6f6743">txRemainingBytes</a></td></tr>
<tr class="memdesc:a6694d3629434500b949c94f88e6f6743"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of data to be transmitted [in bytes]. <br/></td></tr>
<tr class="separator:a6694d3629434500b949c94f88e6f6743"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3706da91ee40a2f2bd006765fa6d9d5f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3706da91ee40a2f2bd006765fa6d9d5f"></a>
volatile size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a3706da91ee40a2f2bd006765fa6d9d5f">rxRemainingBytes</a></td></tr>
<tr class="memdesc:a3706da91ee40a2f2bd006765fa6d9d5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of data to be received [in bytes]. <br/></td></tr>
<tr class="separator:a3706da91ee40a2f2bd006765fa6d9d5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90dcc0891804465061db37a61d6a6dfe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a90dcc0891804465061db37a61d6a6dfe"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a90dcc0891804465061db37a61d6a6dfe">totalByteCount</a></td></tr>
<tr class="memdesc:a90dcc0891804465061db37a61d6a6dfe"><td class="mdescLeft">&#160;</td><td class="mdescRight">A number of transfer bytes. <br/></td></tr>
<tr class="separator:a90dcc0891804465061db37a61d6a6dfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e535bb80a844ac409dbf51c2ecee955"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e535bb80a844ac409dbf51c2ecee955"></a>
volatile uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a4e535bb80a844ac409dbf51c2ecee955">state</a></td></tr>
<tr class="memdesc:a4e535bb80a844ac409dbf51c2ecee955"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI internal state. <br/></td></tr>
<tr class="separator:a4e535bb80a844ac409dbf51c2ecee955"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23ddc6ed23916e8d059decde7018013b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a23ddc6ed23916e8d059decde7018013b"></a>
<a class="el" href="a00019.html#gae9bd140aeb645efab6c7552b3994e01a">spi_master_callback_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a23ddc6ed23916e8d059decde7018013b">callback</a></td></tr>
<tr class="memdesc:a23ddc6ed23916e8d059decde7018013b"><td class="mdescLeft">&#160;</td><td class="mdescRight">SPI callback. <br/></td></tr>
<tr class="separator:a23ddc6ed23916e8d059decde7018013b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaee79d264a914993a6f719038a62f1b9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaee79d264a914993a6f719038a62f1b9"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#aaee79d264a914993a6f719038a62f1b9">userData</a></td></tr>
<tr class="memdesc:aaee79d264a914993a6f719038a62f1b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback parameter. <br/></td></tr>
<tr class="separator:aaee79d264a914993a6f719038a62f1b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a078d736075e4466b9b45e066f33bfb6f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a078d736075e4466b9b45e066f33bfb6f"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#a078d736075e4466b9b45e066f33bfb6f">dataWidth</a></td></tr>
<tr class="memdesc:a078d736075e4466b9b45e066f33bfb6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Width of the data [Valid values: 1 to 16]. <br/></td></tr>
<tr class="separator:a078d736075e4466b9b45e066f33bfb6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd11fc7796a0daf717776f0aa4bd1a90"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00019.html#abd11fc7796a0daf717776f0aa4bd1a90">lastCommand</a></td></tr>
<tr class="memdesc:abd11fc7796a0daf717776f0aa4bd1a90"><td class="mdescLeft">&#160;</td><td class="mdescRight">Last command for transfer. <a href="#abd11fc7796a0daf717776f0aa4bd1a90">More...</a><br/></td></tr>
<tr class="separator:abd11fc7796a0daf717776f0aa4bd1a90"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="abd11fc7796a0daf717776f0aa4bd1a90"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t _spi_master_handle::lastCommand</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="gaeb6046de02dffe9248de71332fac246e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FSL_SPI_DRIVER_VERSION&#160;&#160;&#160;(<a class="el" href="a00082.html#ga812138aa3315b0c6953c1a26130bcc37">MAKE_VERSION</a>(2, 0, 6))</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga1541129ba8262e1649592b5109e2074c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SPI_DUMMYDATA&#160;&#160;&#160;(0x00U)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="gaa4717c15ca9604c505a5e5c60df29ebe"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SPI_RETRY_TIMES&#160;&#160;&#160;0U /* Define to zero means keep waiting until the flag is assert/deassert. */</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="gadc24bb931a59fc64ee4cb60ed56addb4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="a00019.html#ga1737fd82344e0800f66b541342894b85">_spi_shift_direction</a> <a class="el" href="a00019.html#gadc24bb931a59fc64ee4cb60ed56addb4">spi_shift_direction_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga9de95ac02ae859ac26534c06eb47b5b8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="a00019.html#ga17f9450af8f63de3fa2b3b105eeec38d">_spi_clock_polarity</a> <a class="el" href="a00019.html#ga9de95ac02ae859ac26534c06eb47b5b8">spi_clock_polarity_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga12e1c73dd72aaabd76ff5ce23c0d3244"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="a00019.html#ga76b6ec98408fdaf2e9133952eefa1baa">_spi_clock_phase</a> <a class="el" href="a00019.html#ga12e1c73dd72aaabd76ff5ce23c0d3244">spi_clock_phase_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga5d2ab71dbc12d399a9e125103fd3ec10"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="a00019.html#a00117">_spi_delay_config</a> <a class="el" href="a00019.html#ga5d2ab71dbc12d399a9e125103fd3ec10">spi_delay_config_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga15e5f834f83ba89de1e920bba9d00394"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="a00019.html#a00118">_spi_master_config</a> <a class="el" href="a00019.html#ga15e5f834f83ba89de1e920bba9d00394">spi_master_config_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="gaa62352a5d0a01f70fe74941809d03ec3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="a00019.html#a00120">_spi_slave_config</a> <a class="el" href="a00019.html#gaa62352a5d0a01f70fe74941809d03ec3">spi_slave_config_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="gaaa2e2f2efa7be228c775fa239ab5ea03"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00019.html#gaaa2e2f2efa7be228c775fa239ab5ea03">_spi_xfer_option</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggaaa2e2f2efa7be228c775fa239ab5ea03a3bc0d76da8f97613467566dc39bee3b4"></a>kSPI_EndOfFrame</em>&nbsp;</td><td class="fielddoc">
<p>Add delay at the end of each frame(the last clk edge). </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaaa2e2f2efa7be228c775fa239ab5ea03a857a31be854542eafecfea1484ad38b5"></a>kSPI_EndOfTransfer</em>&nbsp;</td><td class="fielddoc">
<p>Re-assert the CS signal after transfer finishes to deselect slave. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaaa2e2f2efa7be228c775fa239ab5ea03a2616295b1939805764ffb815876b9eea"></a>kSPI_ReceiveIgnore</em>&nbsp;</td><td class="fielddoc">
<p>Ignore the receive data. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga1737fd82344e0800f66b541342894b85"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00019.html#ga1737fd82344e0800f66b541342894b85">_spi_shift_direction</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga1737fd82344e0800f66b541342894b85ae7b997e8cff761aab865cbd42c4c3989"></a>kSPI_MsbFirst</em>&nbsp;</td><td class="fielddoc">
<p>Data transfers start with most significant bit. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga1737fd82344e0800f66b541342894b85a20ac53684c3e1ad338553cecbfab94a9"></a>kSPI_LsbFirst</em>&nbsp;</td><td class="fielddoc">
<p>Data transfers start with least significant bit. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga17f9450af8f63de3fa2b3b105eeec38d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00019.html#ga17f9450af8f63de3fa2b3b105eeec38d">_spi_clock_polarity</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga17f9450af8f63de3fa2b3b105eeec38da031c0ee2693cf1fd621e8b8cba676629"></a>kSPI_ClockPolarityActiveHigh</em>&nbsp;</td><td class="fielddoc">
<p>Active-high SPI clock (idles low). </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga17f9450af8f63de3fa2b3b105eeec38dacfc8257079c9604086622df6de326aea"></a>kSPI_ClockPolarityActiveLow</em>&nbsp;</td><td class="fielddoc">
<p>Active-low SPI clock (idles high). </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga76b6ec98408fdaf2e9133952eefa1baa"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00019.html#ga76b6ec98408fdaf2e9133952eefa1baa">_spi_clock_phase</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga76b6ec98408fdaf2e9133952eefa1baaad15d61c6fd642f13101edbf401d0c72e"></a>kSPI_ClockPhaseFirstEdge</em>&nbsp;</td><td class="fielddoc">
<p>First edge on SCK occurs at the middle of the first cycle of a data transfer. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga76b6ec98408fdaf2e9133952eefa1baaa18a98985c1f7dd56175e4a2724db3675"></a>kSPI_ClockPhaseSecondEdge</em>&nbsp;</td><td class="fielddoc">
<p>First edge on SCK occurs at the start of the first cycle of a data transfer. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga6cb1b64722deb9a98a4f1a442f58f8a9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00019.html#ga6cb1b64722deb9a98a4f1a442f58f8a9">_spi_ssel</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga6cb1b64722deb9a98a4f1a442f58f8a9af64655214a47d11f960f633b1478b117"></a>kSPI_Ssel0Assert</em>&nbsp;</td><td class="fielddoc">
<p>Slave select 0. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga63554b1f1f01b827bf6449b55ca80280"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00019.html#ga63554b1f1f01b827bf6449b55ca80280">_spi_data_width</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280a0cb8b30c67c53c6d53712d5bacc818ce"></a>kSPI_Data4Bits</em>&nbsp;</td><td class="fielddoc">
<p>4 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280a7232b4afb5bd82503252ce608638e6eb"></a>kSPI_Data5Bits</em>&nbsp;</td><td class="fielddoc">
<p>5 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280a6604fcf5c8bebf904c5b072295027bba"></a>kSPI_Data6Bits</em>&nbsp;</td><td class="fielddoc">
<p>6 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280a2c62d3d7d92866c97bb513d4e603518e"></a>kSPI_Data7Bits</em>&nbsp;</td><td class="fielddoc">
<p>7 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280ad6b98474a7f14ae7665b7b6d3355657c"></a>kSPI_Data8Bits</em>&nbsp;</td><td class="fielddoc">
<p>8 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280a4b864a74545165c2cf2dd74134fdadd1"></a>kSPI_Data9Bits</em>&nbsp;</td><td class="fielddoc">
<p>9 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280a2b2887663c9d025a4137263fc7984024"></a>kSPI_Data10Bits</em>&nbsp;</td><td class="fielddoc">
<p>10 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280a91e908a7a4725ab9df05549a2b034dec"></a>kSPI_Data11Bits</em>&nbsp;</td><td class="fielddoc">
<p>11 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280ad1cfe18fd912c0d25dc32e6ca9fa8f97"></a>kSPI_Data12Bits</em>&nbsp;</td><td class="fielddoc">
<p>12 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280ad8c2fa2e2f5bf137176dc736cc6a2531"></a>kSPI_Data13Bits</em>&nbsp;</td><td class="fielddoc">
<p>13 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280ae83435f494d1b9f3ce2f2da0ac03fc38"></a>kSPI_Data14Bits</em>&nbsp;</td><td class="fielddoc">
<p>14 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280add11012a8887066fad29e23c20d66af8"></a>kSPI_Data15Bits</em>&nbsp;</td><td class="fielddoc">
<p>15 bits data width </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga63554b1f1f01b827bf6449b55ca80280abbc2566ba4eb2b5e5dc259a7c4f80bcf"></a>kSPI_Data16Bits</em>&nbsp;</td><td class="fielddoc">
<p>16 bits data width </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gabc6126af1d45847bc59afa0aa3216b04"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">anonymous enum</td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggabc6126af1d45847bc59afa0aa3216b04a703abdf7900047c4d13536480f3463ab"></a>kStatus_SPI_Busy</em>&nbsp;</td><td class="fielddoc">
<p>SPI bus is busy. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggabc6126af1d45847bc59afa0aa3216b04a4e32c5b06dccaf4b81e2fd1679e1b560"></a>kStatus_SPI_Idle</em>&nbsp;</td><td class="fielddoc">
<p>SPI is idle. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggabc6126af1d45847bc59afa0aa3216b04a2ff91d774e93aed936b87ffaa18aaf9e"></a>kStatus_SPI_Error</em>&nbsp;</td><td class="fielddoc">
<p>SPI error. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggabc6126af1d45847bc59afa0aa3216b04ab0f4d4de5f92524c9d33524f22a04e03"></a>kStatus_SPI_BaudrateNotSupport</em>&nbsp;</td><td class="fielddoc">
<p>Baudrate is not support in current clock source. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggabc6126af1d45847bc59afa0aa3216b04a496ced6fffc33d7bbeb01d203dfc4836"></a>kStatus_SPI_Timeout</em>&nbsp;</td><td class="fielddoc">
<p>SPI Timeout polling status flags. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gaedd690a0f91a0a9eb0fd573b57e31f67"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00019.html#gaedd690a0f91a0a9eb0fd573b57e31f67">_spi_interrupt_enable</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggaedd690a0f91a0a9eb0fd573b57e31f67ac8d5eef4469ce888d4b2fb3c3b4fb215"></a>kSPI_RxReadyInterruptEnable</em>&nbsp;</td><td class="fielddoc">
<p>Rx ready interrupt. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaedd690a0f91a0a9eb0fd573b57e31f67a0ec3e79b793d213ed30f74a338437129"></a>kSPI_TxReadyInterruptEnable</em>&nbsp;</td><td class="fielddoc">
<p>Tx ready interrupt. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaedd690a0f91a0a9eb0fd573b57e31f67a4acd737132f9c3cbd8cac500767289e5"></a>kSPI_RxOverrunInterruptEnable</em>&nbsp;</td><td class="fielddoc">
<p>Rx overrun interrupt. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaedd690a0f91a0a9eb0fd573b57e31f67ad1f9b1e8b5209604a0eca8750f2876ad"></a>kSPI_TxUnderrunInterruptEnable</em>&nbsp;</td><td class="fielddoc">
<p>Tx underrun interrupt. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaedd690a0f91a0a9eb0fd573b57e31f67ad1de0c0c42c7a707e305edbd3fde88b7"></a>kSPI_SlaveSelectAssertInterruptEnable</em>&nbsp;</td><td class="fielddoc">
<p>Slave select assert interrupt. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaedd690a0f91a0a9eb0fd573b57e31f67a8f55948795fa8d256b5b6e520a95f145"></a>kSPI_SlaveSelectDeassertInterruptEnable</em>&nbsp;</td><td class="fielddoc">
<p>Slave select deassert interrupt. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga17a846c851b3b17e6a1564a5fab48e09"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00019.html#ga17a846c851b3b17e6a1564a5fab48e09">_spi_status_flags</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga17a846c851b3b17e6a1564a5fab48e09a76b9aac1ff3856afdcb4eebdb3be9094"></a>kSPI_RxReadyFlag</em>&nbsp;</td><td class="fielddoc">
<p>Receive ready flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga17a846c851b3b17e6a1564a5fab48e09a3f796180c934ef3b688530986a844fe5"></a>kSPI_TxReadyFlag</em>&nbsp;</td><td class="fielddoc">
<p>Transmit ready flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga17a846c851b3b17e6a1564a5fab48e09ae281d12263ce63ef7c964f8564bea473"></a>kSPI_RxOverrunFlag</em>&nbsp;</td><td class="fielddoc">
<p>Receive overrun flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga17a846c851b3b17e6a1564a5fab48e09a4be82e1306daa139870673c30de9e238"></a>kSPI_TxUnderrunFlag</em>&nbsp;</td><td class="fielddoc">
<p>Transmit underrun flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga17a846c851b3b17e6a1564a5fab48e09ab25cacb436c5e32113bd98c1ae151641"></a>kSPI_SlaveSelectAssertFlag</em>&nbsp;</td><td class="fielddoc">
<p>Slave select assert flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga17a846c851b3b17e6a1564a5fab48e09a1f153042fdb9681e7bd435c4cb9bd7c5"></a>kSPI_SlaveSelectDeassertFlag</em>&nbsp;</td><td class="fielddoc">
<p>slave select deassert flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga17a846c851b3b17e6a1564a5fab48e09a214bc23d48bafcc89241530e55195f76"></a>kSPI_StallFlag</em>&nbsp;</td><td class="fielddoc">
<p>Stall flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga17a846c851b3b17e6a1564a5fab48e09a4f52f3d130ab947331e668c7856d8551"></a>kSPI_EndTransferFlag</em>&nbsp;</td><td class="fielddoc">
<p>End transfer bit. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga17a846c851b3b17e6a1564a5fab48e09a03ba57874691d230ad0f657cf01a7978"></a>kSPI_MasterIdleFlag</em>&nbsp;</td><td class="fielddoc">
<p>Master in idle status flag. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="gad823d00c394f6ca35c391dc178a25334"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t SPI_GetInstance </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga45c08fc078ae334b79fb844379140838"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SPI_MasterGetDefaultConfig </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00019.html#ga15e5f834f83ba89de1e920bba9d00394">spi_master_config_t</a> *&#160;</td>
<td class="paramname"><em>config</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The purpose of this API is to get the configuration structure initialized for use in <a class="el" href="a00019.html#gab36e8463576abeded221a1e5a1eec01c" title="Initializes the SPI with master configuration. ">SPI_MasterInit()</a>. User may use the initialized structure unchanged in <a class="el" href="a00019.html#gab36e8463576abeded221a1e5a1eec01c" title="Initializes the SPI with master configuration. ">SPI_MasterInit()</a>, or modify some fields of the structure before calling <a class="el" href="a00019.html#gab36e8463576abeded221a1e5a1eec01c" title="Initializes the SPI with master configuration. ">SPI_MasterInit()</a>. After calling this API, the master is ready to transfer. Example: </p>
<div class="fragment"><div class="line"><a class="code" href="a00019.html#a00118">spi_master_config_t</a> config;</div>
<div class="line"><a class="code" href="a00019.html#ga45c08fc078ae334b79fb844379140838">SPI_MasterGetDefaultConfig</a>(&amp;config);</div>
</div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">config</td><td>pointer to master config structure </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gab36e8463576abeded221a1e5a1eec01c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SPI_MasterInit </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="a00019.html#ga15e5f834f83ba89de1e920bba9d00394">spi_master_config_t</a> *&#160;</td>
<td class="paramname"><em>config</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>srcClock_Hz</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The configuration structure can be filled by user from scratch, or be set with default values by <a class="el" href="a00019.html#ga45c08fc078ae334b79fb844379140838" title="Sets the SPI master configuration structure to default values. ">SPI_MasterGetDefaultConfig()</a>. After calling this API, the slave is ready to transfer. Example </p>
<div class="fragment"><div class="line"><a class="code" href="a00019.html#a00118">spi_master_config_t</a> config = {</div>
<div class="line">.<a class="code" href="a00019.html#a8cba2f473c8c924773ddc933be83c939">baudRate_Bps</a> = 500000,</div>
<div class="line">...</div>
<div class="line">};</div>
<div class="line"><a class="code" href="a00019.html#gab36e8463576abeded221a1e5a1eec01c">SPI_MasterInit</a>(SPI0, &amp;config);</div>
</div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">config</td><td>pointer to master configuration structure </td></tr>
<tr><td class="paramname">srcClock_Hz</td><td>Source clock frequency. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gac000b63ed033f57a9eee342a8c8e67f2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SPI_SlaveGetDefaultConfig </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00019.html#gaa62352a5d0a01f70fe74941809d03ec3">spi_slave_config_t</a> *&#160;</td>
<td class="paramname"><em>config</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The purpose of this API is to get the configuration structure initialized for use in <a class="el" href="a00019.html#gae40850ce14ba74ea75b3eef79beecf8a" title="Initializes the SPI with slave configuration. ">SPI_SlaveInit()</a>. Modify some fields of the structure before calling <a class="el" href="a00019.html#gae40850ce14ba74ea75b3eef79beecf8a" title="Initializes the SPI with slave configuration. ">SPI_SlaveInit()</a>. Example: </p>
<div class="fragment"><div class="line"><a class="code" href="a00019.html#a00120">spi_slave_config_t</a> config;</div>
<div class="line"><a class="code" href="a00019.html#gac000b63ed033f57a9eee342a8c8e67f2">SPI_SlaveGetDefaultConfig</a>(&amp;config);</div>
</div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">config</td><td>pointer to slave configuration structure </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gae40850ce14ba74ea75b3eef79beecf8a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SPI_SlaveInit </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="a00019.html#gaa62352a5d0a01f70fe74941809d03ec3">spi_slave_config_t</a> *&#160;</td>
<td class="paramname"><em>config</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The configuration structure can be filled by user from scratch or be set with default values by <a class="el" href="a00019.html#gac000b63ed033f57a9eee342a8c8e67f2" title="Sets the SPI slave configuration structure to default values. ">SPI_SlaveGetDefaultConfig()</a>. After calling this API, the slave is ready to transfer. Example </p>
<div class="fragment"><div class="line"><a class="code" href="a00019.html#a00120">spi_slave_config_t</a> config = {</div>
<div class="line">.polarity = <a class="code" href="a00019.html#gga17f9450af8f63de3fa2b3b105eeec38da031c0ee2693cf1fd621e8b8cba676629">kSPI_ClockPolarityActiveHigh</a>;</div>
<div class="line">.phase = <a class="code" href="a00019.html#gga76b6ec98408fdaf2e9133952eefa1baaad15d61c6fd642f13101edbf401d0c72e">kSPI_ClockPhaseFirstEdge</a>;</div>
<div class="line">.direction = <a class="code" href="a00019.html#gga1737fd82344e0800f66b541342894b85ae7b997e8cff761aab865cbd42c4c3989">kSPI_MsbFirst</a>;</div>
<div class="line">...</div>
<div class="line">};</div>
<div class="line"><a class="code" href="a00019.html#gae40850ce14ba74ea75b3eef79beecf8a">SPI_SlaveInit</a>(SPI0, &amp;config);</div>
</div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">config</td><td>pointer to slave configuration structure </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaac0bc2b87ea2eb7eeba78d9449d4dbbf"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SPI_Deinit </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Calling this API resets the SPI module, gates the SPI clock. Disable the fifo if enabled. The SPI module can't work unless calling the SPI_MasterInit/SPI_SlaveInit to initialize module.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga6d32506242b9596989efbbb2d030e997"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void SPI_Enable </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>enable</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">enable</td><td>or disable ( true = enable, false = disable) </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga9e7412ad45aeb7f620fe34559034ad2e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static uint32_t SPI_GetStatusFlags </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SPI Status, use status flag to AND <a class="el" href="a00019.html#ga17a846c851b3b17e6a1564a5fab48e09">_spi_status_flags</a> could get the related status. </dd></dl>
</div>
</div>
<a class="anchor" id="ga794c7435fa108012df54bb6294f20505"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void SPI_ClearStatusFlags </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>mask</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">mask</td><td>SPI Status, use status flag to AND <a class="el" href="a00019.html#ga17a846c851b3b17e6a1564a5fab48e09">_spi_status_flags</a> could get the related status. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gab87ea500d8f74369882afe52a81d1199"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void SPI_EnableInterrupts </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>irqs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">irqs</td><td>SPI interrupt source. The parameter can be any combination of the following values: <ul>
<li>kSPI_RxReadyInterruptEnable </li>
<li>kSPI_TxReadyInterruptEnable </li>
</ul>
</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga6289b192b135592b7b0996c05422be4d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void SPI_DisableInterrupts </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>irqs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">irqs</td><td>SPI interrupt source. The parameter can be any combination of the following values: <ul>
<li>kSPI_RxReadyInterruptEnable </li>
<li>kSPI_TxReadyInterruptEnable </li>
</ul>
</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga97782e786464ec2de946bd42e63aefbc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool SPI_IsMaster </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral address. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns true if the module is in master mode or false if the module is in slave mode. </dd></dl>
</div>
</div>
<a class="anchor" id="ga3ad4747ccc31c142c54af5639cd49328"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SPI_MasterSetBaudRate </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>baudrate_Bps</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>srcClock_Hz</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This is only used in master.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">baudrate_Bps</td><td>baud rate needed in Hz. </td></tr>
<tr><td class="paramname">srcClock_Hz</td><td>SPI source clock frequency in Hz. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga92c1bd47d2ad7b45fc138fccb4bc1ace"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void SPI_WriteData </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>data</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">data</td><td>needs to be write. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga709b0d176b737a8009221565f3ae19e6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void SPI_WriteConfigFlags </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>configFlags</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">configFlags</td><td>control command needs to be written. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gad3810513c85cb28f1dbf18b15614a09d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SPI_WriteDataWithConfigFlags </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>configFlags</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">data</td><td>value needs to be written. </td></tr>
<tr><td class="paramname">configFlags</td><td>control command needs to be written. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga08dec9d9d6abf910589a591f1cc52f58"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static uint32_t SPI_ReadData </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Data in the register. </dd></dl>
</div>
</div>
<a class="anchor" id="gad4071c9fc158109945e724872f4760b6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SPI_SetTransferDelay </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="a00019.html#ga5d2ab71dbc12d399a9e125103fd3ec10">spi_delay_config_t</a> *&#160;</td>
<td class="paramname"><em>config</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment"> the delay uint is SPI clock time, maximum value is 0xF.
</pre> <dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">config</td><td>configuration for delay option <a class="el" href="a00019.html#ga5d2ab71dbc12d399a9e125103fd3ec10">spi_delay_config_t</a>. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gac75808445b18f687387bea02892a5246"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SPI_SetDummyData </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>dummyData</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This API can change the default data to be transferred when users set the tx buffer to NULL.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral address. </td></tr>
<tr><td class="paramname">dummyData</td><td>Data to be transferred when tx buffer is NULL. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga5b05095245ecf01258e64cc0458fb2e9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SPI_MasterTransferBlocking </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#ga59314d5596f240cfbe8b9466bd99ed3f">spi_transfer_t</a> *&#160;</td>
<td class="paramname"><em>xfer</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI base pointer </td></tr>
<tr><td class="paramname">xfer</td><td>pointer to spi_xfer_config_t structure </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>Successfully start a transfer. </td></tr>
<tr><td class="paramname">kStatus_InvalidArgument</td><td>Input argument is invalid. </td></tr>
<tr><td class="paramname">kStatus_SPI_Timeout</td><td>The transfer timed out and was aborted. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gad0d8eaa132d8c882d8a42286ecfbab64"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SPI_MasterTransferCreateHandle </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gae9bd140aeb645efab6c7552b3994e01a">spi_master_callback_t</a>&#160;</td>
<td class="paramname"><em>callback</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>userData</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function initializes the SPI master handle which can be used for other SPI master transactional APIs. Usually, for a specified SPI instance, call this API once to get the initialized handle.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>SPI handle pointer. </td></tr>
<tr><td class="paramname">callback</td><td>Callback function. </td></tr>
<tr><td class="paramname">userData</td><td>User data. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga820c78a32fa29735168d2e517f4881a1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SPI_MasterTransferNonBlocking </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#ga59314d5596f240cfbe8b9466bd99ed3f">spi_transfer_t</a> *&#160;</td>
<td class="paramname"><em>xfer</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>pointer to spi_master_handle_t structure which stores the transfer state </td></tr>
<tr><td class="paramname">xfer</td><td>pointer to spi_xfer_config_t structure </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>Successfully start a transfer. </td></tr>
<tr><td class="paramname">kStatus_InvalidArgument</td><td>Input argument is invalid. </td></tr>
<tr><td class="paramname">kStatus_SPI_Busy</td><td>SPI is not idle, is running another transfer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gabde0dccfb0783d103b9cf57e0202582f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SPI_MasterTransferGetCount </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t *&#160;</td>
<td class="paramname"><em>count</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function gets the master transfer count.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>Pointer to the spi_master_handle_t structure which stores the transfer state. </td></tr>
<tr><td class="paramname">count</td><td>The number of bytes transferred by using the non-blocking transaction. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>status of status_t. </dd></dl>
</div>
</div>
<a class="anchor" id="gae90962a54978acf05ca7780489301eb4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SPI_MasterTransferAbort </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function aborts a transfer using an interrupt.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>Pointer to the spi_master_handle_t structure which stores the transfer state. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga645d041a92bde312d6cf64517c618c41"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SPI_MasterTransferHandleIRQ </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gafb311d8a8b7de084d82915f5a003a300">spi_master_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>pointer to spi_master_handle_t structure which stores the transfer state. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga7c6a9ac8e0e410684970f3169404bafd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SPI_SlaveTransferCreateHandle </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#ga86b45b85e036adc762eed5bcd2a0491d">spi_slave_callback_t</a>&#160;</td>
<td class="paramname"><em>callback</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>userData</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function initializes the SPI slave handle which can be used for other SPI slave transactional APIs. Usually, for a specified SPI instance, call this API once to get the initialized handle.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>SPI handle pointer. </td></tr>
<tr><td class="paramname">callback</td><td>Callback function. </td></tr>
<tr><td class="paramname">userData</td><td>User data. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga93765aa3b062471b641f1b8f733b8b5b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SPI_SlaveTransferNonBlocking </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#ga59314d5596f240cfbe8b9466bd99ed3f">spi_transfer_t</a> *&#160;</td>
<td class="paramname"><em>xfer</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section note"><dt>Note</dt><dd>The API returns immediately after the transfer initialization is finished.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>pointer to spi_master_handle_t structure which stores the transfer state </td></tr>
<tr><td class="paramname">xfer</td><td>pointer to spi_xfer_config_t structure </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>Successfully start a transfer. </td></tr>
<tr><td class="paramname">kStatus_InvalidArgument</td><td>Input argument is invalid. </td></tr>
<tr><td class="paramname">kStatus_SPI_Busy</td><td>SPI is not idle, is running another transfer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga0dcd2ed8373d992ff93bb500e1442815"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="a00082.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SPI_SlaveTransferGetCount </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t *&#160;</td>
<td class="paramname"><em>count</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This function gets the slave transfer count.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>Pointer to the spi_master_handle_t structure which stores the transfer state. </td></tr>
<tr><td class="paramname">count</td><td>The number of bytes transferred by using the non-blocking transaction. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>status of status_t. </dd></dl>
</div>
</div>
<a class="anchor" id="gae719048431a3e4fb334f83bd824a407b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void SPI_SlaveTransferAbort </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This function aborts a transfer using an interrupt.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>Pointer to the spi_slave_handle_t structure which stores the transfer state. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaac1ff8fc728c925d78b1237949ebf7c3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SPI_SlaveTransferHandleIRQ </td>
<td>(</td>
<td class="paramtype">SPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00019.html#gad267cfee3a876b2860217ff94f03f574">spi_slave_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>SPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>pointer to spi_slave_handle_t structure which stores the transfer state </td></tr>
</table>
</dd>
</dl>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.5-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul class="foot">
<li class="footer">&copy; 2016 NXP Semiconductors. All rights reserved.
</li>
</ul>
</div>
</body>
</html>