Files
2016-08-09 18:06:35 +02:00

3930 lines
227 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.6"/>
<title>Kinetis SDK v.2.0 API Reference Manual: FlexCAN 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">Kinetis SDK v.2.0 API Reference Manual
&#160;<span id="projectnumber">Rev. 0</span>
</div>
<div id="projectbrief">Freescale Semiconductor, Inc.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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('group__flexcan__driver.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> </div>
<div class="headertitle">
<div class="title">FlexCAN Driver<div class="ingroups"><a class="el" href="group__flexcan.html">FlexCAN: Flex Controller Area Network 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 FlexCAN driver. The FlexCAN driver configures FlexCAN module, provides a functional and transactional interfaces to build the FlexCAN application.</p>
<h1><a class="anchor" id="FlexCANTpyUC"></a>
Typical use case</h1>
<h2><a class="anchor" id="FlexCANMbSendOps"></a>
Message Buffer Send Operation</h2>
<div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#structflexcan__config__t">flexcan_config_t</a> flexcanConfig;</div>
<div class="line"><a class="code" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> txFrame;</div>
<div class="line"></div>
<div class="line"><span class="comment">/* Init FlexCAN module. </span></div>
<div class="line"><span class="comment">FLEXCAN_GetDefaultConfig(&amp;flexcanConfig);</span></div>
<div class="line"><span class="comment">FLEXCAN_Init(EXAMPLE_CAN, &amp;flexcanConfig);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Enable FlexCAN module. </span></div>
<div class="line"><span class="comment">FLEXCAN_Enable(EXAMPLE_CAN, true);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Sets up the transmit message buffer. </span></div>
<div class="line"><span class="comment">FLEXCAN_SetTxMbConfig(EXAMPLE_CAN, TX_MESSAGE_BUFFER_INDEX, true);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Prepares the transmit frame for sending. </span></div>
<div class="line"><span class="comment">txFrame.format = KFLEXCAN_FrameFormatStandard;</span></div>
<div class="line"><span class="comment">txFrame.type = KFLEXCAN_FrameTypeData;</span></div>
<div class="line"><span class="comment">txFrame.id = FLEXCAN_ID_STD(0x123);</span></div>
<div class="line"><span class="comment">txFrame.length = 8;</span></div>
<div class="line"><span class="comment">txFrame.dataWord0 = CAN_WORD0_DATA_BYTE_0(0x11) |</span></div>
<div class="line"><span class="comment"> CAN_WORD0_DATA_BYTE_1(0x22) |</span></div>
<div class="line"><span class="comment"> CAN_WORD0_DATA_BYTE_2(0x33) |</span></div>
<div class="line"><span class="comment"> CAN_WORD0_DATA_BYTE_3(0x44);</span></div>
<div class="line"><span class="comment">txFrame.dataWord1 = CAN_WORD1_DATA_BYTE_4(0x55) |</span></div>
<div class="line"><span class="comment"> CAN_WORD1_DATA_BYTE_5(0x66) |</span></div>
<div class="line"><span class="comment"> CAN_WORD1_DATA_BYTE_6(0x77) |</span></div>
<div class="line"><span class="comment"> CAN_WORD1_DATA_BYTE_7(0x88);</span></div>
<div class="line"><span class="comment">/* Writes a transmit message buffer to send a CAN Message. </span></div>
<div class="line"><span class="comment">FLEXCAN_WriteTxMb(EXAMPLE_CAN, TX_MESSAGE_BUFFER_INDEX, &amp;txFrame);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Waits until the transmit message buffer is empty. </span></div>
<div class="line"><span class="comment">while (!FLEXCAN_GetMbStatusFlags(EXAMPLE_CAN, 1 &lt;&lt; TX_MESSAGE_BUFFER_INDEX));</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Cleans the transmit message buffer empty status. </span></div>
<div class="line"><span class="comment">FLEXCAN_ClearMbStatusFlags(EXAMPLE_CAN, 1 &lt;&lt; TX_MESSAGE_BUFFER_INDEX);</span></div>
</div><!-- fragment --><h2><a class="anchor" id="FlexCANMbReceiveOps"></a>
Message Buffer Receive Operation</h2>
<div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#structflexcan__config__t">flexcan_config_t</a> flexcanConfig;</div>
<div class="line"><a class="code" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> rxFrame;</div>
<div class="line"></div>
<div class="line"><span class="comment">/* Initializes the FlexCAN module. </span></div>
<div class="line"><span class="comment">FLEXCAN_GetDefaultConfig(&amp;flexcanConfig);</span></div>
<div class="line"><span class="comment">FLEXCAN_Init(EXAMPLE_CAN, &amp;flexcanConfig);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Enables the FlexCAN module. </span></div>
<div class="line"><span class="comment">FLEXCAN_Enable(EXAMPLE_CAN, true);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Sets up the receive message buffer. </span></div>
<div class="line"><span class="comment">mbConfig.format = KFLEXCAN_FrameFormatStandard;</span></div>
<div class="line"><span class="comment">mbConfig.type = KFLEXCAN_FrameTypeData;</span></div>
<div class="line"><span class="comment">mbConfig.id = FLEXCAN_ID_STD(0x123);</span></div>
<div class="line"><span class="comment">FLEXCAN_SetRxMbConfig(EXAMPLE_CAN, RX_MESSAGE_BUFFER_INDEX, &amp;mbConfig, true);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Waits until the receive message buffer is full. </span></div>
<div class="line"><span class="comment">while (!FLEXCAN_GetMbStatusFlags(EXAMPLE_CAN, 1 &lt;&lt; RX_MESSAGE_BUFFER_INDEX));</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Reads the received message from the receive message buffer. </span></div>
<div class="line"><span class="comment">FLEXCAN_ReadRxMb(EXAMPLE_CAN, RX_MESSAGE_BUFFER_INDEX, &amp;rxFrame);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Cleans the receive message buffer full status. </span></div>
<div class="line"><span class="comment">FLEXCAN_ClearMbStatusFlags(EXAMPLE_CAN, 1 &lt;&lt; RX_MESSAGE_BUFFER_INDEX);</span></div>
</div><!-- fragment --><h2><a class="anchor" id="FlexCANFifoReceiveOps"></a>
Receive FIFO Operation</h2>
<div class="fragment"><div class="line">uint32_t rxFifoFilter[] = {<a class="code" href="group__flexcan__driver.html#ga32b37f3128bcda272f6c4da5f67038ca">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_A</a>(0x321, 0, 0),</div>
<div class="line"> <a class="code" href="group__flexcan__driver.html#ga32b37f3128bcda272f6c4da5f67038ca">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_A</a>(0x321, 1, 0),</div>
<div class="line"> <a class="code" href="group__flexcan__driver.html#ga32b37f3128bcda272f6c4da5f67038ca">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_A</a>(0x123, 0, 0),</div>
<div class="line"> <a class="code" href="group__flexcan__driver.html#ga32b37f3128bcda272f6c4da5f67038ca">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_A</a>(0x123, 1, 0)};</div>
<div class="line"></div>
<div class="line"><a class="code" href="group__flexcan__driver.html#structflexcan__config__t">flexcan_config_t</a> flexcanConfig;</div>
<div class="line"><a class="code" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> rxFrame;</div>
<div class="line"></div>
<div class="line"><span class="comment">/* Initializes the FlexCAN module. </span></div>
<div class="line"><span class="comment">FLEXCAN_GetDefaultConfig(&amp;flexcanConfig);</span></div>
<div class="line"><span class="comment">FLEXCAN_Init(EXAMPLE_CAN, &amp;flexcanConfig);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Enables the FlexCAN module. </span></div>
<div class="line"><span class="comment">FLEXCAN_Enable(EXAMPLE_CAN, true);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Sets up the receive FIFO. </span></div>
<div class="line"><span class="comment">rxFifoConfig.idFilterTable = rxFifoFilter;</span></div>
<div class="line"><span class="comment">rxFifoConfig.idFilterType = KFLEXCAN_RxFifoFilterTypeA;</span></div>
<div class="line"><span class="comment">rxFifoConfig.idFilterNum = sizeof(rxFifoFilter) / sizeof(rxFifoFilter[0]);</span></div>
<div class="line"><span class="comment">rxFifoConfig.priority = KFLEXCAN_RxFifoPrioHigh;</span></div>
<div class="line"><span class="comment">FlEXCAN_SetRxFifoConfig(EXAMPLE_CAN, &amp;rxFifoConfig, true);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Waits until the receive FIFO becomes available. </span></div>
<div class="line"><span class="comment">while (!FLEXCAN_GetMbStatusFlags(EXAMPLE_CAN, KFLEXCAN_RxFifoFrameAvlFlag));</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Reads the message from the receive FIFO. </span></div>
<div class="line"><span class="comment">FlEXCAN_ReadRxFifo(EXAMPLE_CAN, &amp;rxFrame);</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">/* Cleans the receive FIFO available status. </span></div>
<div class="line"><span class="comment">FLEXCAN_ClearMbStatusFlags(EXAMPLE_CAN, KFLEXCAN_RxFifoFrameAvlFlag);</span></div>
</div><!-- fragment --> <table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
Files</h2></td></tr>
<tr class="memitem:fsl__flexcan_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fsl__flexcan_8h.html">fsl_flexcan.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:structflexcan__frame__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a></td></tr>
<tr class="memdesc:structflexcan__frame__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN message frame structure. <a href="group__flexcan__driver.html#structflexcan__frame__t">More...</a><br/></td></tr>
<tr class="separator:structflexcan__frame__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:structflexcan__config__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#structflexcan__config__t">flexcan_config_t</a></td></tr>
<tr class="memdesc:structflexcan__config__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN module configuration structure. <a href="group__flexcan__driver.html#structflexcan__config__t">More...</a><br/></td></tr>
<tr class="separator:structflexcan__config__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:structflexcan__timing__config__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#structflexcan__timing__config__t">flexcan_timing_config_t</a></td></tr>
<tr class="memdesc:structflexcan__timing__config__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN protocol timing characteristic configuration structure. <a href="group__flexcan__driver.html#structflexcan__timing__config__t">More...</a><br/></td></tr>
<tr class="separator:structflexcan__timing__config__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:structflexcan__rx__mb__config__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#structflexcan__rx__mb__config__t">flexcan_rx_mb_config_t</a></td></tr>
<tr class="memdesc:structflexcan__rx__mb__config__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Receive Message Buffer configuration structure. <a href="group__flexcan__driver.html#structflexcan__rx__mb__config__t">More...</a><br/></td></tr>
<tr class="separator:structflexcan__rx__mb__config__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:structflexcan__rx__fifo__config__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#structflexcan__rx__fifo__config__t">flexcan_rx_fifo_config_t</a></td></tr>
<tr class="memdesc:structflexcan__rx__fifo__config__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Rx FIFO configure structure. <a href="group__flexcan__driver.html#structflexcan__rx__fifo__config__t">More...</a><br/></td></tr>
<tr class="separator:structflexcan__rx__fifo__config__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:structflexcan__mb__transfer__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#structflexcan__mb__transfer__t">flexcan_mb_transfer_t</a></td></tr>
<tr class="memdesc:structflexcan__mb__transfer__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Message Buffer transfer. <a href="group__flexcan__driver.html#structflexcan__mb__transfer__t">More...</a><br/></td></tr>
<tr class="separator:structflexcan__mb__transfer__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:structflexcan__fifo__transfer__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#structflexcan__fifo__transfer__t">flexcan_fifo_transfer_t</a></td></tr>
<tr class="memdesc:structflexcan__fifo__transfer__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Rx FIFO transfer. <a href="group__flexcan__driver.html#structflexcan__fifo__transfer__t">More...</a><br/></td></tr>
<tr class="separator:structflexcan__fifo__transfer__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:struct__flexcan__handle"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#struct__flexcan__handle">flexcan_handle_t</a></td></tr>
<tr class="memdesc:struct__flexcan__handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN handle structure. <a href="group__flexcan__driver.html#struct__flexcan__handle">More...</a><br/></td></tr>
<tr class="separator:struct__flexcan__handle"><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:ga83f8199eb0d7d86106313a6b33a9633d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(id)&#160;&#160;&#160;(((uint32_t)(((uint32_t)(id)) &lt;&lt; CAN_ID_STD_SHIFT)) &amp; CAN_ID_STD_MASK)</td></tr>
<tr class="memdesc:ga83f8199eb0d7d86106313a6b33a9633d"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Frame ID helper macro. <a href="#ga83f8199eb0d7d86106313a6b33a9633d">More...</a><br/></td></tr>
<tr class="separator:ga83f8199eb0d7d86106313a6b33a9633d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2f7e9211d67ecdb6ecb43a6de6a24f21"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(id)</td></tr>
<tr class="memdesc:ga2f7e9211d67ecdb6ecb43a6de6a24f21"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Frame ID helper macro. <a href="#ga2f7e9211d67ecdb6ecb43a6de6a24f21">More...</a><br/></td></tr>
<tr class="separator:ga2f7e9211d67ecdb6ecb43a6de6a24f21"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga77eb7a4cc86cc613cc44e8b728c17d0c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga77eb7a4cc86cc613cc44e8b728c17d0c">FLEXCAN_RX_MB_STD_MASK</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:ga77eb7a4cc86cc613cc44e8b728c17d0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Rx Message Buffer Mask helper macro. <a href="#ga77eb7a4cc86cc613cc44e8b728c17d0c">More...</a><br/></td></tr>
<tr class="separator:ga77eb7a4cc86cc613cc44e8b728c17d0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga982654ec336d8f1b418fd6209a658155"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga982654ec336d8f1b418fd6209a658155">FLEXCAN_RX_MB_EXT_MASK</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:ga982654ec336d8f1b418fd6209a658155"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx Message Buffer Mask helper macro. <a href="#ga982654ec336d8f1b418fd6209a658155">More...</a><br/></td></tr>
<tr class="separator:ga982654ec336d8f1b418fd6209a658155"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2e2e73a689b6b965f1a38a34eb639ed2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga2e2e73a689b6b965f1a38a34eb639ed2">FLEXCAN_RX_FIFO_STD_MASK_TYPE_A</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:ga2e2e73a689b6b965f1a38a34eb639ed2"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Rx FIFO Mask helper macro. <a href="#ga2e2e73a689b6b965f1a38a34eb639ed2">More...</a><br/></td></tr>
<tr class="separator:ga2e2e73a689b6b965f1a38a34eb639ed2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2271558424d13cfad100ee414b51b540"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga2271558424d13cfad100ee414b51b540">FLEXCAN_RX_FIFO_STD_MASK_TYPE_B_HIGH</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:ga2271558424d13cfad100ee414b51b540"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Mask helper macro Type B upper part helper macro. <a href="#ga2271558424d13cfad100ee414b51b540">More...</a><br/></td></tr>
<tr class="separator:ga2271558424d13cfad100ee414b51b540"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa0690c6ff6fb84067da21b1ec8c8dbdf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gaa0690c6ff6fb84067da21b1ec8c8dbdf">FLEXCAN_RX_FIFO_STD_MASK_TYPE_B_LOW</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:gaa0690c6ff6fb84067da21b1ec8c8dbdf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Mask helper macro Type B lower part helper macro. <a href="#gaa0690c6ff6fb84067da21b1ec8c8dbdf">More...</a><br/></td></tr>
<tr class="separator:gaa0690c6ff6fb84067da21b1ec8c8dbdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga66af2c0f15a46fa923aed28d6a77d4c6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga66af2c0f15a46fa923aed28d6a77d4c6">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_HIGH</a>(id)&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(id) &amp; 0x7F8) &lt;&lt; 21)</td></tr>
<tr class="memdesc:ga66af2c0f15a46fa923aed28d6a77d4c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Mask helper macro Type C upper part helper macro. <a href="#ga66af2c0f15a46fa923aed28d6a77d4c6">More...</a><br/></td></tr>
<tr class="separator:ga66af2c0f15a46fa923aed28d6a77d4c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf8c8c82ebad5cd9c01630ea79dcc7d28"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gaf8c8c82ebad5cd9c01630ea79dcc7d28">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_MID_HIGH</a>(id)&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(id) &amp; 0x7F8) &lt;&lt; 13)</td></tr>
<tr class="memdesc:gaf8c8c82ebad5cd9c01630ea79dcc7d28"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Mask helper macro Type C mid-upper part helper macro. <a href="#gaf8c8c82ebad5cd9c01630ea79dcc7d28">More...</a><br/></td></tr>
<tr class="separator:gaf8c8c82ebad5cd9c01630ea79dcc7d28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf61d34c9feba2c1c3d86efffa0f66e96"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gaf61d34c9feba2c1c3d86efffa0f66e96">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_MID_LOW</a>(id)&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(id) &amp; 0x7F8) &lt;&lt; 5)</td></tr>
<tr class="memdesc:gaf61d34c9feba2c1c3d86efffa0f66e96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Mask helper macro Type C mid-lower part helper macro. <a href="#gaf61d34c9feba2c1c3d86efffa0f66e96">More...</a><br/></td></tr>
<tr class="separator:gaf61d34c9feba2c1c3d86efffa0f66e96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8512d5414568188a2f510171b50aadad"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga8512d5414568188a2f510171b50aadad">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_LOW</a>(id)&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(id) &amp; 0x7F8) &gt;&gt; 3)</td></tr>
<tr class="memdesc:ga8512d5414568188a2f510171b50aadad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Mask helper macro Type C lower part helper macro. <a href="#ga8512d5414568188a2f510171b50aadad">More...</a><br/></td></tr>
<tr class="separator:ga8512d5414568188a2f510171b50aadad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf0a57967e612e798ba403c19f991e30b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gaf0a57967e612e798ba403c19f991e30b">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_A</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:gaf0a57967e612e798ba403c19f991e30b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Mask helper macro Type A helper macro. <a href="#gaf0a57967e612e798ba403c19f991e30b">More...</a><br/></td></tr>
<tr class="separator:gaf0a57967e612e798ba403c19f991e30b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3671041e467cd335076d3793fcfa8bf5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga3671041e467cd335076d3793fcfa8bf5">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_B_HIGH</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:ga3671041e467cd335076d3793fcfa8bf5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Mask helper macro Type B upper part helper macro. <a href="#ga3671041e467cd335076d3793fcfa8bf5">More...</a><br/></td></tr>
<tr class="separator:ga3671041e467cd335076d3793fcfa8bf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae7f2eaad196d63ca7816fd9e4db55402"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gae7f2eaad196d63ca7816fd9e4db55402">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_B_LOW</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:gae7f2eaad196d63ca7816fd9e4db55402"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Mask helper macro Type B lower part helper macro. <a href="#gae7f2eaad196d63ca7816fd9e4db55402">More...</a><br/></td></tr>
<tr class="separator:gae7f2eaad196d63ca7816fd9e4db55402"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3838e6125cf40fcabfa38e94369af8b1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga3838e6125cf40fcabfa38e94369af8b1">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_HIGH</a>(id)&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(id) &amp; 0x1FE00000) &lt;&lt; 3)</td></tr>
<tr class="memdesc:ga3838e6125cf40fcabfa38e94369af8b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Mask helper macro Type C upper part helper macro. <a href="#ga3838e6125cf40fcabfa38e94369af8b1">More...</a><br/></td></tr>
<tr class="separator:ga3838e6125cf40fcabfa38e94369af8b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacda86f0f66954622d3877fa5763da2a6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gacda86f0f66954622d3877fa5763da2a6">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_MID_HIGH</a>(id)</td></tr>
<tr class="memdesc:gacda86f0f66954622d3877fa5763da2a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Mask helper macro Type C mid-upper part helper macro. <a href="#gacda86f0f66954622d3877fa5763da2a6">More...</a><br/></td></tr>
<tr class="separator:gacda86f0f66954622d3877fa5763da2a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac6a51332cdee380b4cbb1e0920faa2ee"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gac6a51332cdee380b4cbb1e0920faa2ee">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_MID_LOW</a>(id)</td></tr>
<tr class="memdesc:gac6a51332cdee380b4cbb1e0920faa2ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Mask helper macro Type C mid-lower part helper macro. <a href="#gac6a51332cdee380b4cbb1e0920faa2ee">More...</a><br/></td></tr>
<tr class="separator:gac6a51332cdee380b4cbb1e0920faa2ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacdf8eb19f0138f23a2cbe6055ebd55e5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gacdf8eb19f0138f23a2cbe6055ebd55e5">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_LOW</a>(id)&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(id) &amp; 0x1FE00000) &gt;&gt; 21)</td></tr>
<tr class="memdesc:gacdf8eb19f0138f23a2cbe6055ebd55e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Mask helper macro Type C lower part helper macro. <a href="#gacdf8eb19f0138f23a2cbe6055ebd55e5">More...</a><br/></td></tr>
<tr class="separator:gacdf8eb19f0138f23a2cbe6055ebd55e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga32b37f3128bcda272f6c4da5f67038ca"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga32b37f3128bcda272f6c4da5f67038ca">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_A</a>(id, rtr, ide)&#160;&#160;&#160;<a class="el" href="group__flexcan__driver.html#ga2e2e73a689b6b965f1a38a34eb639ed2">FLEXCAN_RX_FIFO_STD_MASK_TYPE_A</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:ga32b37f3128bcda272f6c4da5f67038ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Rx FIFO Filter helper macro. <a href="#ga32b37f3128bcda272f6c4da5f67038ca">More...</a><br/></td></tr>
<tr class="separator:ga32b37f3128bcda272f6c4da5f67038ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4fe25fb6cc4716845e2c03fed2e11458"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga4fe25fb6cc4716845e2c03fed2e11458">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_B_HIGH</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:ga4fe25fb6cc4716845e2c03fed2e11458"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Filter helper macro Type B upper part helper macro. <a href="#ga4fe25fb6cc4716845e2c03fed2e11458">More...</a><br/></td></tr>
<tr class="separator:ga4fe25fb6cc4716845e2c03fed2e11458"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga373d3c6a21cfa5a3a22202df9ec0f28e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga373d3c6a21cfa5a3a22202df9ec0f28e">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_B_LOW</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:ga373d3c6a21cfa5a3a22202df9ec0f28e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Filter helper macro Type B lower part helper macro. <a href="#ga373d3c6a21cfa5a3a22202df9ec0f28e">More...</a><br/></td></tr>
<tr class="separator:ga373d3c6a21cfa5a3a22202df9ec0f28e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9d0870ba103237a27082e578f0fcefd9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga9d0870ba103237a27082e578f0fcefd9">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_C_HIGH</a>(id)</td></tr>
<tr class="memdesc:ga9d0870ba103237a27082e578f0fcefd9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Filter helper macro Type C upper part helper macro. <a href="#ga9d0870ba103237a27082e578f0fcefd9">More...</a><br/></td></tr>
<tr class="separator:ga9d0870ba103237a27082e578f0fcefd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad09a01e6bc381f170c48d07f4b74e74c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gad09a01e6bc381f170c48d07f4b74e74c">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_C_MID_HIGH</a>(id)</td></tr>
<tr class="memdesc:gad09a01e6bc381f170c48d07f4b74e74c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Filter helper macro Type C mid-upper part helper macro. <a href="#gad09a01e6bc381f170c48d07f4b74e74c">More...</a><br/></td></tr>
<tr class="separator:gad09a01e6bc381f170c48d07f4b74e74c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7eb945b49c25254d8d387cf425b50972"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga7eb945b49c25254d8d387cf425b50972">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_C_MID_LOW</a>(id)</td></tr>
<tr class="memdesc:ga7eb945b49c25254d8d387cf425b50972"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Filter helper macro Type C mid-lower part helper macro. <a href="#ga7eb945b49c25254d8d387cf425b50972">More...</a><br/></td></tr>
<tr class="separator:ga7eb945b49c25254d8d387cf425b50972"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga109c653c3c5640bc1a4352a6ef6992dd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga109c653c3c5640bc1a4352a6ef6992dd">FLEXCAN_RX_FIFO_STD_FILTER_TYPE_C_LOW</a>(id)&#160;&#160;&#160;<a class="el" href="group__flexcan__driver.html#ga8512d5414568188a2f510171b50aadad">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_LOW</a>(id)</td></tr>
<tr class="memdesc:ga109c653c3c5640bc1a4352a6ef6992dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Standard Rx FIFO Filter helper macro Type C lower part helper macro. <a href="#ga109c653c3c5640bc1a4352a6ef6992dd">More...</a><br/></td></tr>
<tr class="separator:ga109c653c3c5640bc1a4352a6ef6992dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad7c1dc5e9a14b933c963234aa90cd6e6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gad7c1dc5e9a14b933c963234aa90cd6e6">FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_A</a>(id, rtr, ide)&#160;&#160;&#160;<a class="el" href="group__flexcan__driver.html#gaf0a57967e612e798ba403c19f991e30b">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_A</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:gad7c1dc5e9a14b933c963234aa90cd6e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Filter helper macro Type A helper macro. <a href="#gad7c1dc5e9a14b933c963234aa90cd6e6">More...</a><br/></td></tr>
<tr class="separator:gad7c1dc5e9a14b933c963234aa90cd6e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga645d65a7e8a1f432b1f657755869cb2c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga645d65a7e8a1f432b1f657755869cb2c">FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_B_HIGH</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:ga645d65a7e8a1f432b1f657755869cb2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Filter helper macro Type B upper part helper macro. <a href="#ga645d65a7e8a1f432b1f657755869cb2c">More...</a><br/></td></tr>
<tr class="separator:ga645d65a7e8a1f432b1f657755869cb2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6d14c774d9d6b0e06fdbfabead04d476"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga6d14c774d9d6b0e06fdbfabead04d476">FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_B_LOW</a>(id, rtr, ide)</td></tr>
<tr class="memdesc:ga6d14c774d9d6b0e06fdbfabead04d476"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Filter helper macro Type B lower part helper macro. <a href="#ga6d14c774d9d6b0e06fdbfabead04d476">More...</a><br/></td></tr>
<tr class="separator:ga6d14c774d9d6b0e06fdbfabead04d476"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6feee943b4033a99bff09b614628493e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga6feee943b4033a99bff09b614628493e">FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_C_HIGH</a>(id)&#160;&#160;&#160;<a class="el" href="group__flexcan__driver.html#ga3838e6125cf40fcabfa38e94369af8b1">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_HIGH</a>(id)</td></tr>
<tr class="memdesc:ga6feee943b4033a99bff09b614628493e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Filter helper macro Type C upper part helper macro. <a href="#ga6feee943b4033a99bff09b614628493e">More...</a><br/></td></tr>
<tr class="separator:ga6feee943b4033a99bff09b614628493e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5fe38baee3d3b680b692b5eb2a85ed3c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga5fe38baee3d3b680b692b5eb2a85ed3c">FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_C_MID_HIGH</a>(id)</td></tr>
<tr class="memdesc:ga5fe38baee3d3b680b692b5eb2a85ed3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Filter helper macro Type C mid-upper part helper macro. <a href="#ga5fe38baee3d3b680b692b5eb2a85ed3c">More...</a><br/></td></tr>
<tr class="separator:ga5fe38baee3d3b680b692b5eb2a85ed3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0809906254139ef5934eefb078268b65"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga0809906254139ef5934eefb078268b65">FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_C_MID_LOW</a>(id)</td></tr>
<tr class="memdesc:ga0809906254139ef5934eefb078268b65"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Filter helper macro Type C mid-lower part helper macro. <a href="#ga0809906254139ef5934eefb078268b65">More...</a><br/></td></tr>
<tr class="separator:ga0809906254139ef5934eefb078268b65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga27da42c8a78913659c440075d7f8c367"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga27da42c8a78913659c440075d7f8c367">FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_C_LOW</a>(id)&#160;&#160;&#160;<a class="el" href="group__flexcan__driver.html#gacdf8eb19f0138f23a2cbe6055ebd55e5">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_LOW</a>(id)</td></tr>
<tr class="memdesc:ga27da42c8a78913659c440075d7f8c367"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend Rx FIFO Filter helper macro Type C lower part helper macro. <a href="#ga27da42c8a78913659c440075d7f8c367">More...</a><br/></td></tr>
<tr class="separator:ga27da42c8a78913659c440075d7f8c367"><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:gaf32f29aa44ad4e8c5df08fdbb6847e20"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gaf32f29aa44ad4e8c5df08fdbb6847e20">flexcan_transfer_callback_t</a> )(CAN_Type *base, flexcan_handle_t *handle, status_t status, uint32_t result, void *userData)</td></tr>
<tr class="memdesc:gaf32f29aa44ad4e8c5df08fdbb6847e20"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN transfer callback function. <a href="#gaf32f29aa44ad4e8c5df08fdbb6847e20">More...</a><br/></td></tr>
<tr class="separator:gaf32f29aa44ad4e8c5df08fdbb6847e20"><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:ga73b6375147061a131ec4d3959f2b950b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga73b6375147061a131ec4d3959f2b950b">_flexcan_status</a> { <br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba0080617424605a0a0a95e3333f24b3e4">kStatus_FLEXCAN_TxBusy</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 0),
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba91fc36f54041f079bd0cbec9dedac200">kStatus_FLEXCAN_TxIdle</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 1),
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba1faddda6dd8b232ad54604365e2d605d">kStatus_FLEXCAN_TxSwitchToRx</a>,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba5b713aab29b9accd29aa58d8dc4447e7">kStatus_FLEXCAN_RxBusy</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 3),
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950bae2b4dcba97c6f468046168046135af67">kStatus_FLEXCAN_RxIdle</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 4),
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba8e2d4031323b8747c5d74c6275e3b9f1">kStatus_FLEXCAN_RxOverflow</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 5),
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba74adab69bc91962510c1cc1faa96220d">kStatus_FLEXCAN_RxFifoBusy</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 6),
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba6b1ace2daae9aa209f6c57e8e1dae2f5">kStatus_FLEXCAN_RxFifoIdle</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 7),
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba257602d134fb16ca03908ba7ef9c5e0f">kStatus_FLEXCAN_RxFifoOverflow</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 8),
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba49de45608b1bef73b58f59b5aac6e459">kStatus_FLEXCAN_RxFifoWarning</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 0),
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba08579ac6bdc65a85046b33cd0d5d636a">kStatus_FLEXCAN_ErrorStatus</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 10),
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga73b6375147061a131ec4d3959f2b950ba853b75a2a57e9d380ee85ab69da946cc">kStatus_FLEXCAN_UnHandled</a> = MAKE_STATUS(kStatusGroup_FLEXCAN, 11)
<br/>
}</td></tr>
<tr class="memdesc:ga73b6375147061a131ec4d3959f2b950b"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN transfer status. <a href="group__flexcan__driver.html#ga73b6375147061a131ec4d3959f2b950b">More...</a><br/></td></tr>
<tr class="separator:ga73b6375147061a131ec4d3959f2b950b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga89e76f77a571693c1adeec47796c97df"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga89e76f77a571693c1adeec47796c97df">flexcan_frame_format_t</a> { <br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga89e76f77a571693c1adeec47796c97dfa82e576bc13cb647a948eed52564d109b">kFLEXCAN_FrameFormatStandard</a> = 0x0U,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga89e76f77a571693c1adeec47796c97dfa2acf770880d063c0522a5cc762ab2638">kFLEXCAN_FrameFormatExtend</a> = 0x1U
<br/>
}</td></tr>
<tr class="memdesc:ga89e76f77a571693c1adeec47796c97df"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN frame format. <a href="group__flexcan__driver.html#ga89e76f77a571693c1adeec47796c97df">More...</a><br/></td></tr>
<tr class="separator:ga89e76f77a571693c1adeec47796c97df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacec96742e2b0b51a5bf3246bfc57a455"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gacec96742e2b0b51a5bf3246bfc57a455">flexcan_frame_type_t</a> { <br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggacec96742e2b0b51a5bf3246bfc57a455a650a94706925910caaaef592a99f77b3">kFLEXCAN_FrameTypeData</a> = 0x0U,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggacec96742e2b0b51a5bf3246bfc57a455ab8f92265dc2dadff64259080c78fa35e">kFLEXCAN_FrameTypeRemote</a> = 0x1U
<br/>
}</td></tr>
<tr class="memdesc:gacec96742e2b0b51a5bf3246bfc57a455"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN frame type. <a href="group__flexcan__driver.html#gacec96742e2b0b51a5bf3246bfc57a455">More...</a><br/></td></tr>
<tr class="separator:gacec96742e2b0b51a5bf3246bfc57a455"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa0b3ac1e2e7416950b82014d2a2b40ee"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gaa0b3ac1e2e7416950b82014d2a2b40ee">flexcan_clock_source_t</a> { <br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggaa0b3ac1e2e7416950b82014d2a2b40eead9cb66012e8d50e9ee3e154a36c1cff1">kFLEXCAN_ClkSrcOsc</a> = 0x0U,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggaa0b3ac1e2e7416950b82014d2a2b40eea962bcf8760c6a23e054980b1d0c5a922">kFLEXCAN_ClkSrcPeri</a> = 0x1U
<br/>
}</td></tr>
<tr class="memdesc:gaa0b3ac1e2e7416950b82014d2a2b40ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN clock source. <a href="group__flexcan__driver.html#gaa0b3ac1e2e7416950b82014d2a2b40ee">More...</a><br/></td></tr>
<tr class="separator:gaa0b3ac1e2e7416950b82014d2a2b40ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1b8c38cce54aff2f24b6cd45da80f353"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga1b8c38cce54aff2f24b6cd45da80f353">flexcan_rx_fifo_filter_type_t</a> { <br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga1b8c38cce54aff2f24b6cd45da80f353a1791608b19ef6a27483f55fee614f764">kFLEXCAN_RxFifoFilterTypeA</a> = 0x0U,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga1b8c38cce54aff2f24b6cd45da80f353a0989630ff89813979a12fd56e772073c">kFLEXCAN_RxFifoFilterTypeB</a>,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga1b8c38cce54aff2f24b6cd45da80f353ae4f020795b2ffb38eafb9a3648270a19">kFLEXCAN_RxFifoFilterTypeC</a>,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga1b8c38cce54aff2f24b6cd45da80f353a6b221467793b4268bf84cd475b92780d">kFLEXCAN_RxFifoFilterTypeD</a> = 0x3U
<br/>
}</td></tr>
<tr class="memdesc:ga1b8c38cce54aff2f24b6cd45da80f353"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Rx Fifo Filter type. <a href="group__flexcan__driver.html#ga1b8c38cce54aff2f24b6cd45da80f353">More...</a><br/></td></tr>
<tr class="separator:ga1b8c38cce54aff2f24b6cd45da80f353"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5d139af23e8c1094b39d1cf26d85271b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga5d139af23e8c1094b39d1cf26d85271b">flexcan_rx_fifo_priority_t</a> { <br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga5d139af23e8c1094b39d1cf26d85271babc83bc44026aa8c9eef2a4b259e05ecd">kFLEXCAN_RxFifoPrioLow</a> = 0x0U,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga5d139af23e8c1094b39d1cf26d85271bac2b9710c6248536f992bdd832d05f8cf">kFLEXCAN_RxFifoPrioHigh</a> = 0x1U
<br/>
}</td></tr>
<tr class="memdesc:ga5d139af23e8c1094b39d1cf26d85271b"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Rx FIFO priority. <a href="group__flexcan__driver.html#ga5d139af23e8c1094b39d1cf26d85271b">More...</a><br/></td></tr>
<tr class="separator:ga5d139af23e8c1094b39d1cf26d85271b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga339a68a513c218f67756e2a04985428e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga339a68a513c218f67756e2a04985428e">_flexcan_interrupt_enable</a> { <br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga339a68a513c218f67756e2a04985428eac07643ed5772e0666315c8cf38d1912a">kFLEXCAN_BusOffInterruptEnable</a> = CAN_CTRL1_BOFFMSK_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga339a68a513c218f67756e2a04985428ea1943b187ec63f3a34660d5c48ada5cf6">kFLEXCAN_ErrorInterruptEnable</a> = CAN_CTRL1_ERRMSK_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga339a68a513c218f67756e2a04985428ea776a58431fab2cca17e5b859bbd25d8e">kFLEXCAN_RxWarningInterruptEnable</a> = CAN_CTRL1_RWRNMSK_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga339a68a513c218f67756e2a04985428eaa91344d65339ed9f0b2801f772c8cf90">kFLEXCAN_TxWarningInterruptEnable</a> = CAN_CTRL1_TWRNMSK_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#gga339a68a513c218f67756e2a04985428eaab59629e2da9dc184add56eebe85bf5f">kFLEXCAN_WakeUpInterruptEnable</a> = CAN_MCR_WAKMSK_MASK
<br/>
}</td></tr>
<tr class="memdesc:ga339a68a513c218f67756e2a04985428e"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN interrupt configuration structure, default settings all disabled. <a href="group__flexcan__driver.html#ga339a68a513c218f67756e2a04985428e">More...</a><br/></td></tr>
<tr class="separator:ga339a68a513c218f67756e2a04985428e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafcf014e17652c04821de5596f5c4f247"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gafcf014e17652c04821de5596f5c4f247">_flexcan_flags</a> { <br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247a5200e04525a33c3d17abb0902423fd65">kFLEXCAN_SynchFlag</a> = CAN_ESR1_SYNCH_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247aeb17959193db08c88ebe1acec32bf5a9">kFLEXCAN_TxWarningIntFlag</a> = CAN_ESR1_TWRNINT_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247a1f2987e32d2889a23140b20e72405973">kFLEXCAN_RxWarningIntFlag</a> = CAN_ESR1_RWRNINT_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247ad2f12389f5b32bbb7d84c9718d4e2e8b">kFLEXCAN_TxErrorWarningFlag</a> = CAN_ESR1_TXWRN_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247acc85a7f4c13805e8a0ec9e5cf0f6b7e2">kFLEXCAN_RxErrorWarningFlag</a> = CAN_ESR1_RXWRN_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247a763c9217bed2fa7c5c1f12e2459f61f0">kFLEXCAN_IdleFlag</a> = CAN_ESR1_IDLE_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247a3ca2089ad4230485f0351c718a962d2e">kFLEXCAN_FaultConfinementFlag</a> = CAN_ESR1_FLTCONF_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247a03ff01b35c352d48288a60ba686bb94b">kFLEXCAN_TransmittingFlag</a> = CAN_ESR1_TX_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247a26c976e3327f4c08e60eb4a980ecb44e">kFLEXCAN_ReceivingFlag</a> = CAN_ESR1_RX_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247ab3db871ba55aea71f9fb6a9eda3d4480">kFLEXCAN_BusOffIntFlag</a> = CAN_ESR1_BOFFINT_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247afa70d0ee5c86b648e7da37d16a1e9cfe">kFLEXCAN_ErrorIntFlag</a> = CAN_ESR1_ERRINT_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247abb5e5668b2be3d78e30c7f666b402816">kFLEXCAN_WakeUpIntFlag</a> = CAN_ESR1_WAKINT_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggafcf014e17652c04821de5596f5c4f247a9dec4cce221940055dc269cb06e9e0f1">kFLEXCAN_ErrorFlag</a>
<br/>
}</td></tr>
<tr class="memdesc:gafcf014e17652c04821de5596f5c4f247"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN status flags. <a href="group__flexcan__driver.html#gafcf014e17652c04821de5596f5c4f247">More...</a><br/></td></tr>
<tr class="separator:gafcf014e17652c04821de5596f5c4f247"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae49fa3b7177a77bb6441a251d7d1c04b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gae49fa3b7177a77bb6441a251d7d1c04b">_flexcan_error_flags</a> { <br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggae49fa3b7177a77bb6441a251d7d1c04baf29ecd380ebf9e3c2ba942d1b59afd20">kFLEXCAN_StuffingError</a> = CAN_ESR1_STFERR_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggae49fa3b7177a77bb6441a251d7d1c04baa2a20d23736022638dff3fa399a28228">kFLEXCAN_FormError</a> = CAN_ESR1_FRMERR_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggae49fa3b7177a77bb6441a251d7d1c04bab668e1723ddbd49091b8fd40ff58d0de">kFLEXCAN_CrcError</a> = CAN_ESR1_CRCERR_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggae49fa3b7177a77bb6441a251d7d1c04ba2e89a0bda4c49a0b3b186c4f53b66a21">kFLEXCAN_AckError</a> = CAN_ESR1_ACKERR_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggae49fa3b7177a77bb6441a251d7d1c04bafbb466f580b3a3b5fac17856f018ada8">kFLEXCAN_Bit0Error</a> = CAN_ESR1_BIT0ERR_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggae49fa3b7177a77bb6441a251d7d1c04bac507066e62503970fbc6efd5d573f055">kFLEXCAN_Bit1Error</a> = CAN_ESR1_BIT1ERR_MASK
<br/>
}</td></tr>
<tr class="memdesc:gae49fa3b7177a77bb6441a251d7d1c04b"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN error status flags. <a href="group__flexcan__driver.html#gae49fa3b7177a77bb6441a251d7d1c04b">More...</a><br/></td></tr>
<tr class="separator:gae49fa3b7177a77bb6441a251d7d1c04b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacbdc64ada450fa6e8428aca3bcc7d8a9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gacbdc64ada450fa6e8428aca3bcc7d8a9">_flexcan_rx_fifo_flags</a> { <br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggacbdc64ada450fa6e8428aca3bcc7d8a9aaea98e3313f0b74f0485fe39425fdb79">kFLEXCAN_RxFifoOverflowFlag</a> = CAN_IFLAG1_BUF7I_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggacbdc64ada450fa6e8428aca3bcc7d8a9aa1faa3742f1c027714f92db80310e33f">kFLEXCAN_RxFifoWarningFlag</a> = CAN_IFLAG1_BUF6I_MASK,
<br/>
&#160;&#160;<a class="el" href="group__flexcan__driver.html#ggacbdc64ada450fa6e8428aca3bcc7d8a9a0d78a5c058c0908b5a0f43997046965f">kFLEXCAN_RxFifoFrameAvlFlag</a> = CAN_IFLAG1_BUF5I_MASK
<br/>
}</td></tr>
<tr class="memdesc:gacbdc64ada450fa6e8428aca3bcc7d8a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN Rx FIFO status flags. <a href="group__flexcan__driver.html#gacbdc64ada450fa6e8428aca3bcc7d8a9">More...</a><br/></td></tr>
<tr class="separator:gacbdc64ada450fa6e8428aca3bcc7d8a9"><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:gab0ab26fe950de79b4d9338f56ef316d5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gab0ab26fe950de79b4d9338f56ef316d5">FLEXCAN_DRIVER_VERSION</a>&#160;&#160;&#160;(<a class="el" href="group__flash__driver.html#ga812138aa3315b0c6953c1a26130bcc37">MAKE_VERSION</a>(2, 1, 0))</td></tr>
<tr class="memdesc:gab0ab26fe950de79b4d9338f56ef316d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN driver version 2.1.0. <a href="#gab0ab26fe950de79b4d9338f56ef316d5">More...</a><br/></td></tr>
<tr class="separator:gab0ab26fe950de79b4d9338f56ef316d5"><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:ga8d7ebf086fb294130fa30a0f75a5f340"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga8d7ebf086fb294130fa30a0f75a5f340">FLEXCAN_Init</a> (CAN_Type *base, const <a class="el" href="group__flexcan__driver.html#structflexcan__config__t">flexcan_config_t</a> *config, uint32_t sourceClock_Hz)</td></tr>
<tr class="memdesc:ga8d7ebf086fb294130fa30a0f75a5f340"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a FlexCAN instance. <a href="#ga8d7ebf086fb294130fa30a0f75a5f340">More...</a><br/></td></tr>
<tr class="separator:ga8d7ebf086fb294130fa30a0f75a5f340"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0629aa8318a3e515dfb168004e0ce656"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga0629aa8318a3e515dfb168004e0ce656">FLEXCAN_Deinit</a> (CAN_Type *base)</td></tr>
<tr class="memdesc:ga0629aa8318a3e515dfb168004e0ce656"><td class="mdescLeft">&#160;</td><td class="mdescRight">De-initializes a FlexCAN instance. <a href="#ga0629aa8318a3e515dfb168004e0ce656">More...</a><br/></td></tr>
<tr class="separator:ga0629aa8318a3e515dfb168004e0ce656"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4eafdb971a92f517c69a80c15a216342"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga4eafdb971a92f517c69a80c15a216342">FLEXCAN_GetDefaultConfig</a> (<a class="el" href="group__flexcan__driver.html#structflexcan__config__t">flexcan_config_t</a> *config)</td></tr>
<tr class="memdesc:ga4eafdb971a92f517c69a80c15a216342"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the default configuration structure. <a href="#ga4eafdb971a92f517c69a80c15a216342">More...</a><br/></td></tr>
<tr class="separator:ga4eafdb971a92f517c69a80c15a216342"><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>
Configuration.</h2></td></tr>
<tr class="memitem:ga481abb41cf9d87c7b4a901dd61e34f82"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga481abb41cf9d87c7b4a901dd61e34f82">FLEXCAN_SetTimingConfig</a> (CAN_Type *base, const <a class="el" href="group__flexcan__driver.html#structflexcan__timing__config__t">flexcan_timing_config_t</a> *config)</td></tr>
<tr class="memdesc:ga481abb41cf9d87c7b4a901dd61e34f82"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the FlexCAN protocol timing characteristic. <a href="#ga481abb41cf9d87c7b4a901dd61e34f82">More...</a><br/></td></tr>
<tr class="separator:ga481abb41cf9d87c7b4a901dd61e34f82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga188e40d55493a20e7e11215d23369f94"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga188e40d55493a20e7e11215d23369f94">FlEXCAN_SetRxMbGlobalMask</a> (CAN_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:ga188e40d55493a20e7e11215d23369f94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the FlexCAN receive message buffer global mask. <a href="#ga188e40d55493a20e7e11215d23369f94">More...</a><br/></td></tr>
<tr class="separator:ga188e40d55493a20e7e11215d23369f94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6916d2efb57c72bc39450728d63eda2e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga6916d2efb57c72bc39450728d63eda2e">FlEXCAN_SetRxFifoGlobalMask</a> (CAN_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:ga6916d2efb57c72bc39450728d63eda2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the FlexCAN receive FIFO global mask. <a href="#ga6916d2efb57c72bc39450728d63eda2e">More...</a><br/></td></tr>
<tr class="separator:ga6916d2efb57c72bc39450728d63eda2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4e097e264335f27dc55f20c4eb836a94"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga4e097e264335f27dc55f20c4eb836a94">FlEXCAN_SetRxIndividualMask</a> (CAN_Type *base, uint8_t maskIdx, uint32_t mask)</td></tr>
<tr class="memdesc:ga4e097e264335f27dc55f20c4eb836a94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the FlexCAN receive individual mask. <a href="#ga4e097e264335f27dc55f20c4eb836a94">More...</a><br/></td></tr>
<tr class="separator:ga4e097e264335f27dc55f20c4eb836a94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadbf35cc05ed0d9a73eda5ac4fbb30ff0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gadbf35cc05ed0d9a73eda5ac4fbb30ff0">FLEXCAN_SetTxMbConfig</a> (CAN_Type *base, uint8_t mbIdx, bool enable)</td></tr>
<tr class="memdesc:gadbf35cc05ed0d9a73eda5ac4fbb30ff0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures a FlexCAN transmit message buffer. <a href="#gadbf35cc05ed0d9a73eda5ac4fbb30ff0">More...</a><br/></td></tr>
<tr class="separator:gadbf35cc05ed0d9a73eda5ac4fbb30ff0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf335daf0156fab50571e55d2898bccb2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gaf335daf0156fab50571e55d2898bccb2">FLEXCAN_SetRxMbConfig</a> (CAN_Type *base, uint8_t mbIdx, const <a class="el" href="group__flexcan__driver.html#structflexcan__rx__mb__config__t">flexcan_rx_mb_config_t</a> *config, bool enable)</td></tr>
<tr class="memdesc:gaf335daf0156fab50571e55d2898bccb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures a FlexCAN Receive Message Buffer. <a href="#gaf335daf0156fab50571e55d2898bccb2">More...</a><br/></td></tr>
<tr class="separator:gaf335daf0156fab50571e55d2898bccb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga40140a86bc8481442286a61aa668d508"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga40140a86bc8481442286a61aa668d508">FlEXCAN_SetRxFifoConfig</a> (CAN_Type *base, const <a class="el" href="group__flexcan__driver.html#structflexcan__rx__fifo__config__t">flexcan_rx_fifo_config_t</a> *config, bool enable)</td></tr>
<tr class="memdesc:ga40140a86bc8481442286a61aa668d508"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures the FlexCAN Rx FIFO. <a href="#ga40140a86bc8481442286a61aa668d508">More...</a><br/></td></tr>
<tr class="separator:ga40140a86bc8481442286a61aa668d508"><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:ga46217b1ae979c927ae59b98fbbb181e3"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga46217b1ae979c927ae59b98fbbb181e3">FLEXCAN_GetStatusFlags</a> (CAN_Type *base)</td></tr>
<tr class="memdesc:ga46217b1ae979c927ae59b98fbbb181e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the FlexCAN module interrupt flags. <a href="#ga46217b1ae979c927ae59b98fbbb181e3">More...</a><br/></td></tr>
<tr class="separator:ga46217b1ae979c927ae59b98fbbb181e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gace1fd2bc62b4f7c71d1fce292adf3b3a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gace1fd2bc62b4f7c71d1fce292adf3b3a">FLEXCAN_ClearStatusFlags</a> (CAN_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:gace1fd2bc62b4f7c71d1fce292adf3b3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears status flags with the provided mask. <a href="#gace1fd2bc62b4f7c71d1fce292adf3b3a">More...</a><br/></td></tr>
<tr class="separator:gace1fd2bc62b4f7c71d1fce292adf3b3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6b042a7d31e057b96e16954d7342c9b4"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga6b042a7d31e057b96e16954d7342c9b4">FlEXCAN_GetBusErrCount</a> (CAN_Type *base, uint8_t *txErrBuf, uint8_t *rxErrBuf)</td></tr>
<tr class="memdesc:ga6b042a7d31e057b96e16954d7342c9b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the FlexCAN Bus Error Counter value. <a href="#ga6b042a7d31e057b96e16954d7342c9b4">More...</a><br/></td></tr>
<tr class="separator:ga6b042a7d31e057b96e16954d7342c9b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf7de339e9d94a4c59f05c04655a23a6e"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gaf7de339e9d94a4c59f05c04655a23a6e">FLEXCAN_GetMbStatusFlags</a> (CAN_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:gaf7de339e9d94a4c59f05c04655a23a6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the FlexCAN Message Buffer interrupt flags. <a href="#gaf7de339e9d94a4c59f05c04655a23a6e">More...</a><br/></td></tr>
<tr class="separator:gaf7de339e9d94a4c59f05c04655a23a6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7199f7d1bf8198e03522d1d9706d50f2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga7199f7d1bf8198e03522d1d9706d50f2">FLEXCAN_ClearMbStatusFlags</a> (CAN_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:ga7199f7d1bf8198e03522d1d9706d50f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears the FlexCAN Message Buffer interrupt flags. <a href="#ga7199f7d1bf8198e03522d1d9706d50f2">More...</a><br/></td></tr>
<tr class="separator:ga7199f7d1bf8198e03522d1d9706d50f2"><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:ga406e9c07a20ed89504c5716f02efb957"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga406e9c07a20ed89504c5716f02efb957">FLEXCAN_EnableInterrupts</a> (CAN_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:ga406e9c07a20ed89504c5716f02efb957"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables FlexCAN interrupts according to provided mask. <a href="#ga406e9c07a20ed89504c5716f02efb957">More...</a><br/></td></tr>
<tr class="separator:ga406e9c07a20ed89504c5716f02efb957"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad6e220545b129d120fac805e8f9d82ab"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gad6e220545b129d120fac805e8f9d82ab">FLEXCAN_DisableInterrupts</a> (CAN_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:gad6e220545b129d120fac805e8f9d82ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables FlexCAN interrupts according to provided mask. <a href="#gad6e220545b129d120fac805e8f9d82ab">More...</a><br/></td></tr>
<tr class="separator:gad6e220545b129d120fac805e8f9d82ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadbb25b3a7667fa94162f5c98a9dd8fed"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gadbb25b3a7667fa94162f5c98a9dd8fed">FLEXCAN_EnableMbInterrupts</a> (CAN_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:gadbb25b3a7667fa94162f5c98a9dd8fed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables FlexCAN Message Buffer interrupts. <a href="#gadbb25b3a7667fa94162f5c98a9dd8fed">More...</a><br/></td></tr>
<tr class="separator:gadbb25b3a7667fa94162f5c98a9dd8fed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac99226a65d8458ab9fb13a7ebfb75b49"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gac99226a65d8458ab9fb13a7ebfb75b49">FLEXCAN_DisableMbInterrupts</a> (CAN_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:gac99226a65d8458ab9fb13a7ebfb75b49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables FlexCAN Message Buffer interrupts. <a href="#gac99226a65d8458ab9fb13a7ebfb75b49">More...</a><br/></td></tr>
<tr class="separator:gac99226a65d8458ab9fb13a7ebfb75b49"><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:ga20f79302d5fad90306a26b667f58fe4d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga20f79302d5fad90306a26b667f58fe4d">FLEXCAN_Enable</a> (CAN_Type *base, bool enable)</td></tr>
<tr class="memdesc:ga20f79302d5fad90306a26b667f58fe4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables or disables the FlexCAN module operation. <a href="#ga20f79302d5fad90306a26b667f58fe4d">More...</a><br/></td></tr>
<tr class="separator:ga20f79302d5fad90306a26b667f58fe4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9ee9d599069a88a50cb7c7a894c87c69"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga9ee9d599069a88a50cb7c7a894c87c69">FLEXCAN_WriteTxMb</a> (CAN_Type *base, uint8_t mbIdx, const <a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *txFrame)</td></tr>
<tr class="memdesc:ga9ee9d599069a88a50cb7c7a894c87c69"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a FlexCAN Message to Transmit Message Buffer. <a href="#ga9ee9d599069a88a50cb7c7a894c87c69">More...</a><br/></td></tr>
<tr class="separator:ga9ee9d599069a88a50cb7c7a894c87c69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga93600de1691b5e6d8cc01e06efee7b68"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga93600de1691b5e6d8cc01e06efee7b68">FLEXCAN_ReadRxMb</a> (CAN_Type *base, uint8_t mbIdx, <a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *rxFrame)</td></tr>
<tr class="memdesc:ga93600de1691b5e6d8cc01e06efee7b68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a FlexCAN Message from Receive Message Buffer. <a href="#ga93600de1691b5e6d8cc01e06efee7b68">More...</a><br/></td></tr>
<tr class="separator:ga93600de1691b5e6d8cc01e06efee7b68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f74840527f5e882c72746315bc06576"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga0f74840527f5e882c72746315bc06576">FlEXCAN_ReadRxFifo</a> (CAN_Type *base, <a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *rxFrame)</td></tr>
<tr class="memdesc:ga0f74840527f5e882c72746315bc06576"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a FlexCAN Message from Rx FIFO. <a href="#ga0f74840527f5e882c72746315bc06576">More...</a><br/></td></tr>
<tr class="separator:ga0f74840527f5e882c72746315bc06576"><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:gac360f0cee2cf46a682ae1fc2d63958d5"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gac360f0cee2cf46a682ae1fc2d63958d5">FlEXCAN_TransferSendBlocking</a> (CAN_Type *base, uint8_t mbIdx, <a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *txFrame)</td></tr>
<tr class="memdesc:gac360f0cee2cf46a682ae1fc2d63958d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs a polling send transaction on the CAN bus. <a href="#gac360f0cee2cf46a682ae1fc2d63958d5">More...</a><br/></td></tr>
<tr class="separator:gac360f0cee2cf46a682ae1fc2d63958d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafaa8ec3bde747737139a4cfc64c64c61"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gafaa8ec3bde747737139a4cfc64c64c61">FlEXCAN_TransferReceiveBlocking</a> (CAN_Type *base, uint8_t mbIdx, <a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *rxFrame)</td></tr>
<tr class="memdesc:gafaa8ec3bde747737139a4cfc64c64c61"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs a polling receive transaction on the CAN bus. <a href="#gafaa8ec3bde747737139a4cfc64c64c61">More...</a><br/></td></tr>
<tr class="separator:gafaa8ec3bde747737139a4cfc64c64c61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga59891932ccc6001fa5a67b0b5a592367"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga59891932ccc6001fa5a67b0b5a592367">FlEXCAN_TransferReceiveFifoBlocking</a> (CAN_Type *base, <a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *rxFrame)</td></tr>
<tr class="memdesc:ga59891932ccc6001fa5a67b0b5a592367"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs a polling receive transaction from Rx FIFO on the CAN bus. <a href="#ga59891932ccc6001fa5a67b0b5a592367">More...</a><br/></td></tr>
<tr class="separator:ga59891932ccc6001fa5a67b0b5a592367"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaca661014e03aa709a753a3c499ecba19"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gaca661014e03aa709a753a3c499ecba19">FLEXCAN_TransferCreateHandle</a> (CAN_Type *base, flexcan_handle_t *handle, <a class="el" href="group__flexcan__driver.html#gaf32f29aa44ad4e8c5df08fdbb6847e20">flexcan_transfer_callback_t</a> callback, void *userData)</td></tr>
<tr class="memdesc:gaca661014e03aa709a753a3c499ecba19"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the FlexCAN handle. <a href="#gaca661014e03aa709a753a3c499ecba19">More...</a><br/></td></tr>
<tr class="separator:gaca661014e03aa709a753a3c499ecba19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8497b4572e60df692d193e2329993e5f"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga8497b4572e60df692d193e2329993e5f">FLEXCAN_TransferSendNonBlocking</a> (CAN_Type *base, flexcan_handle_t *handle, <a class="el" href="group__flexcan__driver.html#structflexcan__mb__transfer__t">flexcan_mb_transfer_t</a> *xfer)</td></tr>
<tr class="memdesc:ga8497b4572e60df692d193e2329993e5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends a message using IRQ. <a href="#ga8497b4572e60df692d193e2329993e5f">More...</a><br/></td></tr>
<tr class="separator:ga8497b4572e60df692d193e2329993e5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8f41d066f0898128a09ef2218eee6618"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga8f41d066f0898128a09ef2218eee6618">FLEXCAN_TransferReceiveNonBlocking</a> (CAN_Type *base, flexcan_handle_t *handle, <a class="el" href="group__flexcan__driver.html#structflexcan__mb__transfer__t">flexcan_mb_transfer_t</a> *xfer)</td></tr>
<tr class="memdesc:ga8f41d066f0898128a09ef2218eee6618"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receives a message using IRQ. <a href="#ga8f41d066f0898128a09ef2218eee6618">More...</a><br/></td></tr>
<tr class="separator:ga8f41d066f0898128a09ef2218eee6618"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf47e1a71184fa3079d02a81e2def72cd"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gaf47e1a71184fa3079d02a81e2def72cd">FLEXCAN_TransferReceiveFifoNonBlocking</a> (CAN_Type *base, flexcan_handle_t *handle, <a class="el" href="group__flexcan__driver.html#structflexcan__fifo__transfer__t">flexcan_fifo_transfer_t</a> *xfer)</td></tr>
<tr class="memdesc:gaf47e1a71184fa3079d02a81e2def72cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receives a message from Rx FIFO using IRQ. <a href="#gaf47e1a71184fa3079d02a81e2def72cd">More...</a><br/></td></tr>
<tr class="separator:gaf47e1a71184fa3079d02a81e2def72cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab1bb142ae44f89723de55aed6879d311"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#gab1bb142ae44f89723de55aed6879d311">FLEXCAN_TransferAbortSend</a> (CAN_Type *base, flexcan_handle_t *handle, uint8_t mbIdx)</td></tr>
<tr class="memdesc:gab1bb142ae44f89723de55aed6879d311"><td class="mdescLeft">&#160;</td><td class="mdescRight">Aborts the interrupt driven message send process. <a href="#gab1bb142ae44f89723de55aed6879d311">More...</a><br/></td></tr>
<tr class="separator:gab1bb142ae44f89723de55aed6879d311"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga96d909308b07c826b8123b45bf46e2e8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga96d909308b07c826b8123b45bf46e2e8">FLEXCAN_TransferAbortReceive</a> (CAN_Type *base, flexcan_handle_t *handle, uint8_t mbIdx)</td></tr>
<tr class="memdesc:ga96d909308b07c826b8123b45bf46e2e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Aborts the interrupt driven message receive process. <a href="#ga96d909308b07c826b8123b45bf46e2e8">More...</a><br/></td></tr>
<tr class="separator:ga96d909308b07c826b8123b45bf46e2e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9ff071840674c2b3f2e1667e5d0400ac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga9ff071840674c2b3f2e1667e5d0400ac">FLEXCAN_TransferAbortReceiveFifo</a> (CAN_Type *base, flexcan_handle_t *handle)</td></tr>
<tr class="memdesc:ga9ff071840674c2b3f2e1667e5d0400ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Aborts the interrupt driven message receive from Rx FIFO process. <a href="#ga9ff071840674c2b3f2e1667e5d0400ac">More...</a><br/></td></tr>
<tr class="separator:ga9ff071840674c2b3f2e1667e5d0400ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga929cb775ee9a363295feef9cb06c2425"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ga929cb775ee9a363295feef9cb06c2425">FLEXCAN_TransferHandleIRQ</a> (CAN_Type *base, flexcan_handle_t *handle)</td></tr>
<tr class="memdesc:ga929cb775ee9a363295feef9cb06c2425"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN IRQ handle function. <a href="#ga929cb775ee9a363295feef9cb06c2425">More...</a><br/></td></tr>
<tr class="separator:ga929cb775ee9a363295feef9cb06c2425"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="structflexcan__frame__t" id="structflexcan__frame__t"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct flexcan_frame_t</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"></div><h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="acf56bef24748e5d4498edfbaac4e174c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_frame_t::timestamp</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a86c748c660b5a447d73b601d65464d68"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_frame_t::length</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a21ceef28a120648fbd3bf3c72c414e89"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_frame_t::type</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ac8c11ad3b0de16980ae1cb45d9e5bdde"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_frame_t::format</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a7a28979fe8e8355747e83d142b0ddd64"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_frame_t::reserve1</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a2c49a36e59aed74b59fae67da2ec5f67"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_frame_t::idhit</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a2d5b2e002f982e1a33244362e8fdcd08"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_frame_t::id</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a9dc0fc14c8753bdd1ff34fd945124e20"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_frame_t::reserve2</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a5333734602acf1681855ee540076034e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_frame_t::dataWord0</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="aaf4b0995ba55fae4d85765d6b62c2e57"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_frame_t::dataWord1</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a3730fc502fc6955573a4bf495fbff2ba"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_frame_t::dataByte3</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a4d3bc8f3e2d4343ead866a6ea3dc874a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_frame_t::dataByte2</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a23f690780c3b7336cd38dcd8272b6799"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_frame_t::dataByte1</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="aac272e3fc846654dedc2174b9050c493"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_frame_t::dataByte0</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a541d16b28a8c2d4959262f581d52f1b9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_frame_t::dataByte7</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a08bb816509e5c2a8e62cf14f3e7a820d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_frame_t::dataByte6</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a7fb79a7e48cef3eef8c2bb652d521404"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_frame_t::dataByte5</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a744b38402f1ccd4fbb0b1f851401ea87"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_frame_t::dataByte4</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="structflexcan__config__t" id="structflexcan__config__t"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct flexcan_config_t</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:a19acff49da11171e316b5c02d08fe898"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a19acff49da11171e316b5c02d08fe898">baudRate</a></td></tr>
<tr class="memdesc:a19acff49da11171e316b5c02d08fe898"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN baud rate in bps. <a href="#a19acff49da11171e316b5c02d08fe898">More...</a><br/></td></tr>
<tr class="separator:a19acff49da11171e316b5c02d08fe898"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a088675118b1081ed959119ba00080412"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__flexcan__driver.html#gaa0b3ac1e2e7416950b82014d2a2b40ee">flexcan_clock_source_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a088675118b1081ed959119ba00080412">clkSrc</a></td></tr>
<tr class="memdesc:a088675118b1081ed959119ba00080412"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clock source for FlexCAN Protocol Engine. <a href="#a088675118b1081ed959119ba00080412">More...</a><br/></td></tr>
<tr class="separator:a088675118b1081ed959119ba00080412"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f78425cda4ca2be4ffca627aac9db05"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a1f78425cda4ca2be4ffca627aac9db05">maxMbNum</a></td></tr>
<tr class="memdesc:a1f78425cda4ca2be4ffca627aac9db05"><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum number of Message Buffers used by user. <a href="#a1f78425cda4ca2be4ffca627aac9db05">More...</a><br/></td></tr>
<tr class="separator:a1f78425cda4ca2be4ffca627aac9db05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b15eb7994ec581aee06873d718fd216"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a3b15eb7994ec581aee06873d718fd216">enableLoopBack</a></td></tr>
<tr class="memdesc:a3b15eb7994ec581aee06873d718fd216"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or Disable Loop Back Self Test Mode. <a href="#a3b15eb7994ec581aee06873d718fd216">More...</a><br/></td></tr>
<tr class="separator:a3b15eb7994ec581aee06873d718fd216"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b849e3e26f5798fa96abd6f5afb5b3c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a1b849e3e26f5798fa96abd6f5afb5b3c">enableSelfWakeup</a></td></tr>
<tr class="memdesc:a1b849e3e26f5798fa96abd6f5afb5b3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or Disable Self Wakeup Mode. <a href="#a1b849e3e26f5798fa96abd6f5afb5b3c">More...</a><br/></td></tr>
<tr class="separator:a1b849e3e26f5798fa96abd6f5afb5b3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a176576d19ca09ef38155318486d5e0a0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a176576d19ca09ef38155318486d5e0a0">enableIndividMask</a></td></tr>
<tr class="memdesc:a176576d19ca09ef38155318486d5e0a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or Disable Rx Individual Mask. <a href="#a176576d19ca09ef38155318486d5e0a0">More...</a><br/></td></tr>
<tr class="separator:a176576d19ca09ef38155318486d5e0a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="a19acff49da11171e316b5c02d08fe898"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_config_t::baudRate</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a088675118b1081ed959119ba00080412"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__flexcan__driver.html#gaa0b3ac1e2e7416950b82014d2a2b40ee">flexcan_clock_source_t</a> flexcan_config_t::clkSrc</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a1f78425cda4ca2be4ffca627aac9db05"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_config_t::maxMbNum</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a3b15eb7994ec581aee06873d718fd216"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool flexcan_config_t::enableLoopBack</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a1b849e3e26f5798fa96abd6f5afb5b3c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool flexcan_config_t::enableSelfWakeup</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a176576d19ca09ef38155318486d5e0a0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool flexcan_config_t::enableIndividMask</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="structflexcan__timing__config__t" id="structflexcan__timing__config__t"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct flexcan_timing_config_t</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:a7ab0d1c580bce7ccf57eb86f04cc7147"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a7ab0d1c580bce7ccf57eb86f04cc7147">preDivider</a></td></tr>
<tr class="memdesc:a7ab0d1c580bce7ccf57eb86f04cc7147"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clock Pre-scaler Division Factor. <a href="#a7ab0d1c580bce7ccf57eb86f04cc7147">More...</a><br/></td></tr>
<tr class="separator:a7ab0d1c580bce7ccf57eb86f04cc7147"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a328cafc9d9d4536e888a2392c52936af"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a328cafc9d9d4536e888a2392c52936af">rJumpwidth</a></td></tr>
<tr class="memdesc:a328cafc9d9d4536e888a2392c52936af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Re-sync Jump Width. <a href="#a328cafc9d9d4536e888a2392c52936af">More...</a><br/></td></tr>
<tr class="separator:a328cafc9d9d4536e888a2392c52936af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70c5ba7b5325b4cc0d8579bd93701541"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a70c5ba7b5325b4cc0d8579bd93701541">phaseSeg1</a></td></tr>
<tr class="memdesc:a70c5ba7b5325b4cc0d8579bd93701541"><td class="mdescLeft">&#160;</td><td class="mdescRight">Phase Segment 1. <a href="#a70c5ba7b5325b4cc0d8579bd93701541">More...</a><br/></td></tr>
<tr class="separator:a70c5ba7b5325b4cc0d8579bd93701541"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c11e2dde54a7fa384b956a79793aa30"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a6c11e2dde54a7fa384b956a79793aa30">phaseSeg2</a></td></tr>
<tr class="memdesc:a6c11e2dde54a7fa384b956a79793aa30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Phase Segment 2. <a href="#a6c11e2dde54a7fa384b956a79793aa30">More...</a><br/></td></tr>
<tr class="separator:a6c11e2dde54a7fa384b956a79793aa30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08a892d0d2f41c0065ef72d9ebb66d66"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a08a892d0d2f41c0065ef72d9ebb66d66">propSeg</a></td></tr>
<tr class="memdesc:a08a892d0d2f41c0065ef72d9ebb66d66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Propagation Segment. <a href="#a08a892d0d2f41c0065ef72d9ebb66d66">More...</a><br/></td></tr>
<tr class="separator:a08a892d0d2f41c0065ef72d9ebb66d66"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="a7ab0d1c580bce7ccf57eb86f04cc7147"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_timing_config_t::preDivider</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a328cafc9d9d4536e888a2392c52936af"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_timing_config_t::rJumpwidth</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a70c5ba7b5325b4cc0d8579bd93701541"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_timing_config_t::phaseSeg1</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a6c11e2dde54a7fa384b956a79793aa30"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_timing_config_t::phaseSeg2</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a08a892d0d2f41c0065ef72d9ebb66d66"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_timing_config_t::propSeg</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="structflexcan__rx__mb__config__t" id="structflexcan__rx__mb__config__t"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct flexcan_rx_mb_config_t</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"><p>This structure is used as the parameter of <a class="el" href="group__flexcan__driver.html#gaf335daf0156fab50571e55d2898bccb2" title="Configures a FlexCAN Receive Message Buffer. ">FLEXCAN_SetRxMbConfig()</a> function. The <a class="el" href="group__flexcan__driver.html#gaf335daf0156fab50571e55d2898bccb2" title="Configures a FlexCAN Receive Message Buffer. ">FLEXCAN_SetRxMbConfig()</a> function is used to configure FlexCAN Receive Message Buffer. The function abort previous receiving process, clean the Message Buffer and activate the Rx Message Buffer using given Message Buffer setting. </p>
</div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:a711c0fe1870b35216e51c48b615af102"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a711c0fe1870b35216e51c48b615af102">id</a></td></tr>
<tr class="memdesc:a711c0fe1870b35216e51c48b615af102"><td class="mdescLeft">&#160;</td><td class="mdescRight">CAN Message Buffer Frame Identifier, should be set using <a class="el" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21" title="Extend Frame ID helper macro. ">FLEXCAN_ID_EXT()</a> or <a class="el" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d" title="FlexCAN Frame ID helper macro. ">FLEXCAN_ID_STD()</a> macro. <a href="#a711c0fe1870b35216e51c48b615af102">More...</a><br/></td></tr>
<tr class="separator:a711c0fe1870b35216e51c48b615af102"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7f296319a192fb82f137f82bb126f7a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__flexcan__driver.html#ga89e76f77a571693c1adeec47796c97df">flexcan_frame_format_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#aa7f296319a192fb82f137f82bb126f7a">format</a></td></tr>
<tr class="memdesc:aa7f296319a192fb82f137f82bb126f7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">CAN Frame Identifier format(Standard of Extend). <a href="#aa7f296319a192fb82f137f82bb126f7a">More...</a><br/></td></tr>
<tr class="separator:aa7f296319a192fb82f137f82bb126f7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a258245b77982b70b8d82fc75ee993503"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__flexcan__driver.html#gacec96742e2b0b51a5bf3246bfc57a455">flexcan_frame_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a258245b77982b70b8d82fc75ee993503">type</a></td></tr>
<tr class="memdesc:a258245b77982b70b8d82fc75ee993503"><td class="mdescLeft">&#160;</td><td class="mdescRight">CAN Frame Type(Data or Remote). <a href="#a258245b77982b70b8d82fc75ee993503">More...</a><br/></td></tr>
<tr class="separator:a258245b77982b70b8d82fc75ee993503"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="a711c0fe1870b35216e51c48b615af102"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t flexcan_rx_mb_config_t::id</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="aa7f296319a192fb82f137f82bb126f7a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__flexcan__driver.html#ga89e76f77a571693c1adeec47796c97df">flexcan_frame_format_t</a> flexcan_rx_mb_config_t::format</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a258245b77982b70b8d82fc75ee993503"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__flexcan__driver.html#gacec96742e2b0b51a5bf3246bfc57a455">flexcan_frame_type_t</a> flexcan_rx_mb_config_t::type</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="structflexcan__rx__fifo__config__t" id="structflexcan__rx__fifo__config__t"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct flexcan_rx_fifo_config_t</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:abbf208769efc96e928bd623fc7f5da19"><td class="memItemLeft" align="right" valign="top">uint32_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#abbf208769efc96e928bd623fc7f5da19">idFilterTable</a></td></tr>
<tr class="memdesc:abbf208769efc96e928bd623fc7f5da19"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to FlexCAN Rx FIFO identifier filter table. <a href="#abbf208769efc96e928bd623fc7f5da19">More...</a><br/></td></tr>
<tr class="separator:abbf208769efc96e928bd623fc7f5da19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02ebd3a71c29bb55faf784e871324c52"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a02ebd3a71c29bb55faf784e871324c52">idFilterNum</a></td></tr>
<tr class="memdesc:a02ebd3a71c29bb55faf784e871324c52"><td class="mdescLeft">&#160;</td><td class="mdescRight">The quantity of filter elements. <a href="#a02ebd3a71c29bb55faf784e871324c52">More...</a><br/></td></tr>
<tr class="separator:a02ebd3a71c29bb55faf784e871324c52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35f41ecbd9d9dd163b05758f0aa51e6e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__flexcan__driver.html#ga1b8c38cce54aff2f24b6cd45da80f353">flexcan_rx_fifo_filter_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a35f41ecbd9d9dd163b05758f0aa51e6e">idFilterType</a></td></tr>
<tr class="memdesc:a35f41ecbd9d9dd163b05758f0aa51e6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">The FlexCAN Rx FIFO Filter type. <a href="#a35f41ecbd9d9dd163b05758f0aa51e6e">More...</a><br/></td></tr>
<tr class="separator:a35f41ecbd9d9dd163b05758f0aa51e6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2247025f9a26b65bc6fa4d59f507657c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__flexcan__driver.html#ga5d139af23e8c1094b39d1cf26d85271b">flexcan_rx_fifo_priority_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a2247025f9a26b65bc6fa4d59f507657c">priority</a></td></tr>
<tr class="memdesc:a2247025f9a26b65bc6fa4d59f507657c"><td class="mdescLeft">&#160;</td><td class="mdescRight">The FlexCAN Rx FIFO receive priority. <a href="#a2247025f9a26b65bc6fa4d59f507657c">More...</a><br/></td></tr>
<tr class="separator:a2247025f9a26b65bc6fa4d59f507657c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="abbf208769efc96e928bd623fc7f5da19"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t* flexcan_rx_fifo_config_t::idFilterTable</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a02ebd3a71c29bb55faf784e871324c52"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_rx_fifo_config_t::idFilterNum</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a35f41ecbd9d9dd163b05758f0aa51e6e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__flexcan__driver.html#ga1b8c38cce54aff2f24b6cd45da80f353">flexcan_rx_fifo_filter_type_t</a> flexcan_rx_fifo_config_t::idFilterType</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a2247025f9a26b65bc6fa4d59f507657c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__flexcan__driver.html#ga5d139af23e8c1094b39d1cf26d85271b">flexcan_rx_fifo_priority_t</a> flexcan_rx_fifo_config_t::priority</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="structflexcan__mb__transfer__t" id="structflexcan__mb__transfer__t"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct flexcan_mb_transfer_t</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:af38b9852b65061e18ee7d6232a7ef3be"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#af38b9852b65061e18ee7d6232a7ef3be">frame</a></td></tr>
<tr class="memdesc:af38b9852b65061e18ee7d6232a7ef3be"><td class="mdescLeft">&#160;</td><td class="mdescRight">The buffer of CAN Message to be transfer. <a href="#af38b9852b65061e18ee7d6232a7ef3be">More...</a><br/></td></tr>
<tr class="separator:af38b9852b65061e18ee7d6232a7ef3be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35b306312bcc47c5569f770f3341543d"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a35b306312bcc47c5569f770f3341543d">mbIdx</a></td></tr>
<tr class="memdesc:a35b306312bcc47c5569f770f3341543d"><td class="mdescLeft">&#160;</td><td class="mdescRight">The index of Message buffer used to transfer Message. <a href="#a35b306312bcc47c5569f770f3341543d">More...</a><br/></td></tr>
<tr class="separator:a35b306312bcc47c5569f770f3341543d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="af38b9852b65061e18ee7d6232a7ef3be"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a>* flexcan_mb_transfer_t::frame</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a35b306312bcc47c5569f770f3341543d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t flexcan_mb_transfer_t::mbIdx</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="structflexcan__fifo__transfer__t" id="structflexcan__fifo__transfer__t"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct flexcan_fifo_transfer_t</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:ad3420cfcbd536444d54b6a223b615d6f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ad3420cfcbd536444d54b6a223b615d6f">frame</a></td></tr>
<tr class="memdesc:ad3420cfcbd536444d54b6a223b615d6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">The buffer of CAN Message to be received from Rx FIFO. <a href="#ad3420cfcbd536444d54b6a223b615d6f">More...</a><br/></td></tr>
<tr class="separator:ad3420cfcbd536444d54b6a223b615d6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="ad3420cfcbd536444d54b6a223b615d6f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a>* flexcan_fifo_transfer_t::frame</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="struct__flexcan__handle" id="struct__flexcan__handle"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _flexcan_handle</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"><p>FlexCAN handle structure definition.</p>
</div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:afd5494a415932b8008ce8db6a9ea2b6f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__flexcan__driver.html#gaf32f29aa44ad4e8c5df08fdbb6847e20">flexcan_transfer_callback_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#afd5494a415932b8008ce8db6a9ea2b6f">callback</a></td></tr>
<tr class="memdesc:afd5494a415932b8008ce8db6a9ea2b6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback function. <a href="#afd5494a415932b8008ce8db6a9ea2b6f">More...</a><br/></td></tr>
<tr class="separator:afd5494a415932b8008ce8db6a9ea2b6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6e0932c11eba224663bec6ead9f5e78"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ab6e0932c11eba224663bec6ead9f5e78">userData</a></td></tr>
<tr class="memdesc:ab6e0932c11eba224663bec6ead9f5e78"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexCAN callback function parameter. <a href="#ab6e0932c11eba224663bec6ead9f5e78">More...</a><br/></td></tr>
<tr class="separator:ab6e0932c11eba224663bec6ead9f5e78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7693cd6966ea1e887a60c39a7a0c029"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *volatile&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#ad7693cd6966ea1e887a60c39a7a0c029">mbFrameBuf</a> [CAN_WORD1_COUNT]</td></tr>
<tr class="memdesc:ad7693cd6966ea1e887a60c39a7a0c029"><td class="mdescLeft">&#160;</td><td class="mdescRight">The buffer for received data from Message Buffers. <a href="#ad7693cd6966ea1e887a60c39a7a0c029">More...</a><br/></td></tr>
<tr class="separator:ad7693cd6966ea1e887a60c39a7a0c029"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e76f915479b5c4fe23c24954634faf8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *volatile&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a1e76f915479b5c4fe23c24954634faf8">rxFifoFrameBuf</a></td></tr>
<tr class="memdesc:a1e76f915479b5c4fe23c24954634faf8"><td class="mdescLeft">&#160;</td><td class="mdescRight">The buffer for received data from Rx FIFO. <a href="#a1e76f915479b5c4fe23c24954634faf8">More...</a><br/></td></tr>
<tr class="separator:a1e76f915479b5c4fe23c24954634faf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3820f2ca76a985e46b733b4eedcaddcb"><td class="memItemLeft" align="right" valign="top">volatile uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#a3820f2ca76a985e46b733b4eedcaddcb">mbState</a> [CAN_WORD1_COUNT]</td></tr>
<tr class="memdesc:a3820f2ca76a985e46b733b4eedcaddcb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Message Buffer transfer state. <a href="#a3820f2ca76a985e46b733b4eedcaddcb">More...</a><br/></td></tr>
<tr class="separator:a3820f2ca76a985e46b733b4eedcaddcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefb8a038351ac7c4fa6ac8307bccb70e"><td class="memItemLeft" align="right" valign="top">volatile uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexcan__driver.html#aefb8a038351ac7c4fa6ac8307bccb70e">rxFifoState</a></td></tr>
<tr class="memdesc:aefb8a038351ac7c4fa6ac8307bccb70e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rx FIFO transfer state. <a href="#aefb8a038351ac7c4fa6ac8307bccb70e">More...</a><br/></td></tr>
<tr class="separator:aefb8a038351ac7c4fa6ac8307bccb70e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="afd5494a415932b8008ce8db6a9ea2b6f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__flexcan__driver.html#gaf32f29aa44ad4e8c5df08fdbb6847e20">flexcan_transfer_callback_t</a> flexcan_handle_t::callback</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ab6e0932c11eba224663bec6ead9f5e78"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* flexcan_handle_t::userData</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ad7693cd6966ea1e887a60c39a7a0c029"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a>* volatile flexcan_handle_t::mbFrameBuf[CAN_WORD1_COUNT]</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a1e76f915479b5c4fe23c24954634faf8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a>* volatile flexcan_handle_t::rxFifoFrameBuf</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a3820f2ca76a985e46b733b4eedcaddcb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">volatile uint8_t flexcan_handle_t::mbState[CAN_WORD1_COUNT]</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="aefb8a038351ac7c4fa6ac8307bccb70e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">volatile uint8_t flexcan_handle_t::rxFifoState</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="gab0ab26fe950de79b4d9338f56ef316d5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_DRIVER_VERSION&#160;&#160;&#160;(<a class="el" href="group__flash__driver.html#ga812138aa3315b0c6953c1a26130bcc37">MAKE_VERSION</a>(2, 1, 0))</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga83f8199eb0d7d86106313a6b33a9633d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_ID_STD</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td>&#160;&#160;&#160;(((uint32_t)(((uint32_t)(id)) &lt;&lt; CAN_ID_STD_SHIFT)) &amp; CAN_ID_STD_MASK)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Standard Frame ID helper macro. </p>
</div>
</div>
<a class="anchor" id="ga2f7e9211d67ecdb6ecb43a6de6a24f21"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_ID_EXT</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((uint32_t)(((uint32_t)(<span class="keywordtype">id</span>)) &lt;&lt; CAN_ID_EXT_SHIFT)) &amp; \</div>
<div class="line"> (CAN_ID_EXT_MASK | CAN_ID_STD_MASK))</div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga77eb7a4cc86cc613cc44e8b728c17d0c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_MB_STD_MASK</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((uint32_t)((uint32_t)(rtr) &lt;&lt; 31) | (uint32_t)((uint32_t)(ide) &lt;&lt; 30)) | \</div>
<div class="line"> <a class="code" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(<span class="keywordtype">id</span>))</div>
<div class="ttc" id="group__flexcan__driver_html_ga83f8199eb0d7d86106313a6b33a9633d"><div class="ttname"><a href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a></div><div class="ttdeci">#define FLEXCAN_ID_STD(id)</div><div class="ttdoc">FlexCAN Frame ID helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:53</div></div>
</div><!-- fragment --><p>Standard Rx Message Buffer Mask helper macro. </p>
</div>
</div>
<a class="anchor" id="ga982654ec336d8f1b418fd6209a658155"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_MB_EXT_MASK</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((uint32_t)((uint32_t)(rtr) &lt;&lt; 31) | (uint32_t)((uint32_t)(ide) &lt;&lt; 30)) | \</div>
<div class="line"> <a class="code" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(<span class="keywordtype">id</span>))</div>
<div class="ttc" id="group__flexcan__driver_html_ga2f7e9211d67ecdb6ecb43a6de6a24f21"><div class="ttname"><a href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a></div><div class="ttdeci">#define FLEXCAN_ID_EXT(id)</div><div class="ttdoc">Extend Frame ID helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:56</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga2e2e73a689b6b965f1a38a34eb639ed2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_A</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((uint32_t)((uint32_t)(rtr) &lt;&lt; 31) | (uint32_t)((uint32_t)(ide) &lt;&lt; 30)) | \</div>
<div class="line"> (<a class="code" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(<span class="keywordtype">id</span>) &lt;&lt; 1))</div>
<div class="ttc" id="group__flexcan__driver_html_ga83f8199eb0d7d86106313a6b33a9633d"><div class="ttname"><a href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a></div><div class="ttdeci">#define FLEXCAN_ID_STD(id)</div><div class="ttdoc">FlexCAN Frame ID helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:53</div></div>
</div><!-- fragment --><p>Standard Rx FIFO Mask helper macro Type A helper macro. </p>
</div>
</div>
<a class="anchor" id="ga2271558424d13cfad100ee414b51b540"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_B_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((uint32_t)((uint32_t)(rtr) &lt;&lt; 31) | (uint32_t)((uint32_t)(ide) &lt;&lt; 30)) | \</div>
<div class="line"> (<a class="code" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(<span class="keywordtype">id</span>) &lt;&lt; 16))</div>
<div class="ttc" id="group__flexcan__driver_html_ga83f8199eb0d7d86106313a6b33a9633d"><div class="ttname"><a href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a></div><div class="ttdeci">#define FLEXCAN_ID_STD(id)</div><div class="ttdoc">FlexCAN Frame ID helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:53</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="gaa0690c6ff6fb84067da21b1ec8c8dbdf"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_B_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((uint32_t)((uint32_t)(rtr) &lt;&lt; 15) | (uint32_t)((uint32_t)(ide) &lt;&lt; 14)) | \</div>
<div class="line"> <a class="code" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(<span class="keywordtype">id</span>))</div>
<div class="ttc" id="group__flexcan__driver_html_ga83f8199eb0d7d86106313a6b33a9633d"><div class="ttname"><a href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a></div><div class="ttdeci">#define FLEXCAN_ID_STD(id)</div><div class="ttdoc">FlexCAN Frame ID helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:53</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga66af2c0f15a46fa923aed28d6a77d4c6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td>&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(id) &amp; 0x7F8) &lt;&lt; 21)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="gaf8c8c82ebad5cd9c01630ea79dcc7d28"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_MID_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td>&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(id) &amp; 0x7F8) &lt;&lt; 13)</td>
</tr>
</table>
</div><div class="memdoc">
<p>\ </p>
</div>
</div>
<a class="anchor" id="gaf61d34c9feba2c1c3d86efffa0f66e96"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_MID_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td>&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(id) &amp; 0x7F8) &lt;&lt; 5)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga8512d5414568188a2f510171b50aadad"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td>&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga83f8199eb0d7d86106313a6b33a9633d">FLEXCAN_ID_STD</a>(id) &amp; 0x7F8) &gt;&gt; 3)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="gaf0a57967e612e798ba403c19f991e30b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_A</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((uint32_t)((uint32_t)(rtr) &lt;&lt; 31) | (uint32_t)((uint32_t)(ide) &lt;&lt; 30)) | \</div>
<div class="line"> (<a class="code" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(<span class="keywordtype">id</span>) &lt;&lt; 1))</div>
<div class="ttc" id="group__flexcan__driver_html_ga2f7e9211d67ecdb6ecb43a6de6a24f21"><div class="ttname"><a href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a></div><div class="ttdeci">#define FLEXCAN_ID_EXT(id)</div><div class="ttdoc">Extend Frame ID helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:56</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga3671041e467cd335076d3793fcfa8bf5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_B_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">( \</div>
<div class="line"> ((uint32_t)((uint32_t)(rtr) &lt;&lt; 31) | (uint32_t)((uint32_t)(ide) &lt;&lt; 30)) | \</div>
<div class="line"> ((<a class="code" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(<span class="keywordtype">id</span>) &amp; 0x1FFF8000) \</div>
<div class="line"> &lt;&lt; 1))</div>
<div class="ttc" id="group__flexcan__driver_html_ga2f7e9211d67ecdb6ecb43a6de6a24f21"><div class="ttname"><a href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a></div><div class="ttdeci">#define FLEXCAN_ID_EXT(id)</div><div class="ttdoc">Extend Frame ID helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:56</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="gae7f2eaad196d63ca7816fd9e4db55402"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_B_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(((uint32_t)((uint32_t)(rtr) &lt;&lt; 15) | (uint32_t)((uint32_t)(ide) &lt;&lt; 14)) | \</div>
<div class="line"> ((<a class="code" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(<span class="keywordtype">id</span>) &amp; 0x1FFF8000) &gt;&gt; \</div>
<div class="line"> 15))</div>
<div class="ttc" id="group__flexcan__driver_html_ga2f7e9211d67ecdb6ecb43a6de6a24f21"><div class="ttname"><a href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a></div><div class="ttdeci">#define FLEXCAN_ID_EXT(id)</div><div class="ttdoc">Extend Frame ID helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:56</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga3838e6125cf40fcabfa38e94369af8b1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td>&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(id) &amp; 0x1FE00000) &lt;&lt; 3)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="gacda86f0f66954622d3877fa5763da2a6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_MID_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(<span class="keywordtype">id</span>) &amp; 0x1FE00000) &gt;&gt; \</div>
<div class="line"> 5)</div>
<div class="ttc" id="group__flexcan__driver_html_ga2f7e9211d67ecdb6ecb43a6de6a24f21"><div class="ttname"><a href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a></div><div class="ttdeci">#define FLEXCAN_ID_EXT(id)</div><div class="ttdoc">Extend Frame ID helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:56</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="gac6a51332cdee380b4cbb1e0920faa2ee"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_MID_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(<span class="keywordtype">id</span>) &amp; 0x1FE00000) &gt;&gt; \</div>
<div class="line"> 13)</div>
<div class="ttc" id="group__flexcan__driver_html_ga2f7e9211d67ecdb6ecb43a6de6a24f21"><div class="ttname"><a href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a></div><div class="ttdeci">#define FLEXCAN_ID_EXT(id)</div><div class="ttdoc">Extend Frame ID helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:56</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="gacdf8eb19f0138f23a2cbe6055ebd55e5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td>&#160;&#160;&#160;((<a class="el" href="group__flexcan__driver.html#ga2f7e9211d67ecdb6ecb43a6de6a24f21">FLEXCAN_ID_EXT</a>(id) &amp; 0x1FE00000) &gt;&gt; 21)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga32b37f3128bcda272f6c4da5f67038ca"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_FILTER_TYPE_A</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;<a class="el" href="group__flexcan__driver.html#ga2e2e73a689b6b965f1a38a34eb639ed2">FLEXCAN_RX_FIFO_STD_MASK_TYPE_A</a>(id, rtr, ide)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Standard Rx FIFO Filter helper macro Type A helper macro. </p>
</div>
</div>
<a class="anchor" id="ga4fe25fb6cc4716845e2c03fed2e11458"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_FILTER_TYPE_B_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#ga2271558424d13cfad100ee414b51b540">FLEXCAN_RX_FIFO_STD_MASK_TYPE_B_HIGH</a>( \</div>
<div class="line"> <span class="keywordtype">id</span>, rtr, ide)</div>
<div class="ttc" id="group__flexcan__driver_html_ga2271558424d13cfad100ee414b51b540"><div class="ttname"><a href="group__flexcan__driver.html#ga2271558424d13cfad100ee414b51b540">FLEXCAN_RX_FIFO_STD_MASK_TYPE_B_HIGH</a></div><div class="ttdeci">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_B_HIGH(id, rtr, ide)</div><div class="ttdoc">Standard Rx FIFO Mask helper macro Type B upper part helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:80</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga373d3c6a21cfa5a3a22202df9ec0f28e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_FILTER_TYPE_B_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#gaa0690c6ff6fb84067da21b1ec8c8dbdf">FLEXCAN_RX_FIFO_STD_MASK_TYPE_B_LOW</a>( \</div>
<div class="line"> <span class="keywordtype">id</span>, rtr, ide)</div>
<div class="ttc" id="group__flexcan__driver_html_gaa0690c6ff6fb84067da21b1ec8c8dbdf"><div class="ttname"><a href="group__flexcan__driver.html#gaa0690c6ff6fb84067da21b1ec8c8dbdf">FLEXCAN_RX_FIFO_STD_MASK_TYPE_B_LOW</a></div><div class="ttdeci">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_B_LOW(id, rtr, ide)</div><div class="ttdoc">Standard Rx FIFO Mask helper macro Type B lower part helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:85</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga9d0870ba103237a27082e578f0fcefd9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_FILTER_TYPE_C_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#ga66af2c0f15a46fa923aed28d6a77d4c6">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_HIGH</a>( \</div>
<div class="line"> <span class="keywordtype">id</span>)</div>
<div class="ttc" id="group__flexcan__driver_html_ga66af2c0f15a46fa923aed28d6a77d4c6"><div class="ttname"><a href="group__flexcan__driver.html#ga66af2c0f15a46fa923aed28d6a77d4c6">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_HIGH</a></div><div class="ttdeci">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_HIGH(id)</div><div class="ttdoc">Standard Rx FIFO Mask helper macro Type C upper part helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:90</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="gad09a01e6bc381f170c48d07f4b74e74c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_FILTER_TYPE_C_MID_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#gaf8c8c82ebad5cd9c01630ea79dcc7d28">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_MID_HIGH</a>( \</div>
<div class="line"> <span class="keywordtype">id</span>)</div>
<div class="ttc" id="group__flexcan__driver_html_gaf8c8c82ebad5cd9c01630ea79dcc7d28"><div class="ttname"><a href="group__flexcan__driver.html#gaf8c8c82ebad5cd9c01630ea79dcc7d28">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_MID_HIGH</a></div><div class="ttdeci">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_MID_HIGH(id)</div><div class="ttdoc">Standard Rx FIFO Mask helper macro Type C mid-upper part helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:93</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga7eb945b49c25254d8d387cf425b50972"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_FILTER_TYPE_C_MID_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#gaf61d34c9feba2c1c3d86efffa0f66e96">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_MID_LOW</a>( \</div>
<div class="line"> <span class="keywordtype">id</span>)</div>
<div class="ttc" id="group__flexcan__driver_html_gaf61d34c9feba2c1c3d86efffa0f66e96"><div class="ttname"><a href="group__flexcan__driver.html#gaf61d34c9feba2c1c3d86efffa0f66e96">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_MID_LOW</a></div><div class="ttdeci">#define FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_MID_LOW(id)</div><div class="ttdoc">Standard Rx FIFO Mask helper macro Type C mid-lower part helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:99</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga109c653c3c5640bc1a4352a6ef6992dd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_STD_FILTER_TYPE_C_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td>&#160;&#160;&#160;<a class="el" href="group__flexcan__driver.html#ga8512d5414568188a2f510171b50aadad">FLEXCAN_RX_FIFO_STD_MASK_TYPE_C_LOW</a>(id)</td>
</tr>
</table>
</div><div class="memdoc">
<p>\ </p>
</div>
</div>
<a class="anchor" id="gad7c1dc5e9a14b933c963234aa90cd6e6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_A</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;<a class="el" href="group__flexcan__driver.html#gaf0a57967e612e798ba403c19f991e30b">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_A</a>(id, rtr, ide)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga645d65a7e8a1f432b1f657755869cb2c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_B_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#ga3671041e467cd335076d3793fcfa8bf5">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_B_HIGH</a>( \</div>
<div class="line"> <span class="keywordtype">id</span>, rtr, ide)</div>
<div class="ttc" id="group__flexcan__driver_html_ga3671041e467cd335076d3793fcfa8bf5"><div class="ttname"><a href="group__flexcan__driver.html#ga3671041e467cd335076d3793fcfa8bf5">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_B_HIGH</a></div><div class="ttdeci">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_B_HIGH(id, rtr, ide)</div><div class="ttdoc">Extend Rx FIFO Mask helper macro Type B upper part helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:110</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga6d14c774d9d6b0e06fdbfabead04d476"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_B_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">rtr, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ide&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#gae7f2eaad196d63ca7816fd9e4db55402">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_B_LOW</a>( \</div>
<div class="line"> <span class="keywordtype">id</span>, rtr, ide)</div>
<div class="ttc" id="group__flexcan__driver_html_gae7f2eaad196d63ca7816fd9e4db55402"><div class="ttname"><a href="group__flexcan__driver.html#gae7f2eaad196d63ca7816fd9e4db55402">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_B_LOW</a></div><div class="ttdeci">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_B_LOW(id, rtr, ide)</div><div class="ttdoc">Extend Rx FIFO Mask helper macro Type B lower part helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:119</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga6feee943b4033a99bff09b614628493e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_C_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td>&#160;&#160;&#160;<a class="el" href="group__flexcan__driver.html#ga3838e6125cf40fcabfa38e94369af8b1">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_HIGH</a>(id)</td>
</tr>
</table>
</div><div class="memdoc">
<p>\ </p>
</div>
</div>
<a class="anchor" id="ga5fe38baee3d3b680b692b5eb2a85ed3c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_C_MID_HIGH</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#gacda86f0f66954622d3877fa5763da2a6">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_MID_HIGH</a>( \</div>
<div class="line"> <span class="keywordtype">id</span>)</div>
<div class="ttc" id="group__flexcan__driver_html_gacda86f0f66954622d3877fa5763da2a6"><div class="ttname"><a href="group__flexcan__driver.html#gacda86f0f66954622d3877fa5763da2a6">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_MID_HIGH</a></div><div class="ttdeci">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_MID_HIGH(id)</div><div class="ttdoc">Extend Rx FIFO Mask helper macro Type C mid-upper part helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:129</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga0809906254139ef5934eefb078268b65"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_C_MID_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#gac6a51332cdee380b4cbb1e0920faa2ee">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_MID_LOW</a>( \</div>
<div class="line"> <span class="keywordtype">id</span>)</div>
<div class="ttc" id="group__flexcan__driver_html_gac6a51332cdee380b4cbb1e0920faa2ee"><div class="ttname"><a href="group__flexcan__driver.html#gac6a51332cdee380b4cbb1e0920faa2ee">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_MID_LOW</a></div><div class="ttdeci">#define FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_MID_LOW(id)</div><div class="ttdoc">Extend Rx FIFO Mask helper macro Type C mid-lower part helper macro. </div><div class="ttdef"><b>Definition:</b> fsl_flexcan.h:134</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ga27da42c8a78913659c440075d7f8c367"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FLEXCAN_RX_FIFO_EXT_FILTER_TYPE_C_LOW</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">id</td><td>)</td>
<td>&#160;&#160;&#160;<a class="el" href="group__flexcan__driver.html#gacdf8eb19f0138f23a2cbe6055ebd55e5">FLEXCAN_RX_FIFO_EXT_MASK_TYPE_C_LOW</a>(id)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="gaf32f29aa44ad4e8c5df08fdbb6847e20"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void(* flexcan_transfer_callback_t)(CAN_Type *base, flexcan_handle_t *handle, status_t status, uint32_t result, void *userData)</td>
</tr>
</table>
</div><div class="memdoc">
<p>The FlexCAN transfer callback returns a value from the underlying layer. If the status equals to kStatus_FLEXCAN_ErrorStatus, the result parameter is the Content of FlexCAN status register which can be used to get the working status(or error status) of FlexCAN module. If the status equals to other FlexCAN Message Buffer transfer status, the result is the index of Message Buffer that generate transfer event. If the status equals to other FlexCAN Message Buffer transfer status, the result is meaningless and should be Ignored. </p>
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="ga73b6375147061a131ec4d3959f2b950b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__flexcan__driver.html#ga73b6375147061a131ec4d3959f2b950b">_flexcan_status</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="gga73b6375147061a131ec4d3959f2b950ba0080617424605a0a0a95e3333f24b3e4"></a>kStatus_FLEXCAN_TxBusy</em>&#160;</td><td class="fielddoc">
<p>Tx Message Buffer is Busy. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950ba91fc36f54041f079bd0cbec9dedac200"></a>kStatus_FLEXCAN_TxIdle</em>&#160;</td><td class="fielddoc">
<p>Tx Message Buffer is Idle. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950ba1faddda6dd8b232ad54604365e2d605d"></a>kStatus_FLEXCAN_TxSwitchToRx</em>&#160;</td><td class="fielddoc">
<p>Remote Message is send out and Message buffer changed to Receive one. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950ba5b713aab29b9accd29aa58d8dc4447e7"></a>kStatus_FLEXCAN_RxBusy</em>&#160;</td><td class="fielddoc">
<p>Rx Message Buffer is Busy. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950bae2b4dcba97c6f468046168046135af67"></a>kStatus_FLEXCAN_RxIdle</em>&#160;</td><td class="fielddoc">
<p>Rx Message Buffer is Idle. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950ba8e2d4031323b8747c5d74c6275e3b9f1"></a>kStatus_FLEXCAN_RxOverflow</em>&#160;</td><td class="fielddoc">
<p>Rx Message Buffer is Overflowed. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950ba74adab69bc91962510c1cc1faa96220d"></a>kStatus_FLEXCAN_RxFifoBusy</em>&#160;</td><td class="fielddoc">
<p>Rx Message FIFO is Busy. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950ba6b1ace2daae9aa209f6c57e8e1dae2f5"></a>kStatus_FLEXCAN_RxFifoIdle</em>&#160;</td><td class="fielddoc">
<p>Rx Message FIFO is Idle. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950ba257602d134fb16ca03908ba7ef9c5e0f"></a>kStatus_FLEXCAN_RxFifoOverflow</em>&#160;</td><td class="fielddoc">
<p>Rx Message FIFO is overflowed. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950ba49de45608b1bef73b58f59b5aac6e459"></a>kStatus_FLEXCAN_RxFifoWarning</em>&#160;</td><td class="fielddoc">
<p>Rx Message FIFO is almost overflowed. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950ba08579ac6bdc65a85046b33cd0d5d636a"></a>kStatus_FLEXCAN_ErrorStatus</em>&#160;</td><td class="fielddoc">
<p>FlexCAN Module Error and Status. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga73b6375147061a131ec4d3959f2b950ba853b75a2a57e9d380ee85ab69da946cc"></a>kStatus_FLEXCAN_UnHandled</em>&#160;</td><td class="fielddoc">
<p>UnHadled Interrupt asserted. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga89e76f77a571693c1adeec47796c97df"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__flexcan__driver.html#ga89e76f77a571693c1adeec47796c97df">flexcan_frame_format_t</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="gga89e76f77a571693c1adeec47796c97dfa82e576bc13cb647a948eed52564d109b"></a>kFLEXCAN_FrameFormatStandard</em>&#160;</td><td class="fielddoc">
<p>Standard frame format attribute. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga89e76f77a571693c1adeec47796c97dfa2acf770880d063c0522a5cc762ab2638"></a>kFLEXCAN_FrameFormatExtend</em>&#160;</td><td class="fielddoc">
<p>Extend frame format attribute. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gacec96742e2b0b51a5bf3246bfc57a455"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__flexcan__driver.html#gacec96742e2b0b51a5bf3246bfc57a455">flexcan_frame_type_t</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="ggacec96742e2b0b51a5bf3246bfc57a455a650a94706925910caaaef592a99f77b3"></a>kFLEXCAN_FrameTypeData</em>&#160;</td><td class="fielddoc">
<p>Data frame type attribute. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggacec96742e2b0b51a5bf3246bfc57a455ab8f92265dc2dadff64259080c78fa35e"></a>kFLEXCAN_FrameTypeRemote</em>&#160;</td><td class="fielddoc">
<p>Remote frame type attribute. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gaa0b3ac1e2e7416950b82014d2a2b40ee"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__flexcan__driver.html#gaa0b3ac1e2e7416950b82014d2a2b40ee">flexcan_clock_source_t</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="ggaa0b3ac1e2e7416950b82014d2a2b40eead9cb66012e8d50e9ee3e154a36c1cff1"></a>kFLEXCAN_ClkSrcOsc</em>&#160;</td><td class="fielddoc">
<p>FlexCAN Protocol Engine clock from Oscillator. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaa0b3ac1e2e7416950b82014d2a2b40eea962bcf8760c6a23e054980b1d0c5a922"></a>kFLEXCAN_ClkSrcPeri</em>&#160;</td><td class="fielddoc">
<p>FlexCAN Protocol Engine clock from Peripheral Clock. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga1b8c38cce54aff2f24b6cd45da80f353"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__flexcan__driver.html#ga1b8c38cce54aff2f24b6cd45da80f353">flexcan_rx_fifo_filter_type_t</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="gga1b8c38cce54aff2f24b6cd45da80f353a1791608b19ef6a27483f55fee614f764"></a>kFLEXCAN_RxFifoFilterTypeA</em>&#160;</td><td class="fielddoc">
<p>One full ID (standard and extended) per ID Filter element. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga1b8c38cce54aff2f24b6cd45da80f353a0989630ff89813979a12fd56e772073c"></a>kFLEXCAN_RxFifoFilterTypeB</em>&#160;</td><td class="fielddoc">
<p>Two full standard IDs or two partial 14-bit ID slices per ID Filter Table element. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga1b8c38cce54aff2f24b6cd45da80f353ae4f020795b2ffb38eafb9a3648270a19"></a>kFLEXCAN_RxFifoFilterTypeC</em>&#160;</td><td class="fielddoc">
<p>Four partial 8-bit Standard or extended ID slices per ID Filter Table element. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga1b8c38cce54aff2f24b6cd45da80f353a6b221467793b4268bf84cd475b92780d"></a>kFLEXCAN_RxFifoFilterTypeD</em>&#160;</td><td class="fielddoc">
<p>All frames rejected. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga5d139af23e8c1094b39d1cf26d85271b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__flexcan__driver.html#ga5d139af23e8c1094b39d1cf26d85271b">flexcan_rx_fifo_priority_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>The matching process starts from the Rx MB(or Rx FIFO) with higher priority. If no MB(or Rx FIFO filter) is satisfied, the matching process goes on with the Rx FIFO(or Rx MB) with lower priority. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga5d139af23e8c1094b39d1cf26d85271babc83bc44026aa8c9eef2a4b259e05ecd"></a>kFLEXCAN_RxFifoPrioLow</em>&#160;</td><td class="fielddoc">
<p>Matching process start from Rx Message Buffer first. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga5d139af23e8c1094b39d1cf26d85271bac2b9710c6248536f992bdd832d05f8cf"></a>kFLEXCAN_RxFifoPrioHigh</em>&#160;</td><td class="fielddoc">
<p>Matching process start from Rx FIFO first. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga339a68a513c218f67756e2a04985428e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__flexcan__driver.html#ga339a68a513c218f67756e2a04985428e">_flexcan_interrupt_enable</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>This structure contains the settings for all of the FlexCAN Module interrupt configurations. Note: FlexCAN Message Buffers and Rx FIFO have their own interrupts. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga339a68a513c218f67756e2a04985428eac07643ed5772e0666315c8cf38d1912a"></a>kFLEXCAN_BusOffInterruptEnable</em>&#160;</td><td class="fielddoc">
<p>Bus Off interrupt. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga339a68a513c218f67756e2a04985428ea1943b187ec63f3a34660d5c48ada5cf6"></a>kFLEXCAN_ErrorInterruptEnable</em>&#160;</td><td class="fielddoc">
<p>Error interrupt. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga339a68a513c218f67756e2a04985428ea776a58431fab2cca17e5b859bbd25d8e"></a>kFLEXCAN_RxWarningInterruptEnable</em>&#160;</td><td class="fielddoc">
<p>Rx Warning interrupt. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga339a68a513c218f67756e2a04985428eaa91344d65339ed9f0b2801f772c8cf90"></a>kFLEXCAN_TxWarningInterruptEnable</em>&#160;</td><td class="fielddoc">
<p>Tx Warning interrupt. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga339a68a513c218f67756e2a04985428eaab59629e2da9dc184add56eebe85bf5f"></a>kFLEXCAN_WakeUpInterruptEnable</em>&#160;</td><td class="fielddoc">
<p>Wake Up interrupt. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gafcf014e17652c04821de5596f5c4f247"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__flexcan__driver.html#gafcf014e17652c04821de5596f5c4f247">_flexcan_flags</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>This provides constants for the FlexCAN status flags for use in the FlexCAN functions. Note: The CPU read action clears FlEXCAN_ErrorFlag, therefore user need to read FlEXCAN_ErrorFlag and distinguish which error is occur using <a class="el" href="group__flexcan__driver.html#gae49fa3b7177a77bb6441a251d7d1c04b">_flexcan_error_flags</a> enumerations. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247a5200e04525a33c3d17abb0902423fd65"></a>kFLEXCAN_SynchFlag</em>&#160;</td><td class="fielddoc">
<p>CAN Synchronization Status. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247aeb17959193db08c88ebe1acec32bf5a9"></a>kFLEXCAN_TxWarningIntFlag</em>&#160;</td><td class="fielddoc">
<p>Tx Warning Interrupt Flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247a1f2987e32d2889a23140b20e72405973"></a>kFLEXCAN_RxWarningIntFlag</em>&#160;</td><td class="fielddoc">
<p>Rx Warning Interrupt Flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247ad2f12389f5b32bbb7d84c9718d4e2e8b"></a>kFLEXCAN_TxErrorWarningFlag</em>&#160;</td><td class="fielddoc">
<p>Tx Error Warning Status. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247acc85a7f4c13805e8a0ec9e5cf0f6b7e2"></a>kFLEXCAN_RxErrorWarningFlag</em>&#160;</td><td class="fielddoc">
<p>Rx Error Warning Status. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247a763c9217bed2fa7c5c1f12e2459f61f0"></a>kFLEXCAN_IdleFlag</em>&#160;</td><td class="fielddoc">
<p>CAN IDLE Status Flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247a3ca2089ad4230485f0351c718a962d2e"></a>kFLEXCAN_FaultConfinementFlag</em>&#160;</td><td class="fielddoc">
<p>Fault Confinement State Flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247a03ff01b35c352d48288a60ba686bb94b"></a>kFLEXCAN_TransmittingFlag</em>&#160;</td><td class="fielddoc">
<p>FlexCAN In Transmission Status. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247a26c976e3327f4c08e60eb4a980ecb44e"></a>kFLEXCAN_ReceivingFlag</em>&#160;</td><td class="fielddoc">
<p>FlexCAN In Reception Status. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247ab3db871ba55aea71f9fb6a9eda3d4480"></a>kFLEXCAN_BusOffIntFlag</em>&#160;</td><td class="fielddoc">
<p>Bus Off Interrupt Flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247afa70d0ee5c86b648e7da37d16a1e9cfe"></a>kFLEXCAN_ErrorIntFlag</em>&#160;</td><td class="fielddoc">
<p>Error Interrupt Flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247abb5e5668b2be3d78e30c7f666b402816"></a>kFLEXCAN_WakeUpIntFlag</em>&#160;</td><td class="fielddoc">
<p>Wake-Up Interrupt Flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggafcf014e17652c04821de5596f5c4f247a9dec4cce221940055dc269cb06e9e0f1"></a>kFLEXCAN_ErrorFlag</em>&#160;</td><td class="fielddoc">
<p>All FlexCAN Error Status. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gae49fa3b7177a77bb6441a251d7d1c04b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__flexcan__driver.html#gae49fa3b7177a77bb6441a251d7d1c04b">_flexcan_error_flags</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>The FlexCAN Error Status enumerations is used to report current error of the FlexCAN bus. This enumerations should be used with KFLEXCAN_ErrorFlag in <a class="el" href="group__flexcan__driver.html#gafcf014e17652c04821de5596f5c4f247">_flexcan_flags</a> enumerations to ditermine which error is generated. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggae49fa3b7177a77bb6441a251d7d1c04baf29ecd380ebf9e3c2ba942d1b59afd20"></a>kFLEXCAN_StuffingError</em>&#160;</td><td class="fielddoc">
<p>Stuffing Error. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae49fa3b7177a77bb6441a251d7d1c04baa2a20d23736022638dff3fa399a28228"></a>kFLEXCAN_FormError</em>&#160;</td><td class="fielddoc">
<p>Form Error. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae49fa3b7177a77bb6441a251d7d1c04bab668e1723ddbd49091b8fd40ff58d0de"></a>kFLEXCAN_CrcError</em>&#160;</td><td class="fielddoc">
<p>Cyclic Redundancy Check Error. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae49fa3b7177a77bb6441a251d7d1c04ba2e89a0bda4c49a0b3b186c4f53b66a21"></a>kFLEXCAN_AckError</em>&#160;</td><td class="fielddoc">
<p>Received no ACK on transmission. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae49fa3b7177a77bb6441a251d7d1c04bafbb466f580b3a3b5fac17856f018ada8"></a>kFLEXCAN_Bit0Error</em>&#160;</td><td class="fielddoc">
<p>Unable to send dominant bit. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae49fa3b7177a77bb6441a251d7d1c04bac507066e62503970fbc6efd5d573f055"></a>kFLEXCAN_Bit1Error</em>&#160;</td><td class="fielddoc">
<p>Unable to send recessive bit. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gacbdc64ada450fa6e8428aca3bcc7d8a9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__flexcan__driver.html#gacbdc64ada450fa6e8428aca3bcc7d8a9">_flexcan_rx_fifo_flags</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>The FlexCAN Rx FIFO Status enumerations are used to determine the status of the Rx FIFO. Because Rx FIFO occupy the MB0 ~ MB7 (Rx Fifo filter also occupies more Message Buffer space), Rx FIFO status flags are mapped to the corresponding Message Buffer status flags. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggacbdc64ada450fa6e8428aca3bcc7d8a9aaea98e3313f0b74f0485fe39425fdb79"></a>kFLEXCAN_RxFifoOverflowFlag</em>&#160;</td><td class="fielddoc">
<p>Rx FIFO overflow flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggacbdc64ada450fa6e8428aca3bcc7d8a9aa1faa3742f1c027714f92db80310e33f"></a>kFLEXCAN_RxFifoWarningFlag</em>&#160;</td><td class="fielddoc">
<p>Rx FIFO almost full flag. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggacbdc64ada450fa6e8428aca3bcc7d8a9a0d78a5c058c0908b5a0f43997046965f"></a>kFLEXCAN_RxFifoFrameAvlFlag</em>&#160;</td><td class="fielddoc">
<p>Frames available in Rx FIFO flag. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga8d7ebf086fb294130fa30a0f75a5f340"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_Init </td>
<td>(</td>
<td class="paramtype">CAN_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="group__flexcan__driver.html#structflexcan__config__t">flexcan_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>sourceClock_Hz</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function initializes the FlexCAN module with user-defined settings. This example shows how to set up the <a class="el" href="group__flexcan__driver.html#structflexcan__config__t" title="FlexCAN module configuration structure. ">flexcan_config_t</a> parameters and how to call the FLEXCAN_Init function by passing in these parameters: </p>
<div class="fragment"><div class="line"><a class="code" href="group__flexcan__driver.html#structflexcan__config__t">flexcan_config_t</a> flexcanConfig;</div>
<div class="line">flexcanConfig.<a class="code" href="group__flexcan__driver.html#a088675118b1081ed959119ba00080412">clkSrc</a> = KFLEXCAN_ClkSrcOsc;</div>
<div class="line">flexcanConfig.<a class="code" href="group__flexcan__driver.html#a19acff49da11171e316b5c02d08fe898">baudRate</a> = 125000U;</div>
<div class="line">flexcanConfig.<a class="code" href="group__flexcan__driver.html#a1f78425cda4ca2be4ffca627aac9db05">maxMbNum</a> = 16;</div>
<div class="line">flexcanConfig.<a class="code" href="group__flexcan__driver.html#a3b15eb7994ec581aee06873d718fd216">enableLoopBack</a> = <span class="keyword">false</span>;</div>
<div class="line">flexcanConfig.<a class="code" href="group__flexcan__driver.html#a1b849e3e26f5798fa96abd6f5afb5b3c">enableSelfWakeup</a> = <span class="keyword">false</span>;</div>
<div class="line">flexcanConfig.<a class="code" href="group__flexcan__driver.html#a176576d19ca09ef38155318486d5e0a0">enableIndividMask</a> = <span class="keyword">false</span>;</div>
<div class="line">flexcanConfig.enableDoze = <span class="keyword">false</span>;</div>
<div class="line"><a class="code" href="group__flexcan__driver.html#ga8d7ebf086fb294130fa30a0f75a5f340">FLEXCAN_Init</a>(CAN0, &amp;flexcanConfig, 8000000UL);</div>
</div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">config</td><td>Pointer to user-defined configuration structure. </td></tr>
<tr><td class="paramname">sourceClock_Hz</td><td>FlexCAN Protocol Engine clock source frequency in Hz. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga0629aa8318a3e515dfb168004e0ce656"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_Deinit </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function disable the FlexCAN module clock and set all register value to reset value.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga4eafdb971a92f517c69a80c15a216342"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_GetDefaultConfig </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__flexcan__driver.html#structflexcan__config__t">flexcan_config_t</a> *&#160;</td>
<td class="paramname"><em>config</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function initializes the FlexCAN configure structure to default value. The default value are: flexcanConfig-&gt;clkSrc = KFLEXCAN_ClkSrcOsc; flexcanConfig-&gt;baudRate = 125000U; flexcanConfig-&gt;maxMbNum = 16; flexcanConfig-&gt;enableLoopBack = false; flexcanConfig-&gt;enableSelfWakeup = false; flexcanConfig-&gt;enableIndividMask = false; flexcanConfig-&gt;enableDoze = false;</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">config</td><td>Pointer to FlexCAN configuration structure. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga481abb41cf9d87c7b4a901dd61e34f82"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_SetTimingConfig </td>
<td>(</td>
<td class="paramtype">CAN_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="group__flexcan__driver.html#structflexcan__timing__config__t">flexcan_timing_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>This function gives user settings to CAN bus timing characteristic. The function is for an experienced user. For less experienced users, call the <a class="el" href="group__flexcan__driver.html#ga8d7ebf086fb294130fa30a0f75a5f340" title="Initializes a FlexCAN instance. ">FLEXCAN_Init()</a> and fill the baud rate field with a desired value. This provides the default timing characteristics to the module.</p>
<p>Note that calling <a class="el" href="group__flexcan__driver.html#ga481abb41cf9d87c7b4a901dd61e34f82" title="Sets the FlexCAN protocol timing characteristic. ">FLEXCAN_SetTimingConfig()</a> overrides the baud rate set in <a class="el" href="group__flexcan__driver.html#ga8d7ebf086fb294130fa30a0f75a5f340" title="Initializes a FlexCAN instance. ">FLEXCAN_Init()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">config</td><td>Pointer to the timing configuration structure. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga188e40d55493a20e7e11215d23369f94"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FlEXCAN_SetRxMbGlobalMask </td>
<td>(</td>
<td class="paramtype">CAN_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>
</div><div class="memdoc">
<p>This function sets the global mask for FlexCAN message buffer in a matching process. The configuration is only effective when the Rx individual mask is disabled in the <a class="el" href="group__flexcan__driver.html#ga8d7ebf086fb294130fa30a0f75a5f340" title="Initializes a FlexCAN instance. ">FLEXCAN_Init()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mask</td><td>Rx Message Buffer Global Mask value. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga6916d2efb57c72bc39450728d63eda2e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FlEXCAN_SetRxFifoGlobalMask </td>
<td>(</td>
<td class="paramtype">CAN_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>
</div><div class="memdoc">
<p>This function sets the global mask for FlexCAN FIFO in a matching process.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mask</td><td>Rx Fifo Global Mask value. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga4e097e264335f27dc55f20c4eb836a94"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FlEXCAN_SetRxIndividualMask </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>maskIdx</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>
</div><div class="memdoc">
<p>This function sets the individual mask for FlexCAN matching process. The configuration is only effective when the Rx individual mask is enabled in <a class="el" href="group__flexcan__driver.html#ga8d7ebf086fb294130fa30a0f75a5f340" title="Initializes a FlexCAN instance. ">FLEXCAN_Init()</a>. If Rx FIFO is disabled, the individual mask is applied to the corresponding Message Buffer. If Rx FIFO is enabled, the individual mask for Rx FIFO occupied Message Buffer is applied to the Rx Filter with same index. What calls for special attention is that only the first 32 individual masks can be used as Rx FIFO filter mask.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">maskIdx</td><td>The Index of individual Mask. </td></tr>
<tr><td class="paramname">mask</td><td>Rx Individual Mask value. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gadbf35cc05ed0d9a73eda5ac4fbb30ff0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_SetTxMbConfig </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mbIdx</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>
</div><div class="memdoc">
<p>This function aborts the previous transmission, cleans the Message Buffer, and configures it as a Transmit Message Buffer.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mbIdx</td><td>The Message Buffer index. </td></tr>
<tr><td class="paramname">enable</td><td>Enable/Disable Tx Message Buffer.<ul>
<li>true: Enable Tx Message Buffer.</li>
<li>false: Disable Tx Message Buffer. </li>
</ul>
</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaf335daf0156fab50571e55d2898bccb2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_SetRxMbConfig </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mbIdx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="group__flexcan__driver.html#structflexcan__rx__mb__config__t">flexcan_rx_mb_config_t</a> *&#160;</td>
<td class="paramname"><em>config</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>
</div><div class="memdoc">
<p>This function cleans a FlexCAN build-in Message Buffer and configures it as a Receive Message Buffer.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mbIdx</td><td>The Message Buffer index. </td></tr>
<tr><td class="paramname">config</td><td>Pointer to FlexCAN Message Buffer configuration structure. </td></tr>
<tr><td class="paramname">enable</td><td>Enable/Disable Rx Message Buffer.<ul>
<li>true: Enable Rx Message Buffer.</li>
<li>false: Disable Rx Message Buffer. </li>
</ul>
</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga40140a86bc8481442286a61aa668d508"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FlEXCAN_SetRxFifoConfig </td>
<td>(</td>
<td class="paramtype">CAN_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="group__flexcan__driver.html#structflexcan__rx__fifo__config__t">flexcan_rx_fifo_config_t</a> *&#160;</td>
<td class="paramname"><em>config</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>
</div><div class="memdoc">
<p>This function configures the Rx FIFO with given Rx FIFO configuration.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">config</td><td>Pointer to FlexCAN Rx FIFO configuration structure. </td></tr>
<tr><td class="paramname">enable</td><td>Enable/Disable Rx FIFO.<ul>
<li>true: Enable Rx FIFO.</li>
<li>false: Disable Rx FIFO. </li>
</ul>
</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga46217b1ae979c927ae59b98fbbb181e3"></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 FLEXCAN_GetStatusFlags </td>
<td>(</td>
<td class="paramtype">CAN_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">
<p>This function gets all FlexCAN status flags. The flags are returned as the logical OR value of the enumerators <a class="el" href="group__flexcan__driver.html#gafcf014e17652c04821de5596f5c4f247">_flexcan_flags</a>. To check the specific status, compare the return value with enumerators in <a class="el" href="group__flexcan__driver.html#gafcf014e17652c04821de5596f5c4f247">_flexcan_flags</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>FlexCAN status flags which are ORed by the enumerators in the _flexcan_flags. </dd></dl>
</div>
</div>
<a class="anchor" id="gace1fd2bc62b4f7c71d1fce292adf3b3a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void FLEXCAN_ClearStatusFlags </td>
<td>(</td>
<td class="paramtype">CAN_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">
<p>This function clears the FlexCAN status flags with a provided mask. An automatically cleared flag can't be cleared by this function.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mask</td><td>The status flags to be cleared, it is logical OR value of <a class="el" href="group__flexcan__driver.html#gafcf014e17652c04821de5596f5c4f247">_flexcan_flags</a>. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga6b042a7d31e057b96e16954d7342c9b4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void FlEXCAN_GetBusErrCount </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>txErrBuf</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>rxErrBuf</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 FlexCAN Bus Error Counter value for both Tx and Rx direction. These values may be needed in the upper layer error handling.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">txErrBuf</td><td>Buffer to store Tx Error Counter value. </td></tr>
<tr><td class="paramname">rxErrBuf</td><td>Buffer to store Rx Error Counter value. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaf7de339e9d94a4c59f05c04655a23a6e"></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 FLEXCAN_GetMbStatusFlags </td>
<td>(</td>
<td class="paramtype">CAN_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">
<p>This function gets the interrupt flags of a given Message Buffers.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mask</td><td>The ORed FlexCAN Message Buffer mask. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The status of given Message Buffers. </dd></dl>
</div>
</div>
<a class="anchor" id="ga7199f7d1bf8198e03522d1d9706d50f2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void FLEXCAN_ClearMbStatusFlags </td>
<td>(</td>
<td class="paramtype">CAN_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">
<p>This function clears the interrupt flags of a given Message Buffers.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mask</td><td>The ORed FlexCAN Message Buffer mask. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga406e9c07a20ed89504c5716f02efb957"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void FLEXCAN_EnableInterrupts </td>
<td>(</td>
<td class="paramtype">CAN_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">
<p>This function enables the FlexCAN interrupts according to provided mask. The mask is a logical OR of enumeration members, see <a class="el" href="group__flexcan__driver.html#ga339a68a513c218f67756e2a04985428e">_flexcan_interrupt_enable</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mask</td><td>The interrupts to enable. Logical OR of <a class="el" href="group__flexcan__driver.html#ga339a68a513c218f67756e2a04985428e">_flexcan_interrupt_enable</a>. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gad6e220545b129d120fac805e8f9d82ab"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void FLEXCAN_DisableInterrupts </td>
<td>(</td>
<td class="paramtype">CAN_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">
<p>This function disables the FlexCAN interrupts according to provided mask. The mask is a logical OR of enumeration members, see <a class="el" href="group__flexcan__driver.html#ga339a68a513c218f67756e2a04985428e">_flexcan_interrupt_enable</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mask</td><td>The interrupts to disable. Logical OR of <a class="el" href="group__flexcan__driver.html#ga339a68a513c218f67756e2a04985428e">_flexcan_interrupt_enable</a>. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gadbb25b3a7667fa94162f5c98a9dd8fed"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void FLEXCAN_EnableMbInterrupts </td>
<td>(</td>
<td class="paramtype">CAN_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">
<p>This function enables the interrupts of given Message Buffers</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mask</td><td>The ORed FlexCAN Message Buffer mask. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gac99226a65d8458ab9fb13a7ebfb75b49"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void FLEXCAN_DisableMbInterrupts </td>
<td>(</td>
<td class="paramtype">CAN_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">
<p>This function disables the interrupts of given Message Buffers</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mask</td><td>The ORed FlexCAN Message Buffer mask. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga20f79302d5fad90306a26b667f58fe4d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void FLEXCAN_Enable </td>
<td>(</td>
<td class="paramtype">CAN_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">
<p>This function enables or disables the FlexCAN module.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN base pointer. </td></tr>
<tr><td class="paramname">enable</td><td>true to enable, false to disable. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga9ee9d599069a88a50cb7c7a894c87c69"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FLEXCAN_WriteTxMb </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mbIdx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *&#160;</td>
<td class="paramname"><em>txFrame</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function writes a CAN Message to the specified Transmit Message Buffer and changes the Message Buffer state to start CAN Message transmit. After that the function returns immediately.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mbIdx</td><td>The FlexCAN Message Buffer index. </td></tr>
<tr><td class="paramname">txFrame</td><td>Pointer to CAN message frame to be sent. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>- Write Tx Message Buffer Successfully. </td></tr>
<tr><td class="paramname">kStatus_Fail</td><td>- Tx Message Buffer is currently in use. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga93600de1691b5e6d8cc01e06efee7b68"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FLEXCAN_ReadRxMb </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mbIdx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *&#160;</td>
<td class="paramname"><em>rxFrame</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function reads a CAN message from a specified Receive Message Buffer. The function fills a receive CAN message frame structure with just received data and activates the Message Buffer again. The function returns immediately.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">mbIdx</td><td>The FlexCAN Message Buffer index. </td></tr>
<tr><td class="paramname">rxFrame</td><td>Pointer to CAN message frame structure for reception. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>- Rx Message Buffer is full and has been read successfully. </td></tr>
<tr><td class="paramname">kStatus_FLEXCAN_RxOverflow</td><td>- Rx Message Buffer is already overflowed and has been read successfully. </td></tr>
<tr><td class="paramname">kStatus_Fail</td><td>- Rx Message Buffer is empty. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga0f74840527f5e882c72746315bc06576"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FlEXCAN_ReadRxFifo </td>
<td>(</td>
<td class="paramtype">CAN_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="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *&#160;</td>
<td class="paramname"><em>rxFrame</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function reads a CAN message from the FlexCAN build-in Rx FIFO.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">rxFrame</td><td>Pointer to CAN message frame structure for reception. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>- Read Message from Rx FIFO successfully. </td></tr>
<tr><td class="paramname">kStatus_Fail</td><td>- Rx FIFO is not enabled. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gac360f0cee2cf46a682ae1fc2d63958d5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FlEXCAN_TransferSendBlocking </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mbIdx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *&#160;</td>
<td class="paramname"><em>txFrame</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Note that a transfer handle does not need to be created before calling this API.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base pointer. </td></tr>
<tr><td class="paramname">mbIdx</td><td>The FlexCAN Message Buffer index. </td></tr>
<tr><td class="paramname">txFrame</td><td>Pointer to CAN message frame to be sent. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>- Write Tx Message Buffer Successfully. </td></tr>
<tr><td class="paramname">kStatus_Fail</td><td>- Tx Message Buffer is currently in use. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gafaa8ec3bde747737139a4cfc64c64c61"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FlEXCAN_TransferReceiveBlocking </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mbIdx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *&#160;</td>
<td class="paramname"><em>rxFrame</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Note that a transfer handle does not need to be created before calling this API.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base pointer. </td></tr>
<tr><td class="paramname">mbIdx</td><td>The FlexCAN Message Buffer index. </td></tr>
<tr><td class="paramname">rxFrame</td><td>Pointer to CAN message frame structure for reception. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>- Rx Message Buffer is full and has been read successfully. </td></tr>
<tr><td class="paramname">kStatus_FLEXCAN_RxOverflow</td><td>- Rx Message Buffer is already overflowed and has been read successfully. </td></tr>
<tr><td class="paramname">kStatus_Fail</td><td>- Rx Message Buffer is empty. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga59891932ccc6001fa5a67b0b5a592367"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FlEXCAN_TransferReceiveFifoBlocking </td>
<td>(</td>
<td class="paramtype">CAN_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="group__flexcan__driver.html#structflexcan__frame__t">flexcan_frame_t</a> *&#160;</td>
<td class="paramname"><em>rxFrame</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Note that a transfer handle does not need to be created before calling this API.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base pointer. </td></tr>
<tr><td class="paramname">rxFrame</td><td>Pointer to CAN message frame structure for reception. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>- Read Message from Rx FIFO successfully. </td></tr>
<tr><td class="paramname">kStatus_Fail</td><td>- Rx FIFO is not enabled. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaca661014e03aa709a753a3c499ecba19"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_TransferCreateHandle </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexcan_handle_t *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexcan__driver.html#gaf32f29aa44ad4e8c5df08fdbb6847e20">flexcan_transfer_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 FlexCAN handle which can be used for other FlexCAN transactional APIs. Usually, for a specified FlexCAN 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>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>FlexCAN handle pointer. </td></tr>
<tr><td class="paramname">callback</td><td>The callback function. </td></tr>
<tr><td class="paramname">userData</td><td>The parameter of the callback function. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga8497b4572e60df692d193e2329993e5f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FLEXCAN_TransferSendNonBlocking </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexcan_handle_t *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexcan__driver.html#structflexcan__mb__transfer__t">flexcan_mb_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">
<p>This function sends a message using IRQ. This is a non-blocking function, which returns right away. When messages have been sent out, the send callback function is called.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>FlexCAN handle pointer. </td></tr>
<tr><td class="paramname">xfer</td><td>FlexCAN Message Buffer transfer structure. See the <a class="el" href="group__flexcan__driver.html#structflexcan__mb__transfer__t" title="FlexCAN Message Buffer transfer. ">flexcan_mb_transfer_t</a>. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>Start Tx Message Buffer sending process successfully. </td></tr>
<tr><td class="paramname">kStatus_Fail</td><td>Write Tx Message Buffer failed. </td></tr>
<tr><td class="paramname">kStatus_FLEXCAN_TxBusy</td><td>Tx Message Buffer is in use. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga8f41d066f0898128a09ef2218eee6618"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FLEXCAN_TransferReceiveNonBlocking </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexcan_handle_t *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexcan__driver.html#structflexcan__mb__transfer__t">flexcan_mb_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">
<p>This function receives a message using IRQ. This is non-blocking function, which returns right away. When the message has been received, the receive callback function is called.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>FlexCAN handle pointer. </td></tr>
<tr><td class="paramname">xfer</td><td>FlexCAN Message Buffer transfer structure. See the <a class="el" href="group__flexcan__driver.html#structflexcan__mb__transfer__t" title="FlexCAN Message Buffer transfer. ">flexcan_mb_transfer_t</a>. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>- Start Rx Message Buffer receiving process successfully. </td></tr>
<tr><td class="paramname">kStatus_FLEXCAN_RxBusy</td><td>- Rx Message Buffer is in use. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaf47e1a71184fa3079d02a81e2def72cd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FLEXCAN_TransferReceiveFifoNonBlocking </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexcan_handle_t *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexcan__driver.html#structflexcan__fifo__transfer__t">flexcan_fifo_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">
<p>This function receives a message using IRQ. This is a non-blocking function, which returns right away. When all messages have been received, the receive callback function is called.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>FlexCAN handle pointer. </td></tr>
<tr><td class="paramname">xfer</td><td>FlexCAN Rx FIFO transfer structure. See the <a class="el" href="group__flexcan__driver.html#structflexcan__fifo__transfer__t">flexcan_fifo_transfer_t</a>. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>- Start Rx FIFO receiving process successfully. </td></tr>
<tr><td class="paramname">kStatus_FLEXCAN_RxFifoBusy</td><td>- Rx FIFO is currently in use. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gab1bb142ae44f89723de55aed6879d311"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_TransferAbortSend </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexcan_handle_t *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mbIdx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function aborts the interrupt driven message send process.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>FlexCAN handle pointer. </td></tr>
<tr><td class="paramname">mbIdx</td><td>The FlexCAN Message Buffer index. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga96d909308b07c826b8123b45bf46e2e8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_TransferAbortReceive </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexcan_handle_t *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mbIdx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function aborts the interrupt driven message receive process.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>FlexCAN handle pointer. </td></tr>
<tr><td class="paramname">mbIdx</td><td>The FlexCAN Message Buffer index. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga9ff071840674c2b3f2e1667e5d0400ac"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_TransferAbortReceiveFifo </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexcan_handle_t *&#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 the interrupt driven message receive from Rx FIFO process.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>FlexCAN handle pointer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga929cb775ee9a363295feef9cb06c2425"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXCAN_TransferHandleIRQ </td>
<td>(</td>
<td class="paramtype">CAN_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexcan_handle_t *&#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 handles the FlexCAN Error, the Message Buffer, and the Rx FIFO IRQ request.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FlexCAN peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>FlexCAN handle pointer. </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>