Files
test/doc/Doxygen/html/sdrv__sent_8h.html
2025-11-07 20:19:23 +08:00

900 lines
50 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SemiDrive SSDK Appication Program Interface: Z:/01-Code/06-SSDK-DEV-Firewall/ssdk/drivers/include/sdrv_sent.h File Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">SemiDrive SSDK Appication Program Interface<span id="projectnumber">&#160;PTG3.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_14bc92f4b96c8519b376567118ac28b3.html">drivers</a></li><li class="navelem"><a class="el" href="dir_ee023d43c33bfccc31aa50a48a76892b.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">sdrv_sent.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;compiler.h&gt;</code><br />
<code>#include &lt;<a class="el" href="sdrv__common_8h_source.html">sdrv_common.h</a>&gt;</code><br />
<code>#include &lt;types.h&gt;</code><br />
</div>
<p><a href="sdrv__sent_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsent__chan__frame.html">sent_chan_frame</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__sent__chan.html">sdrv_sent_chan</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__sent.html">sdrv_sent</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__sent__chan__config.html">sdrv_sent_chan_config</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsdrv__sent__config.html">sdrv_sent_config</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 id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a393a3fbc3bb406526c5cc98e1a07406a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sdrv__sent_8h.html#a393a3fbc3bb406526c5cc98e1a07406a">sdrv_sent_init</a> (<a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *ctrl, <a class="el" href="sdrv__sent_8h.html#a0c3982bb560ed8e4ba6e1c57f643ad23">sdrv_sent_config_t</a> *cfg)</td></tr>
<tr class="separator:a393a3fbc3bb406526c5cc98e1a07406a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb0e3a61ebf90864699633f87079e9cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sdrv__sent_8h.html#afb0e3a61ebf90864699633f87079e9cf">sdrv_sent_deinit</a> (<a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *ctrl)</td></tr>
<tr class="separator:afb0e3a61ebf90864699633f87079e9cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af20ad1bd374f868e6ce61059cccde7b1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sdrv__sent_8h.html#af20ad1bd374f868e6ce61059cccde7b1">sdrv_sent_set_callback</a> (<a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *ctrl, <a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a> <a class="el" href="sdrv__sent_8h.html#a8fe7a9432aa23bd1305a349b00a0a324">sdrv_sent_chanid</a>, <a class="el" href="sdrv__sent_8h.html#a0df233d8b9dba45e760de1169e58fd70">sdrv_sent_recv_cb_t</a> callback, void *userdata)</td></tr>
<tr class="separator:af20ad1bd374f868e6ce61059cccde7b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5b42bf67ffa84f6ce9b3535e1bd8d87"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sdrv__sent_8h.html#ac5b42bf67ffa84f6ce9b3535e1bd8d87">sdrv_sent_recv_start</a> (<a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *ctrl, <a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a> sent_chan_id)</td></tr>
<tr class="separator:ac5b42bf67ffa84f6ce9b3535e1bd8d87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c2dd37ea2aef1478d62fdf84a93d8f5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sdrv__sent_8h.html#a7c2dd37ea2aef1478d62fdf84a93d8f5">sdrv_sent_recv_stop</a> (<a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *ctrl, <a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a> sent_chan_id)</td></tr>
<tr class="separator:a7c2dd37ea2aef1478d62fdf84a93d8f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fc73ebfa2fd7f61d25cfbc8fe8f0d97"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sdrv__sent_8h.html#a9fc73ebfa2fd7f61d25cfbc8fe8f0d97">sdrv_sent_parse_msg</a> (<a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *ctrl, <a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a> sent_chan_id)</td></tr>
<tr class="separator:a9fc73ebfa2fd7f61d25cfbc8fe8f0d97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41db4d03a2b9943e641b97bd6a35e941"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sdrv__sent_8h.html#a41db4d03a2b9943e641b97bd6a35e941">sdrv_sent_get_frame</a> (<a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *ctrl, <a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a> sent_chan_id, uint32_t *frame_err, <a class="el" href="sdrv__sent_8h.html#a2eec0dea24912c00b6ae0c527fdd56e1">sent_chan_frame_t</a> *frame)</td></tr>
<tr class="separator:a41db4d03a2b9943e641b97bd6a35e941"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b745c534d7b3552a2e4633121e14bfe"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sdrv__sent_8h.html#a5b745c534d7b3552a2e4633121e14bfe">sdrv_sent_irq_handle</a> (uint32_t irq, void *ctrl)</td></tr>
<tr class="separator:a5b745c534d7b3552a2e4633121e14bfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><ul>
<li>Initialization and Configuration</li>
<li>Data receive</li>
<li>Fast channel mode</li>
<li>Interrupts and flags management</li>
</ul>
<p >Note:</p><ul>
<li>Fast channel read mode have 3 different format:<ul>
<li>Standard format(driver use)</li>
<li>Single secure sensor message format</li>
<li>High Speed Message Format User should parse the data field further according to the format, if the frame is not a standard format.</li>
</ul>
</li>
<li>Fifo water mark level User should process the remaining data in the fifo, if the total amount of data received does not align with the fifo water mark level.</li>
</ul>
<dl class="section copyright"><dt>Copyright</dt><dd>Copyright (c) 2020 Semidrive Semiconductor. All rights reserved. </dd></dl>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="ab345e23892894c7229b14da8ad4ad507" name="ab345e23892894c7229b14da8ad4ad507"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab345e23892894c7229b14da8ad4ad507">&#9670;&nbsp;</a></span>SENT_HIGH_SPEED_DATA_NIBBLE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SENT_HIGH_SPEED_DATA_NIBBLE&#160;&#160;&#160;4U</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a334e4cb429740d1e2541a0d1b9bf16d7" name="a334e4cb429740d1e2541a0d1b9bf16d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a334e4cb429740d1e2541a0d1b9bf16d7">&#9670;&nbsp;</a></span>SENT_SECURE_SENSOR_DATA_NIBBLE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SENT_SECURE_SENSOR_DATA_NIBBLE&#160;&#160;&#160;6U</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="a2ee810f6046e7507366320e8be154df8" name="a2ee810f6046e7507366320e8be154df8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ee810f6046e7507366320e8be154df8">&#9670;&nbsp;</a></span>sdrv_frame_err_e</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="sdrv__sent_8h.html#a197137d0424de3ce784f81076ec66e48">sdrv_frame_err</a> <a class="el" href="sdrv__sent_8h.html#a2ee810f6046e7507366320e8be154df8">sdrv_frame_err_e</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent frame error code enum. </p>
</div>
</div>
<a id="aeb9d5d1ac481f7c9f227a50e126abf5d" name="aeb9d5d1ac481f7c9f227a50e126abf5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb9d5d1ac481f7c9f227a50e126abf5d">&#9670;&nbsp;</a></span>sdrv_sent_chan_config_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structsdrv__sent__chan__config.html">sdrv_sent_chan_config</a> <a class="el" href="sdrv__sent_8h.html#aeb9d5d1ac481f7c9f227a50e126abf5d">sdrv_sent_chan_config_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent channel config struct. </p>
</div>
</div>
<a id="a6f8fb42badd6ab234811f74e5dbdbfe0" name="a6f8fb42badd6ab234811f74e5dbdbfe0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6f8fb42badd6ab234811f74e5dbdbfe0">&#9670;&nbsp;</a></span>sdrv_sent_chan_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structsdrv__sent__chan.html">sdrv_sent_chan</a> <a class="el" href="sdrv__sent_8h.html#a6f8fb42badd6ab234811f74e5dbdbfe0">sdrv_sent_chan_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent channel struct. </p>
</div>
</div>
<a id="aa9aae0580ad5ec13854f409060788066" name="aa9aae0580ad5ec13854f409060788066"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9aae0580ad5ec13854f409060788066">&#9670;&nbsp;</a></span>sdrv_sent_chanid_e</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="sdrv__sent_8h.html#a8fe7a9432aa23bd1305a349b00a0a324">sdrv_sent_chanid</a> <a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0c3982bb560ed8e4ba6e1c57f643ad23" name="a0c3982bb560ed8e4ba6e1c57f643ad23"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c3982bb560ed8e4ba6e1c57f643ad23">&#9670;&nbsp;</a></span>sdrv_sent_config_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structsdrv__sent__config.html">sdrv_sent_config</a> <a class="el" href="sdrv__sent_8h.html#a0c3982bb560ed8e4ba6e1c57f643ad23">sdrv_sent_config_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent module config struct. </p>
</div>
</div>
<a id="a0302ed65ba1ac4244e943286a492452f" name="a0302ed65ba1ac4244e943286a492452f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0302ed65ba1ac4244e943286a492452f">&#9670;&nbsp;</a></span>sdrv_sent_frame_state_e</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="sdrv__sent_8h.html#adafb53bd7df7ae0eb7081c207cb105af">sent_frame_state</a> <a class="el" href="sdrv__sent_8h.html#a0302ed65ba1ac4244e943286a492452f">sdrv_sent_frame_state_e</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent frame status enum. </p>
</div>
</div>
<a id="a0df233d8b9dba45e760de1169e58fd70" name="a0df233d8b9dba45e760de1169e58fd70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0df233d8b9dba45e760de1169e58fd70">&#9670;&nbsp;</a></span>sdrv_sent_recv_cb_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void(* sdrv_sent_recv_cb_t) (<a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *ctrl, <a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a> sent_chan_id, void *userdata)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2bb5ae6b8980b6437377704ed8da6b09" name="a2bb5ae6b8980b6437377704ed8da6b09"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2bb5ae6b8980b6437377704ed8da6b09">&#9670;&nbsp;</a></span>sdrv_sent_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structsdrv__sent.html">sdrv_sent</a> <a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2eec0dea24912c00b6ae0c527fdd56e1" name="a2eec0dea24912c00b6ae0c527fdd56e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2eec0dea24912c00b6ae0c527fdd56e1">&#9670;&nbsp;</a></span>sent_chan_frame_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structsent__chan__frame.html">sent_chan_frame</a> <a class="el" href="sdrv__sent_8h.html#a2eec0dea24912c00b6ae0c527fdd56e1">sent_chan_frame_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a28a9849aeda16add5795597cded936a8" name="a28a9849aeda16add5795597cded936a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28a9849aeda16add5795597cded936a8">&#9670;&nbsp;</a></span>sent_chan_state_e</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="sdrv__sent_8h.html#a3f72a03caaf8759a32c7b6a5adce1df8">sent_chan_state</a> <a class="el" href="sdrv__sent_8h.html#a28a9849aeda16add5795597cded936a8">sent_chan_state_e</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent frame status enum. </p>
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="a197137d0424de3ce784f81076ec66e48" name="a197137d0424de3ce784f81076ec66e48"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a197137d0424de3ce784f81076ec66e48">&#9670;&nbsp;</a></span>sdrv_frame_err</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="sdrv__sent_8h.html#a197137d0424de3ce784f81076ec66e48">sdrv_frame_err</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent frame error code enum. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48a08d41016821b58bd81a9c0629f516889" name="a197137d0424de3ce784f81076ec66e48a08d41016821b58bd81a9c0629f516889"></a>SENT_OK&#160;</td><td class="fielddoc"><p >Frame no error. </p>
</td></tr>
<tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48ac062eb5aed7a46b047cae5eb3c9bee99" name="a197137d0424de3ce784f81076ec66e48ac062eb5aed7a46b047cae5eb3c9bee99"></a>SENT_SYNC_ERR&#160;</td><td class="fielddoc"><p >Sync/Calibration pulse is not 56 ticks. </p>
</td></tr>
<tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48a9a45f30c6e78c00eecee2ec67ad3c747" name="a197137d0424de3ce784f81076ec66e48a9a45f30c6e78c00eecee2ec67ad3c747"></a>SENT_STATUS_ERR&#160;</td><td class="fielddoc"><p >Status signal error. </p>
</td></tr>
<tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48ad13816250f55dc711f3d4c6fa27127c9" name="a197137d0424de3ce784f81076ec66e48ad13816250f55dc711f3d4c6fa27127c9"></a>SENT_DATA_ERR&#160;</td><td class="fielddoc"><p >Nibble data is bigger than 15. </p>
</td></tr>
<tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48ac6bc8db21a5e1315dc483812cbd5dae6" name="a197137d0424de3ce784f81076ec66e48ac6bc8db21a5e1315dc483812cbd5dae6"></a>SENT_CRC_ERR&#160;</td><td class="fielddoc"><p >Nibble data crc is mismatched. </p>
</td></tr>
<tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48a3fda00d29b6b4c506cd1739c30f81e19" name="a197137d0424de3ce784f81076ec66e48a3fda00d29b6b4c506cd1739c30f81e19"></a>SENT_LOW_PULSE_ERR&#160;</td><td class="fielddoc"><p >Nibble low pulse width error. </p>
</td></tr>
<tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48a832a1658a906f9da09212832dd1fe22f" name="a197137d0424de3ce784f81076ec66e48a832a1658a906f9da09212832dd1fe22f"></a>SENT_MSB_NOT_ZERO&#160;</td><td class="fielddoc"><p >SENT_HIGH_SPEED_FORMAT Only. </p>
</td></tr>
<tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48a836c4d586781585a9349b9267dd0ef79" name="a197137d0424de3ce784f81076ec66e48a836c4d586781585a9349b9267dd0ef79"></a>SENT_INV_MSN_ERR&#160;</td><td class="fielddoc"><p >SENT_SINGLE_SECURE_FORMAT Only. </p>
</td></tr>
<tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48aa9a0f12f54c9f7c5af747e5c1cad28ef" name="a197137d0424de3ce784f81076ec66e48aa9a0f12f54c9f7c5af747e5c1cad28ef"></a>SENT_CONUNTER_VAL_ERR&#160;</td><td class="fielddoc"><p >SENT_SINGLE_SECURE_FORMAT Only. </p>
</td></tr>
<tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48a0e89d9725070d15c0d1a343a7615ac29" name="a197137d0424de3ce784f81076ec66e48a0e89d9725070d15c0d1a343a7615ac29"></a>SENT_TICK_FREQ_ERR&#160;</td><td class="fielddoc"><p >SENT_SINGLE_SECURE_FORMAT Only. </p>
</td></tr>
<tr><td class="fieldname"><a id="a197137d0424de3ce784f81076ec66e48a2355714c902613b784fddd66e6b9f0e3" name="a197137d0424de3ce784f81076ec66e48a2355714c902613b784fddd66e6b9f0e3"></a>SENT_NOT_OK&#160;</td><td class="fielddoc"><p >SENT_SINGLE_SECURE_FORMAT Only. </p>
</td></tr>
</table>
</div>
</div>
<a id="a0fecd74515191f0e7f36bf23470c2d07" name="a0fecd74515191f0e7f36bf23470c2d07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fecd74515191f0e7f36bf23470c2d07">&#9670;&nbsp;</a></span>sdrv_sent_bitnum_e</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="sdrv__sent_8h.html#a0fecd74515191f0e7f36bf23470c2d07">sdrv_sent_bitnum_e</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent data width enum. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a0fecd74515191f0e7f36bf23470c2d07a58583a909adc5747a924465d7fa6cefa" name="a0fecd74515191f0e7f36bf23470c2d07a58583a909adc5747a924465d7fa6cefa"></a>SENT_DATA_WIDTH_4_BIT&#160;</td><td class="fielddoc"><p >Sent frame data width is 4bits. </p>
</td></tr>
<tr><td class="fieldname"><a id="a0fecd74515191f0e7f36bf23470c2d07a44fb3c40c374c8dada978dd6216ec360" name="a0fecd74515191f0e7f36bf23470c2d07a44fb3c40c374c8dada978dd6216ec360"></a>SENT_DATA_WIDTH_8_BIT&#160;</td><td class="fielddoc"><p >Sent frame data width is 8bits. </p>
</td></tr>
<tr><td class="fieldname"><a id="a0fecd74515191f0e7f36bf23470c2d07a7d05f6c86e548a4f2b2bf640db056ded" name="a0fecd74515191f0e7f36bf23470c2d07a7d05f6c86e548a4f2b2bf640db056ded"></a>SENT_DATA_WIDTH_12_BIT&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a0fecd74515191f0e7f36bf23470c2d07a51efd9bfdf4a0c9990a54946418a43c6" name="a0fecd74515191f0e7f36bf23470c2d07a51efd9bfdf4a0c9990a54946418a43c6"></a>SENT_DATA_WIDTH_16_BIT&#160;</td><td class="fielddoc"><p >Sent frame data width is 16bits. </p>
</td></tr>
<tr><td class="fieldname"><a id="a0fecd74515191f0e7f36bf23470c2d07ac046092291105acc1314993d7684f697" name="a0fecd74515191f0e7f36bf23470c2d07ac046092291105acc1314993d7684f697"></a>SENT_DATA_WIDTH_20_BIT&#160;</td><td class="fielddoc"><p >Sent frame data width is 20bits. </p>
</td></tr>
<tr><td class="fieldname"><a id="a0fecd74515191f0e7f36bf23470c2d07ad7f447c234948e79e75fbc9ed86347af" name="a0fecd74515191f0e7f36bf23470c2d07ad7f447c234948e79e75fbc9ed86347af"></a>SENT_DATA_WIDTH_24_BIT&#160;</td><td class="fielddoc"><p >Sent frame data width is 24bits. </p>
</td></tr>
</table>
</div>
</div>
<a id="a8fe7a9432aa23bd1305a349b00a0a324" name="a8fe7a9432aa23bd1305a349b00a0a324"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8fe7a9432aa23bd1305a349b00a0a324">&#9670;&nbsp;</a></span>sdrv_sent_chanid</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="sdrv__sent_8h.html#a8fe7a9432aa23bd1305a349b00a0a324">sdrv_sent_chanid</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent channel id enum. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a8fe7a9432aa23bd1305a349b00a0a324a8f5b3887436852c9644641d165c550e8" name="a8fe7a9432aa23bd1305a349b00a0a324a8f5b3887436852c9644641d165c550e8"></a>SDRV_SENT_HW_CPT_A&#160;</td><td class="fielddoc"><p >Sdrv sent hardware channel A. </p>
</td></tr>
<tr><td class="fieldname"><a id="a8fe7a9432aa23bd1305a349b00a0a324a8db36f9074ecec5143e9f632c965cb80" name="a8fe7a9432aa23bd1305a349b00a0a324a8db36f9074ecec5143e9f632c965cb80"></a>SDRV_SENT_HW_CPT_B&#160;</td><td class="fielddoc"><p >Sdrv sent hardware channel B. </p>
</td></tr>
<tr><td class="fieldname"><a id="a8fe7a9432aa23bd1305a349b00a0a324ad1a2895e3c5d0b5153c484d7ff9f330a" name="a8fe7a9432aa23bd1305a349b00a0a324ad1a2895e3c5d0b5153c484d7ff9f330a"></a>SDRV_SENT_HW_CPT_C&#160;</td><td class="fielddoc"><p >Sdrv sent hardware channel C. </p>
</td></tr>
<tr><td class="fieldname"><a id="a8fe7a9432aa23bd1305a349b00a0a324ab7235e3124e01c3f92a97387d1f301c1" name="a8fe7a9432aa23bd1305a349b00a0a324ab7235e3124e01c3f92a97387d1f301c1"></a>SDRV_SENT_HW_CPT_D&#160;</td><td class="fielddoc"><p >Sdrv sent hardware channel D. </p>
</td></tr>
<tr><td class="fieldname"><a id="a8fe7a9432aa23bd1305a349b00a0a324a9e27231d5f897b2770417f181f6a8a31" name="a8fe7a9432aa23bd1305a349b00a0a324a9e27231d5f897b2770417f181f6a8a31"></a>SDRV_SENT_CHAN_NUM&#160;</td><td class="fielddoc"><p >Sdrv sent hardware channel number. </p>
</td></tr>
</table>
</div>
</div>
<a id="afed2a1a7daa79e666aac983e6270c219" name="afed2a1a7daa79e666aac983e6270c219"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afed2a1a7daa79e666aac983e6270c219">&#9670;&nbsp;</a></span>sdrv_sent_clk_src_e</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="sdrv__sent_8h.html#afed2a1a7daa79e666aac983e6270c219">sdrv_sent_clk_src_e</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>sdrv sent clock source enum. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="afed2a1a7daa79e666aac983e6270c219a3cc9933d2ff017583a8dbd590cd787c8" name="afed2a1a7daa79e666aac983e6270c219a3cc9933d2ff017583a8dbd590cd787c8"></a>SDRV_SENT_HF_CLK&#160;</td><td class="fielddoc"><p >High frequency(HF) clock, up to 400MHz. </p>
</td></tr>
<tr><td class="fieldname"><a id="afed2a1a7daa79e666aac983e6270c219a39ecd8d53a5a36caab03a4413bef2883" name="afed2a1a7daa79e666aac983e6270c219a39ecd8d53a5a36caab03a4413bef2883"></a>SDRV_SENT_AHF_CLK&#160;</td><td class="fielddoc"><p >Alternative High frequency(AHF) clock, up to 400MHz. </p>
</td></tr>
<tr><td class="fieldname"><a id="afed2a1a7daa79e666aac983e6270c219a82dbb4b284aa91873d37a90545d6e804" name="afed2a1a7daa79e666aac983e6270c219a82dbb4b284aa91873d37a90545d6e804"></a>SDRV_SENT_EXT_CLK&#160;</td><td class="fielddoc"><p >External clock, up to 24MHz. </p>
</td></tr>
<tr><td class="fieldname"><a id="afed2a1a7daa79e666aac983e6270c219a367cab8075114a69ffad53929de5f692" name="afed2a1a7daa79e666aac983e6270c219a367cab8075114a69ffad53929de5f692"></a>SDRV_SENT_LP_CLK&#160;</td><td class="fielddoc"><p >Low power(LP) clock, typically from low speed om chip RCOSC. </p>
</td></tr>
</table>
</div>
</div>
<a id="adc0f1c2b09535830b2a09097f9e9a0fb" name="adc0f1c2b09535830b2a09097f9e9a0fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adc0f1c2b09535830b2a09097f9e9a0fb">&#9670;&nbsp;</a></span>sdrv_sent_fastchan_e</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="sdrv__sent_8h.html#adc0f1c2b09535830b2a09097f9e9a0fb">sdrv_sent_fastchan_e</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent channel transmit format enum. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="adc0f1c2b09535830b2a09097f9e9a0fba3a07950d242f0ded534db1faaf8996c7" name="adc0f1c2b09535830b2a09097f9e9a0fba3a07950d242f0ded534db1faaf8996c7"></a>SENT_STANDARD_FORMAT&#160;</td><td class="fielddoc"><p >Sent use standard format. </p>
</td></tr>
<tr><td class="fieldname"><a id="adc0f1c2b09535830b2a09097f9e9a0fbaa2592fe83845295c6c5e17453d8e5597" name="adc0f1c2b09535830b2a09097f9e9a0fbaa2592fe83845295c6c5e17453d8e5597"></a>SENT_SINGLE_SECURE_FORMAT&#160;</td><td class="fielddoc"><p >Sent use single secure sensor message format. </p>
</td></tr>
<tr><td class="fieldname"><a id="adc0f1c2b09535830b2a09097f9e9a0fba32ac1d54ab6eee3f85128e329a11fefe" name="adc0f1c2b09535830b2a09097f9e9a0fba32ac1d54ab6eee3f85128e329a11fefe"></a>SENT_HIGH_SPEED_FORMAT&#160;</td><td class="fielddoc"><p >Sent use high speed message format. </p>
</td></tr>
</table>
</div>
</div>
<a id="a48549b06ba31d494c3010e7b60a9e210" name="a48549b06ba31d494c3010e7b60a9e210"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a48549b06ba31d494c3010e7b60a9e210">&#9670;&nbsp;</a></span>sdrv_sent_sta_e</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="sdrv__sent_8h.html#a48549b06ba31d494c3010e7b60a9e210">sdrv_sent_sta_e</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent status enum. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a48549b06ba31d494c3010e7b60a9e210ad66065a0d764fb1aae748b690f8bf5ed" name="a48549b06ba31d494c3010e7b60a9e210ad66065a0d764fb1aae748b690f8bf5ed"></a>SENT_STATUS_UNINIT&#160;</td><td class="fielddoc"><p >Sdrv sent module is uninitialized. </p>
</td></tr>
<tr><td class="fieldname"><a id="a48549b06ba31d494c3010e7b60a9e210a2e846549fe523f0a83ebd9abc49a17d1" name="a48549b06ba31d494c3010e7b60a9e210a2e846549fe523f0a83ebd9abc49a17d1"></a>SENT_STATUS_INITED&#160;</td><td class="fielddoc"><p >Sdrv sent module is initialized. </p>
</td></tr>
</table>
</div>
</div>
<a id="a3f72a03caaf8759a32c7b6a5adce1df8" name="a3f72a03caaf8759a32c7b6a5adce1df8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f72a03caaf8759a32c7b6a5adce1df8">&#9670;&nbsp;</a></span>sent_chan_state</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="sdrv__sent_8h.html#a3f72a03caaf8759a32c7b6a5adce1df8">sent_chan_state</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent frame status enum. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a3f72a03caaf8759a32c7b6a5adce1df8a94f0eca2da97f6d171100621b4f73cb6" name="a3f72a03caaf8759a32c7b6a5adce1df8a94f0eca2da97f6d171100621b4f73cb6"></a>CHAN_STATUS_UNINIT&#160;</td><td class="fielddoc"><p >Sdrv sent channel is uninitialized. </p>
</td></tr>
<tr><td class="fieldname"><a id="a3f72a03caaf8759a32c7b6a5adce1df8a96b77d895aeeef31068baa0c8d5c3a86" name="a3f72a03caaf8759a32c7b6a5adce1df8a96b77d895aeeef31068baa0c8d5c3a86"></a>CHAN_STATUS_INITED&#160;</td><td class="fielddoc"><p >Sdrv sent channel is initialized. </p>
</td></tr>
<tr><td class="fieldname"><a id="a3f72a03caaf8759a32c7b6a5adce1df8a5d2357f4564bdce7b47c57d0d4ef8bb1" name="a3f72a03caaf8759a32c7b6a5adce1df8a5d2357f4564bdce7b47c57d0d4ef8bb1"></a>CHAN_STATUS_RUNNING&#160;</td><td class="fielddoc"><p >Sdrv sent channel is running. </p>
</td></tr>
<tr><td class="fieldname"><a id="a3f72a03caaf8759a32c7b6a5adce1df8a17c0f530a21ef227c71dd73c98c1536c" name="a3f72a03caaf8759a32c7b6a5adce1df8a17c0f530a21ef227c71dd73c98c1536c"></a>CHAN_STATUS_STOPPED&#160;</td><td class="fielddoc"><p >Sdrv sent channel is stopped. </p>
</td></tr>
</table>
</div>
</div>
<a id="adafb53bd7df7ae0eb7081c207cb105af" name="adafb53bd7df7ae0eb7081c207cb105af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adafb53bd7df7ae0eb7081c207cb105af">&#9670;&nbsp;</a></span>sent_frame_state</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="sdrv__sent_8h.html#adafb53bd7df7ae0eb7081c207cb105af">sent_frame_state</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent frame status enum. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="adafb53bd7df7ae0eb7081c207cb105afa422917f0f55afd814fef1d0d88260e1b" name="adafb53bd7df7ae0eb7081c207cb105afa422917f0f55afd814fef1d0d88260e1b"></a>SENT_IDLE&#160;</td><td class="fielddoc"><p >The sent is idle, waiting to receive the sync pulse. </p>
</td></tr>
<tr><td class="fieldname"><a id="adafb53bd7df7ae0eb7081c207cb105afa8efbbee70ca16cdad08521c31fcd7f0b" name="adafb53bd7df7ae0eb7081c207cb105afa8efbbee70ca16cdad08521c31fcd7f0b"></a>SENT_SYNC&#160;</td><td class="fielddoc"><p >The frame successfully receives the sync pulse and waits to receive the status pulse. </p>
</td></tr>
<tr><td class="fieldname"><a id="adafb53bd7df7ae0eb7081c207cb105afad51bfcef3773a1dfcc7191586f783359" name="adafb53bd7df7ae0eb7081c207cb105afad51bfcef3773a1dfcc7191586f783359"></a>SENT_STATUS&#160;</td><td class="fielddoc"><p >The frame successfully receives the status pulse and waits to receive the data pulse. </p>
</td></tr>
<tr><td class="fieldname"><a id="adafb53bd7df7ae0eb7081c207cb105afa09e02669d9cf94f34ad76932cf483476" name="adafb53bd7df7ae0eb7081c207cb105afa09e02669d9cf94f34ad76932cf483476"></a>SENT_DATA&#160;</td><td class="fielddoc"><p >The frame is receiving the data pulse. </p>
</td></tr>
<tr><td class="fieldname"><a id="adafb53bd7df7ae0eb7081c207cb105afa7de84fe00344200d8b6060b141856830" name="adafb53bd7df7ae0eb7081c207cb105afa7de84fe00344200d8b6060b141856830"></a>SENT_CRC&#160;</td><td class="fielddoc"><p >The frame successfully receives all data pulse and waits to receive the crc pulse. </p>
</td></tr>
<tr><td class="fieldname"><a id="adafb53bd7df7ae0eb7081c207cb105afa7fda8d7721cca36b2d8b613f5d99ff82" name="adafb53bd7df7ae0eb7081c207cb105afa7fda8d7721cca36b2d8b613f5d99ff82"></a>SENT_PAUSE&#160;</td><td class="fielddoc"><p >The frame successfully receives the crc pulse and waits to receive the pause pulse. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="afb0e3a61ebf90864699633f87079e9cf" name="afb0e3a61ebf90864699633f87079e9cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb0e3a61ebf90864699633f87079e9cf">&#9670;&nbsp;</a></span>sdrv_sent_deinit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> sdrv_sent_deinit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *&#160;</td>
<td class="paramname"><em>ctrl</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent controller deinitialization. </p>
<p >This fuction deinitializes sent module.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">ctrl</td><td>Sdrv sent controller. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The result of deinitializing sent.<ul>
<li>SDRV_STATUS_INVALID_PARAM : The input parameter contains a null pointer.</li>
<li>SDRV_STATUS_OK : Sent is deinitialized success. </li>
</ul>
</dd></dl>
</div>
</div>
<a id="a41db4d03a2b9943e641b97bd6a35e941" name="a41db4d03a2b9943e641b97bd6a35e941"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41db4d03a2b9943e641b97bd6a35e941">&#9670;&nbsp;</a></span>sdrv_sent_get_frame()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> sdrv_sent_get_frame </td>
<td>(</td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *&#160;</td>
<td class="paramname"><em>ctrl</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a>&#160;</td>
<td class="paramname"><em>sent_chan_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t *&#160;</td>
<td class="paramname"><em>frame_err</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#a2eec0dea24912c00b6ae0c527fdd56e1">sent_chan_frame_t</a> *&#160;</td>
<td class="paramname"><em>frame</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get sent frame info. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">ctrl</td><td>Sent controller </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">sent_chan_id</td><td>Sent channel id </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">frame_err</td><td>Frame error code </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">frame</td><td>Frame information </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The result of initializing sent.<ul>
<li>SDRV_STATUS_INVALID_PARAM : The input parameter contains a null pointer.</li>
<li>SDRV_STATUS_FAIL : The state of channel is error or the frame is invalid.</li>
<li>SDRV_STATUS_OK : Get sent frame success. </li>
</ul>
</dd></dl>
</div>
</div>
<a id="a393a3fbc3bb406526c5cc98e1a07406a" name="a393a3fbc3bb406526c5cc98e1a07406a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a393a3fbc3bb406526c5cc98e1a07406a">&#9670;&nbsp;</a></span>sdrv_sent_init()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> sdrv_sent_init </td>
<td>(</td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *&#160;</td>
<td class="paramname"><em>ctrl</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#a0c3982bb560ed8e4ba6e1c57f643ad23">sdrv_sent_config_t</a> *&#160;</td>
<td class="paramname"><em>cfg</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent controller initialization. </p>
<p >This fuction initializes sent(etimer) module and channel and controller entity status.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">ctrl</td><td>Sdrv sent controller. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">cfg</td><td>Sdrv sent configurations. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The result of initializing sent.<ul>
<li>SDRV_STATUS_INVALID_PARAM : The input parameter contains a null pointer.</li>
<li>SDRV_STATUS_OK : Sent is initialized success. </li>
</ul>
</dd></dl>
</div>
</div>
<a id="a5b745c534d7b3552a2e4633121e14bfe" name="a5b745c534d7b3552a2e4633121e14bfe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b745c534d7b3552a2e4633121e14bfe">&#9670;&nbsp;</a></span>sdrv_sent_irq_handle()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int sdrv_sent_irq_handle </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>irq</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>ctrl</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sdrv sent interrupt handler. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">irq</td><td>The irq number of uartx </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">ctrl</td><td>Sdrv sent controller </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a9fc73ebfa2fd7f61d25cfbc8fe8f0d97" name="a9fc73ebfa2fd7f61d25cfbc8fe8f0d97"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9fc73ebfa2fd7f61d25cfbc8fe8f0d97">&#9670;&nbsp;</a></span>sdrv_sent_parse_msg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> sdrv_sent_parse_msg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *&#160;</td>
<td class="paramname"><em>ctrl</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a>&#160;</td>
<td class="paramname"><em>sent_chan_id</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Parse sent frame. </p>
<p >This function is used in the following two situations: 1.Enter sent interrupt, 2.The user actively calls function to parse the remaining data in fifo after stopping channal.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">ctrl</td><td>Sent controller </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">sent_chan_id</td><td>Sent channel id </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The result of initializing sent.<ul>
<li>SDRV_STATUS_INVALID_PARAM : The input parameter contains a null pointer.</li>
<li>SDRV_STATUS_OK : Parse sent frame success. </li>
</ul>
</dd></dl>
</div>
</div>
<a id="ac5b42bf67ffa84f6ce9b3535e1bd8d87" name="ac5b42bf67ffa84f6ce9b3535e1bd8d87"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5b42bf67ffa84f6ce9b3535e1bd8d87">&#9670;&nbsp;</a></span>sdrv_sent_recv_start()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> sdrv_sent_recv_start </td>
<td>(</td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *&#160;</td>
<td class="paramname"><em>ctrl</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a>&#160;</td>
<td class="paramname"><em>sent_chan_id</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sent starts to receive frames. </p>
<p >Sent channel will receive frames after calling this function. User could stop the sent channel by calling <a class="el" href="sdrv__sent_8h.html#a7c2dd37ea2aef1478d62fdf84a93d8f5" title="Sent stop recv frame.">sdrv_sent_recv_stop()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">ctrl</td><td>Sent controller </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">sent_chan_id</td><td>Sent channel id </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The result of initializing sent.<ul>
<li>SDRV_STATUS_INVALID_PARAM : The input parameter contains a null pointer.</li>
<li>SDRV_STATUS_OK : Start sent channel success. </li>
</ul>
</dd></dl>
</div>
</div>
<a id="a7c2dd37ea2aef1478d62fdf84a93d8f5" name="a7c2dd37ea2aef1478d62fdf84a93d8f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c2dd37ea2aef1478d62fdf84a93d8f5">&#9670;&nbsp;</a></span>sdrv_sent_recv_stop()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> sdrv_sent_recv_stop </td>
<td>(</td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *&#160;</td>
<td class="paramname"><em>ctrl</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a>&#160;</td>
<td class="paramname"><em>sent_chan_id</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sent stop recv frame. </p>
<p >Sent channel will receive frames after calling <a class="el" href="sdrv__sent_8h.html#ac5b42bf67ffa84f6ce9b3535e1bd8d87" title="Sent starts to receive frames.">sdrv_sent_recv_start()</a>. User could stop the sent channel by calling this function.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">ctrl</td><td>Sent controller </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">sent_chan_id</td><td>Sent channel id </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The result of initializing sent.<ul>
<li>SDRV_STATUS_INVALID_PARAM : The input parameter contains a null pointer.</li>
<li>SDRV_STATUS_OK : Stop sent channel success. </li>
</ul>
</dd></dl>
</div>
</div>
<a id="af20ad1bd374f868e6ce61059cccde7b1" name="af20ad1bd374f868e6ce61059cccde7b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af20ad1bd374f868e6ce61059cccde7b1">&#9670;&nbsp;</a></span>sdrv_sent_set_callback()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="sdrv__common_8h.html#aaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> sdrv_sent_set_callback </td>
<td>(</td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#a2bb5ae6b8980b6437377704ed8da6b09">sdrv_sent_t</a> *&#160;</td>
<td class="paramname"><em>ctrl</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#aa9aae0580ad5ec13854f409060788066">sdrv_sent_chanid_e</a>&#160;</td>
<td class="paramname"><em>sdrv_sent_chanid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="sdrv__sent_8h.html#a0df233d8b9dba45e760de1169e58fd70">sdrv_sent_recv_cb_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>Sent set callback function. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">ctrl</td><td>Sdrv sent controller. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">sent_chan_id</td><td>Sent channel id </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">callback</td><td>Callback function </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">userdata</td><td>Callback user param </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The result of initializing sent.<ul>
<li>SDRV_STATUS_INVALID_PARAM : The input parameter contains a null pointer.</li>
<li>SDRV_STATUS_OK : Set callback function success. </li>
</ul>
</dd></dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
</body>
</html>