MCUXpresso_LPC55S16/docs/MCUXpresso SDK API Reference Manual_LPC55S16/a00041.html
2022-07-14 21:09:47 +08:00

1246 lines
74 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>MCUXpresso SDK API Reference Manual: SGTL5000 Driver</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="fs_logo.gif"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">MCUXpresso SDK API Reference Manual
&#160;<span id="projectnumber">Rev 2.11.0</span>
</div>
<div id="projectbrief">NXP Semiconductors</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>API&#160;Reference</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('a00041.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="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">SGTL5000 Driver<div class="ingroups"><a class="el" href="a00204.html">CODEC Driver</a></div></div> </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Overview</h2>
<p>The sgtl5000 driver provides a codec control interface. </p>
<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:a00303"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a00303">sgtl_audio_format_t</a></td></tr>
<tr class="memdesc:a00303"><td class="mdescLeft">&#160;</td><td class="mdescRight">Audio format configuration. <a href="a00041.html#a00303">More...</a><br/></td></tr>
<tr class="separator:a00303"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00304"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a00304">sgtl_config_t</a></td></tr>
<tr class="memdesc:a00304"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initailize structure of sgtl5000. <a href="a00041.html#a00304">More...</a><br/></td></tr>
<tr class="separator:a00304"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00305"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a></td></tr>
<tr class="memdesc:a00305"><td class="mdescLeft">&#160;</td><td class="mdescRight">SGTL codec handler. <a href="a00041.html#a00305">More...</a><br/></td></tr>
<tr class="separator:a00305"><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:gab0aa3e54cd2934b67b9882957456c391"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#gab0aa3e54cd2934b67b9882957456c391">CHIP_ID</a>&#160;&#160;&#160;0x0000U</td></tr>
<tr class="memdesc:gab0aa3e54cd2934b67b9882957456c391"><td class="mdescLeft">&#160;</td><td class="mdescRight">Define the register address of sgtl5000. <a href="#gab0aa3e54cd2934b67b9882957456c391">More...</a><br/></td></tr>
<tr class="separator:gab0aa3e54cd2934b67b9882957456c391"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5b4c16e15a52d1a940e4d47bf3574752"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5b4c16e15a52d1a940e4d47bf3574752"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga5b4c16e15a52d1a940e4d47bf3574752">SGTL5000_HEADPHONE_MAX_VOLUME_VALUE</a>&#160;&#160;&#160;0x7FU</td></tr>
<tr class="memdesc:ga5b4c16e15a52d1a940e4d47bf3574752"><td class="mdescLeft">&#160;</td><td class="mdescRight">SGTL5000 volume setting range. <br/></td></tr>
<tr class="separator:ga5b4c16e15a52d1a940e4d47bf3574752"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga58ceb20f920b2b006c74eeeae992830a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga58ceb20f920b2b006c74eeeae992830a">SGTL5000_I2C_ADDR</a>&#160;&#160;&#160;0x0A</td></tr>
<tr class="memdesc:ga58ceb20f920b2b006c74eeeae992830a"><td class="mdescLeft">&#160;</td><td class="mdescRight">SGTL5000 I2C address. <a href="#ga58ceb20f920b2b006c74eeeae992830a">More...</a><br/></td></tr>
<tr class="separator:ga58ceb20f920b2b006c74eeeae992830a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5a006451f9e990a4d3255ed7265ff1ad"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5a006451f9e990a4d3255ed7265ff1ad"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga5a006451f9e990a4d3255ed7265ff1ad">SGTL_I2C_HANDLER_SIZE</a>&#160;&#160;&#160;<a class="el" href="a00011.html#ga708be0fda3516367fe0461a5f054118c">CODEC_I2C_MASTER_HANDLER_SIZE</a></td></tr>
<tr class="memdesc:ga5a006451f9e990a4d3255ed7265ff1ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">sgtl handle size <br/></td></tr>
<tr class="separator:ga5a006451f9e990a4d3255ed7265ff1ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7bf82c8b0e6415457b6f42f50af4230d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7bf82c8b0e6415457b6f42f50af4230d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga7bf82c8b0e6415457b6f42f50af4230d">SGTL_I2C_BITRATE</a>&#160;&#160;&#160;100000U</td></tr>
<tr class="memdesc:ga7bf82c8b0e6415457b6f42f50af4230d"><td class="mdescLeft">&#160;</td><td class="mdescRight">sgtl i2c baudrate <br/></td></tr>
<tr class="separator:ga7bf82c8b0e6415457b6f42f50af4230d"><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:gaf78d5250d200a4cc76a60dcff249a4d3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a> { <br/>
&#160;&#160;<a class="el" href="a00041.html#ggaf78d5250d200a4cc76a60dcff249a4d3aeff780e31f47de5bd4ae4f7c2247a943">kSGTL_ModuleADC</a> = 0x0,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggaf78d5250d200a4cc76a60dcff249a4d3ac97955a1a57467c8a7a93629468c0ae5">kSGTL_ModuleDAC</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggaf78d5250d200a4cc76a60dcff249a4d3a6db304a2a1838b8733167b535efd1cc6">kSGTL_ModuleDAP</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggaf78d5250d200a4cc76a60dcff249a4d3a7c3ca8ea568a0109f5858469734f1f22">kSGTL_ModuleHP</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggaf78d5250d200a4cc76a60dcff249a4d3a5eec6607385362c2f1f67574f98bab7f">kSGTL_ModuleI2SIN</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggaf78d5250d200a4cc76a60dcff249a4d3ad549fbd25f776da2e48029e7defb136d">kSGTL_ModuleI2SOUT</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggaf78d5250d200a4cc76a60dcff249a4d3a3cf24e3ca184744b13ce10adb648afcd">kSGTL_ModuleLineIn</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggaf78d5250d200a4cc76a60dcff249a4d3a04e0f93df81aacf8114308d95703248f">kSGTL_ModuleLineOut</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggaf78d5250d200a4cc76a60dcff249a4d3a4d7e27445f7842c7d420a3621ac73e72">kSGTL_ModuleMicin</a>
<br/>
}</td></tr>
<tr class="memdesc:gaf78d5250d200a4cc76a60dcff249a4d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modules in Sgtl5000 board. <a href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">More...</a><br/></td></tr>
<tr class="separator:gaf78d5250d200a4cc76a60dcff249a4d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga78ef5545b50946b6d168203283c20820"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga78ef5545b50946b6d168203283c20820">sgtl_route_t</a> { <br/>
&#160;&#160;<a class="el" href="a00041.html#gga78ef5545b50946b6d168203283c20820a1ea39c5bbafcc616613e8755b70573e9">kSGTL_RouteBypass</a> = 0x0,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga78ef5545b50946b6d168203283c20820ad379b8e67ddbbb27bc44c6d6f3cf7c0e">kSGTL_RoutePlayback</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga78ef5545b50946b6d168203283c20820ae11f7c67b7d1ab7e4dce3d927be7da00">kSGTL_RoutePlaybackandRecord</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga78ef5545b50946b6d168203283c20820ae79c7286d52a67b618e4e23a1f1306b6">kSGTL_RoutePlaybackwithDAP</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga78ef5545b50946b6d168203283c20820a53052344996dc1f90cf6457e2b81eb18">kSGTL_RoutePlaybackwithDAPandRecord</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga78ef5545b50946b6d168203283c20820a0c28a072be0500106b9b32a16f05f000">kSGTL_RouteRecord</a>
<br/>
}</td></tr>
<tr class="memdesc:ga78ef5545b50946b6d168203283c20820"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sgtl5000 data route. <a href="a00041.html#ga78ef5545b50946b6d168203283c20820">More...</a><br/></td></tr>
<tr class="separator:ga78ef5545b50946b6d168203283c20820"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9bd346f7776a687fe345e336127e5426"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga9bd346f7776a687fe345e336127e5426">sgtl_protocol_t</a> { <br/>
&#160;&#160;<a class="el" href="a00041.html#gga9bd346f7776a687fe345e336127e5426ab56aded98ae08bb3dd4c431e036eb9b7">kSGTL_BusI2S</a> = 0x0,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga9bd346f7776a687fe345e336127e5426a99d80a1bbb2ca42f8d8b9ded7d0fe156">kSGTL_BusLeftJustified</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga9bd346f7776a687fe345e336127e5426a742196d31e1ede4eb6d0b1bd6afcdc50">kSGTL_BusRightJustified</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga9bd346f7776a687fe345e336127e5426aae65c2ae38164483661ce81683e2cf6d">kSGTL_BusPCMA</a>,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga9bd346f7776a687fe345e336127e5426a165348d47026247f859a40813f449cfd">kSGTL_BusPCMB</a>
<br/>
}</td></tr>
<tr class="memdesc:ga9bd346f7776a687fe345e336127e5426"><td class="mdescLeft">&#160;</td><td class="mdescRight">The audio data transfer protocol choice. <a href="a00041.html#ga9bd346f7776a687fe345e336127e5426">More...</a><br/></td></tr>
<tr class="separator:ga9bd346f7776a687fe345e336127e5426"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac205be2172292384dd687b5471a87edd"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br/>
&#160;&#160;<a class="el" href="a00041.html#ggac205be2172292384dd687b5471a87edda4438d9d23b966a384697ac3959ec180c">kSGTL_HeadphoneLeft</a> = 0,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggac205be2172292384dd687b5471a87edda7c3a64195b071d4d17957f2de39a45a7">kSGTL_HeadphoneRight</a> = 1,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggac205be2172292384dd687b5471a87eddaea79ecce1f81bf12000fcf64671502ea">kSGTL_LineoutLeft</a> = 2,
<br/>
&#160;&#160;<a class="el" href="a00041.html#ggac205be2172292384dd687b5471a87eddabe25d4199f174f03f271a2ac335904bb">kSGTL_LineoutRight</a> = 3
<br/>
}</td></tr>
<tr class="memdesc:gac205be2172292384dd687b5471a87edd"><td class="mdescLeft">&#160;</td><td class="mdescRight">sgtl play channel <a href="a00041.html#gac205be2172292384dd687b5471a87edd">More...</a><br/></td></tr>
<tr class="separator:gac205be2172292384dd687b5471a87edd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga157d5577a5b2f5986037d0d09c7dc77d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br/>
&#160;&#160;<a class="el" href="a00041.html#gga157d5577a5b2f5986037d0d09c7dc77da358889525fbd4a6d5998c17a2382ac16">kSGTL_RecordSourceLineIn</a> = 0U,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga157d5577a5b2f5986037d0d09c7dc77da3c1289899ca6bdbe2ee24346890a19e2">kSGTL_RecordSourceMic</a> = 1U
<br/>
}</td></tr>
<tr class="memdesc:ga157d5577a5b2f5986037d0d09c7dc77d"><td class="mdescLeft">&#160;</td><td class="mdescRight">sgtl record source _sgtl_record_source <a href="a00041.html#ga157d5577a5b2f5986037d0d09c7dc77d">More...</a><br/></td></tr>
<tr class="separator:ga157d5577a5b2f5986037d0d09c7dc77d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1fb9092bcdeada2d206bdc74afbbe122"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br/>
&#160;&#160;<a class="el" href="a00041.html#gga1fb9092bcdeada2d206bdc74afbbe122ad99308b50ee139be94b584a66d999caf">kSGTL_PlaySourceLineIn</a> = 0U,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga1fb9092bcdeada2d206bdc74afbbe122a9c7fa540632ee8e4c733fb4ccebc8601">kSGTL_PlaySourceDAC</a> = 1U
<br/>
}</td></tr>
<tr class="memdesc:ga1fb9092bcdeada2d206bdc74afbbe122"><td class="mdescLeft">&#160;</td><td class="mdescRight">sgtl play source _stgl_play_source <a href="a00041.html#ga1fb9092bcdeada2d206bdc74afbbe122">More...</a><br/></td></tr>
<tr class="separator:ga1fb9092bcdeada2d206bdc74afbbe122"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1d2c82787cda907a0ac8646e11171db8"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga1d2c82787cda907a0ac8646e11171db8">sgtl_sclk_edge_t</a> { <br/>
&#160;&#160;<a class="el" href="a00041.html#gga1d2c82787cda907a0ac8646e11171db8aa89baee03025ca12e2fd8eb03909724c">kSGTL_SclkValidEdgeRising</a> = 0U,
<br/>
&#160;&#160;<a class="el" href="a00041.html#gga1d2c82787cda907a0ac8646e11171db8a0e8f446d380d7f3c859b68ffe5a64a08">kSGTL_SclkValidEdgeFailling</a> = 1U
<br/>
}</td></tr>
<tr class="memdesc:ga1d2c82787cda907a0ac8646e11171db8"><td class="mdescLeft">&#160;</td><td class="mdescRight">SGTL SCLK valid edge. <a href="a00041.html#ga1d2c82787cda907a0ac8646e11171db8">More...</a><br/></td></tr>
<tr class="separator:ga1d2c82787cda907a0ac8646e11171db8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga5dd1b8225b23f6e47c4abed5bf74709f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga5dd1b8225b23f6e47c4abed5bf74709f">SGTL_Init</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, <a class="el" href="a00041.html#a00304">sgtl_config_t</a> *config)</td></tr>
<tr class="memdesc:ga5dd1b8225b23f6e47c4abed5bf74709f"><td class="mdescLeft">&#160;</td><td class="mdescRight">sgtl5000 initialize function. <a href="#ga5dd1b8225b23f6e47c4abed5bf74709f">More...</a><br/></td></tr>
<tr class="separator:ga5dd1b8225b23f6e47c4abed5bf74709f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1ef9c339bf1ac795d7e5f3c42cebafb7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga1ef9c339bf1ac795d7e5f3c42cebafb7">SGTL_SetDataRoute</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, <a class="el" href="a00041.html#ga78ef5545b50946b6d168203283c20820">sgtl_route_t</a> route)</td></tr>
<tr class="memdesc:ga1ef9c339bf1ac795d7e5f3c42cebafb7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set audio data route in sgtl5000. <a href="#ga1ef9c339bf1ac795d7e5f3c42cebafb7">More...</a><br/></td></tr>
<tr class="separator:ga1ef9c339bf1ac795d7e5f3c42cebafb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8087efbfa0ae9c2644d6191f441d9df0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga8087efbfa0ae9c2644d6191f441d9df0">SGTL_SetProtocol</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, <a class="el" href="a00041.html#ga9bd346f7776a687fe345e336127e5426">sgtl_protocol_t</a> protocol)</td></tr>
<tr class="memdesc:ga8087efbfa0ae9c2644d6191f441d9df0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the audio transfer protocol. <a href="#ga8087efbfa0ae9c2644d6191f441d9df0">More...</a><br/></td></tr>
<tr class="separator:ga8087efbfa0ae9c2644d6191f441d9df0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga872cb128c9d0445c60dee6dbc044c7b3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga872cb128c9d0445c60dee6dbc044c7b3">SGTL_SetMasterSlave</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, bool master)</td></tr>
<tr class="memdesc:ga872cb128c9d0445c60dee6dbc044c7b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set sgtl5000 as master or slave. <a href="#ga872cb128c9d0445c60dee6dbc044c7b3">More...</a><br/></td></tr>
<tr class="separator:ga872cb128c9d0445c60dee6dbc044c7b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga88af855c5959f6d814bd8f8327e168d5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga88af855c5959f6d814bd8f8327e168d5">SGTL_SetVolume</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, <a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a> module, uint32_t volume)</td></tr>
<tr class="memdesc:ga88af855c5959f6d814bd8f8327e168d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the volume of different modules in sgtl5000. <a href="#ga88af855c5959f6d814bd8f8327e168d5">More...</a><br/></td></tr>
<tr class="separator:ga88af855c5959f6d814bd8f8327e168d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6d0af6998eff44ee5765988e05d68434"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga6d0af6998eff44ee5765988e05d68434">SGTL_GetVolume</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, <a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a> module)</td></tr>
<tr class="memdesc:ga6d0af6998eff44ee5765988e05d68434"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the volume of different modules in sgtl5000. <a href="#ga6d0af6998eff44ee5765988e05d68434">More...</a><br/></td></tr>
<tr class="separator:ga6d0af6998eff44ee5765988e05d68434"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4c3a087636393265417c9435b6fc57c2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga4c3a087636393265417c9435b6fc57c2">SGTL_SetMute</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, <a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a> module, bool mute)</td></tr>
<tr class="memdesc:ga4c3a087636393265417c9435b6fc57c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mute/unmute modules in sgtl5000. <a href="#ga4c3a087636393265417c9435b6fc57c2">More...</a><br/></td></tr>
<tr class="separator:ga4c3a087636393265417c9435b6fc57c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga51bf307e712104f5942d4cf64c60e624"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga51bf307e712104f5942d4cf64c60e624">SGTL_EnableModule</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, <a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a> module)</td></tr>
<tr class="memdesc:ga51bf307e712104f5942d4cf64c60e624"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable expected devices. <a href="#ga51bf307e712104f5942d4cf64c60e624">More...</a><br/></td></tr>
<tr class="separator:ga51bf307e712104f5942d4cf64c60e624"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga26a3dba16af7a79e072f71d179dc00e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga26a3dba16af7a79e072f71d179dc00e6">SGTL_DisableModule</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, <a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a> module)</td></tr>
<tr class="memdesc:ga26a3dba16af7a79e072f71d179dc00e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disable expected devices. <a href="#ga26a3dba16af7a79e072f71d179dc00e6">More...</a><br/></td></tr>
<tr class="separator:ga26a3dba16af7a79e072f71d179dc00e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga27221640262b10948a03f3178e379814"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga27221640262b10948a03f3178e379814">SGTL_Deinit</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle)</td></tr>
<tr class="memdesc:ga27221640262b10948a03f3178e379814"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deinit the sgtl5000 codec. <a href="#ga27221640262b10948a03f3178e379814">More...</a><br/></td></tr>
<tr class="separator:ga27221640262b10948a03f3178e379814"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga120c853dc3a86f5c70c4fbef309b6ef5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga120c853dc3a86f5c70c4fbef309b6ef5">SGTL_ConfigDataFormat</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, uint32_t mclk, uint32_t sample_rate, uint32_t bits)</td></tr>
<tr class="memdesc:ga120c853dc3a86f5c70c4fbef309b6ef5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configure the data format of audio data. <a href="#ga120c853dc3a86f5c70c4fbef309b6ef5">More...</a><br/></td></tr>
<tr class="separator:ga120c853dc3a86f5c70c4fbef309b6ef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3052a63c17bdfdfeac94d1011434af5d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga3052a63c17bdfdfeac94d1011434af5d">SGTL_SetPlay</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, uint32_t playSource)</td></tr>
<tr class="memdesc:ga3052a63c17bdfdfeac94d1011434af5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">select SGTL codec play source. <a href="#ga3052a63c17bdfdfeac94d1011434af5d">More...</a><br/></td></tr>
<tr class="separator:ga3052a63c17bdfdfeac94d1011434af5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf929ad37a6dd584cd5f17d52560ef7df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#gaf929ad37a6dd584cd5f17d52560ef7df">SGTL_SetRecord</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, uint32_t recordSource)</td></tr>
<tr class="memdesc:gaf929ad37a6dd584cd5f17d52560ef7df"><td class="mdescLeft">&#160;</td><td class="mdescRight">select SGTL codec record source. <a href="#gaf929ad37a6dd584cd5f17d52560ef7df">More...</a><br/></td></tr>
<tr class="separator:gaf929ad37a6dd584cd5f17d52560ef7df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1f0eb0cad0476f34f65811b99d58752f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga1f0eb0cad0476f34f65811b99d58752f">SGTL_WriteReg</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, uint16_t reg, uint16_t val)</td></tr>
<tr class="memdesc:ga1f0eb0cad0476f34f65811b99d58752f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write register to sgtl using I2C. <a href="#ga1f0eb0cad0476f34f65811b99d58752f">More...</a><br/></td></tr>
<tr class="separator:ga1f0eb0cad0476f34f65811b99d58752f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad044b5a578bac8480229730d610f22b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#gad044b5a578bac8480229730d610f22b6">SGTL_ReadReg</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, uint16_t reg, uint16_t *val)</td></tr>
<tr class="memdesc:gad044b5a578bac8480229730d610f22b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read register from sgtl using I2C. <a href="#gad044b5a578bac8480229730d610f22b6">More...</a><br/></td></tr>
<tr class="separator:gad044b5a578bac8480229730d610f22b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga43f1ac7cec503ad6e6ea178b6fb691ac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ga43f1ac7cec503ad6e6ea178b6fb691ac">SGTL_ModifyReg</a> (<a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *handle, uint16_t reg, uint16_t clr_mask, uint16_t val)</td></tr>
<tr class="memdesc:ga43f1ac7cec503ad6e6ea178b6fb691ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify some bits in the register using I2C. <a href="#ga43f1ac7cec503ad6e6ea178b6fb691ac">More...</a><br/></td></tr>
<tr class="separator:ga43f1ac7cec503ad6e6ea178b6fb691ac"><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:gacb25f9b960a10309cc4b9b2cb0f0c063"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#gacb25f9b960a10309cc4b9b2cb0f0c063">FSL_SGTL5000_DRIVER_VERSION</a>&#160;&#160;&#160;(<a class="el" href="a00017.html#ga812138aa3315b0c6953c1a26130bcc37">MAKE_VERSION</a>(2, 1, 1))</td></tr>
<tr class="memdesc:gacb25f9b960a10309cc4b9b2cb0f0c063"><td class="mdescLeft">&#160;</td><td class="mdescRight">CLOCK driver version 2.1.1. <a href="#gacb25f9b960a10309cc4b9b2cb0f0c063">More...</a><br/></td></tr>
<tr class="separator:gacb25f9b960a10309cc4b9b2cb0f0c063"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="a00303" id="a00303"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct sgtl_audio_format_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:ae0edadf6baf0a743e4765421ad2abc3f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae0edadf6baf0a743e4765421ad2abc3f"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#ae0edadf6baf0a743e4765421ad2abc3f">mclk_HZ</a></td></tr>
<tr class="memdesc:ae0edadf6baf0a743e4765421ad2abc3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">master clock <br/></td></tr>
<tr class="separator:ae0edadf6baf0a743e4765421ad2abc3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47b2d7178ab3a15a56b8972b2d2eac29"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a47b2d7178ab3a15a56b8972b2d2eac29"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a47b2d7178ab3a15a56b8972b2d2eac29">sampleRate</a></td></tr>
<tr class="memdesc:a47b2d7178ab3a15a56b8972b2d2eac29"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sample rate. <br/></td></tr>
<tr class="separator:a47b2d7178ab3a15a56b8972b2d2eac29"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78334148115e196b31db9b1a302a4941"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78334148115e196b31db9b1a302a4941"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a78334148115e196b31db9b1a302a4941">bitWidth</a></td></tr>
<tr class="memdesc:a78334148115e196b31db9b1a302a4941"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bit width. <br/></td></tr>
<tr class="separator:a78334148115e196b31db9b1a302a4941"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cdfd73fb1b74ee97d94e2e183af5a00"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9cdfd73fb1b74ee97d94e2e183af5a00"></a>
<a class="el" href="a00041.html#ga1d2c82787cda907a0ac8646e11171db8">sgtl_sclk_edge_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a9cdfd73fb1b74ee97d94e2e183af5a00">sclkEdge</a></td></tr>
<tr class="memdesc:a9cdfd73fb1b74ee97d94e2e183af5a00"><td class="mdescLeft">&#160;</td><td class="mdescRight">sclk valid edge <br/></td></tr>
<tr class="separator:a9cdfd73fb1b74ee97d94e2e183af5a00"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div>
</div>
<a name="a00304" id="a00304"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct sgtl_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:a8c4ed2bb6162b218a0aa8077d9bab4aa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00041.html#ga78ef5545b50946b6d168203283c20820">sgtl_route_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a8c4ed2bb6162b218a0aa8077d9bab4aa">route</a></td></tr>
<tr class="memdesc:a8c4ed2bb6162b218a0aa8077d9bab4aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Audio data route. <a href="#a8c4ed2bb6162b218a0aa8077d9bab4aa">More...</a><br/></td></tr>
<tr class="separator:a8c4ed2bb6162b218a0aa8077d9bab4aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1991cd986722d22c8964f08bc9d8c21d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1991cd986722d22c8964f08bc9d8c21d"></a>
<a class="el" href="a00041.html#ga9bd346f7776a687fe345e336127e5426">sgtl_protocol_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a1991cd986722d22c8964f08bc9d8c21d">bus</a></td></tr>
<tr class="memdesc:a1991cd986722d22c8964f08bc9d8c21d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Audio transfer protocol. <br/></td></tr>
<tr class="separator:a1991cd986722d22c8964f08bc9d8c21d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4daf6a63ca5b405aac9332ca477c3501"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a4daf6a63ca5b405aac9332ca477c3501">master_slave</a></td></tr>
<tr class="memdesc:a4daf6a63ca5b405aac9332ca477c3501"><td class="mdescLeft">&#160;</td><td class="mdescRight">Master or slave. <a href="#a4daf6a63ca5b405aac9332ca477c3501">More...</a><br/></td></tr>
<tr class="separator:a4daf6a63ca5b405aac9332ca477c3501"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af41c4ad8e8dfb29b4fde75d76f9f43c8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af41c4ad8e8dfb29b4fde75d76f9f43c8"></a>
<a class="el" href="a00041.html#a00303">sgtl_audio_format_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#af41c4ad8e8dfb29b4fde75d76f9f43c8">format</a></td></tr>
<tr class="memdesc:af41c4ad8e8dfb29b4fde75d76f9f43c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">audio format <br/></td></tr>
<tr class="separator:af41c4ad8e8dfb29b4fde75d76f9f43c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdee01c708fa6a6beaf93e371347c590"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abdee01c708fa6a6beaf93e371347c590"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#abdee01c708fa6a6beaf93e371347c590">slaveAddress</a></td></tr>
<tr class="memdesc:abdee01c708fa6a6beaf93e371347c590"><td class="mdescLeft">&#160;</td><td class="mdescRight">code device slave address <br/></td></tr>
<tr class="separator:abdee01c708fa6a6beaf93e371347c590"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0552d0239f157964cdc500d73350d11d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0552d0239f157964cdc500d73350d11d"></a>
<a class="el" href="a00011.html#a00236">codec_i2c_config_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a0552d0239f157964cdc500d73350d11d">i2cConfig</a></td></tr>
<tr class="memdesc:a0552d0239f157964cdc500d73350d11d"><td class="mdescLeft">&#160;</td><td class="mdescRight">i2c bus configuration <br/></td></tr>
<tr class="separator:a0552d0239f157964cdc500d73350d11d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="a8c4ed2bb6162b218a0aa8077d9bab4aa"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00041.html#ga78ef5545b50946b6d168203283c20820">sgtl_route_t</a> sgtl_config_t::route</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a4daf6a63ca5b405aac9332ca477c3501"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool sgtl_config_t::master_slave</td>
</tr>
</table>
</div><div class="memdoc">
<p>True means master, false means slave. </p>
</div>
</div>
</div>
</div>
<a name="a00305" id="a00305"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct sgtl_handle_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:a2187719e2579f70c815eff00bd8d7b98"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2187719e2579f70c815eff00bd8d7b98"></a>
<a class="el" href="a00041.html#a00304">sgtl_config_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#a2187719e2579f70c815eff00bd8d7b98">config</a></td></tr>
<tr class="memdesc:a2187719e2579f70c815eff00bd8d7b98"><td class="mdescLeft">&#160;</td><td class="mdescRight">sgtl config pointer <br/></td></tr>
<tr class="separator:a2187719e2579f70c815eff00bd8d7b98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee64ef7e3a76d06780a73c63d68d2a98"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee64ef7e3a76d06780a73c63d68d2a98"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00041.html#aee64ef7e3a76d06780a73c63d68d2a98">i2cHandle</a> [<a class="el" href="a00041.html#ga5a006451f9e990a4d3255ed7265ff1ad">SGTL_I2C_HANDLER_SIZE</a>]</td></tr>
<tr class="memdesc:aee64ef7e3a76d06780a73c63d68d2a98"><td class="mdescLeft">&#160;</td><td class="mdescRight">i2c handle <br/></td></tr>
<tr class="separator:aee64ef7e3a76d06780a73c63d68d2a98"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="gacb25f9b960a10309cc4b9b2cb0f0c063"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FSL_SGTL5000_DRIVER_VERSION&#160;&#160;&#160;(<a class="el" href="a00017.html#ga812138aa3315b0c6953c1a26130bcc37">MAKE_VERSION</a>(2, 1, 1))</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="gab0aa3e54cd2934b67b9882957456c391"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define CHIP_ID&#160;&#160;&#160;0x0000U</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga58ceb20f920b2b006c74eeeae992830a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SGTL5000_I2C_ADDR&#160;&#160;&#160;0x0A</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="gaf78d5250d200a4cc76a60dcff249a4d3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_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="ggaf78d5250d200a4cc76a60dcff249a4d3aeff780e31f47de5bd4ae4f7c2247a943"></a>kSGTL_ModuleADC</em>&nbsp;</td><td class="fielddoc">
<p>ADC module in SGTL5000. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaf78d5250d200a4cc76a60dcff249a4d3ac97955a1a57467c8a7a93629468c0ae5"></a>kSGTL_ModuleDAC</em>&nbsp;</td><td class="fielddoc">
<p>DAC module in SGTL5000. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaf78d5250d200a4cc76a60dcff249a4d3a6db304a2a1838b8733167b535efd1cc6"></a>kSGTL_ModuleDAP</em>&nbsp;</td><td class="fielddoc">
<p>DAP module in SGTL5000. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaf78d5250d200a4cc76a60dcff249a4d3a7c3ca8ea568a0109f5858469734f1f22"></a>kSGTL_ModuleHP</em>&nbsp;</td><td class="fielddoc">
<p>Headphone module in SGTL5000. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaf78d5250d200a4cc76a60dcff249a4d3a5eec6607385362c2f1f67574f98bab7f"></a>kSGTL_ModuleI2SIN</em>&nbsp;</td><td class="fielddoc">
<p>I2S-IN module in SGTL5000. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaf78d5250d200a4cc76a60dcff249a4d3ad549fbd25f776da2e48029e7defb136d"></a>kSGTL_ModuleI2SOUT</em>&nbsp;</td><td class="fielddoc">
<p>I2S-OUT module in SGTL5000. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaf78d5250d200a4cc76a60dcff249a4d3a3cf24e3ca184744b13ce10adb648afcd"></a>kSGTL_ModuleLineIn</em>&nbsp;</td><td class="fielddoc">
<p>Line-in moudle in SGTL5000. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaf78d5250d200a4cc76a60dcff249a4d3a04e0f93df81aacf8114308d95703248f"></a>kSGTL_ModuleLineOut</em>&nbsp;</td><td class="fielddoc">
<p>Line-out module in SGTL5000. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaf78d5250d200a4cc76a60dcff249a4d3a4d7e27445f7842c7d420a3621ac73e72"></a>kSGTL_ModuleMicin</em>&nbsp;</td><td class="fielddoc">
<p>Micphone module in SGTL5000. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga78ef5545b50946b6d168203283c20820"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00041.html#ga78ef5545b50946b6d168203283c20820">sgtl_route_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section note"><dt>Note</dt><dd>Only provide some typical data route, not all route listed. Users cannot combine any routes, once a new route is set, the precios one would be replaced. </dd></dl>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga78ef5545b50946b6d168203283c20820a1ea39c5bbafcc616613e8755b70573e9"></a>kSGTL_RouteBypass</em>&nbsp;</td><td class="fielddoc">
<p>LINEIN-&gt;Headphone. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga78ef5545b50946b6d168203283c20820ad379b8e67ddbbb27bc44c6d6f3cf7c0e"></a>kSGTL_RoutePlayback</em>&nbsp;</td><td class="fielddoc">
<p>I2SIN-&gt;DAC-&gt;Headphone. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga78ef5545b50946b6d168203283c20820ae11f7c67b7d1ab7e4dce3d927be7da00"></a>kSGTL_RoutePlaybackandRecord</em>&nbsp;</td><td class="fielddoc">
<p>I2SIN-&gt;DAC-&gt;Headphone, LINEIN-&gt;ADC-&gt;I2SOUT. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga78ef5545b50946b6d168203283c20820ae79c7286d52a67b618e4e23a1f1306b6"></a>kSGTL_RoutePlaybackwithDAP</em>&nbsp;</td><td class="fielddoc">
<p>I2SIN-&gt;DAP-&gt;DAC-&gt;Headphone. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga78ef5545b50946b6d168203283c20820a53052344996dc1f90cf6457e2b81eb18"></a>kSGTL_RoutePlaybackwithDAPandRecord</em>&nbsp;</td><td class="fielddoc">
<p>I2SIN-&gt;DAP-&gt;DAC-&gt;HP, LINEIN-&gt;ADC-&gt;I2SOUT. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga78ef5545b50946b6d168203283c20820a0c28a072be0500106b9b32a16f05f000"></a>kSGTL_RouteRecord</em>&nbsp;</td><td class="fielddoc">
<p>LINEIN-&gt;ADC-&gt;I2SOUT. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga9bd346f7776a687fe345e336127e5426"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00041.html#ga9bd346f7776a687fe345e336127e5426">sgtl_protocol_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sgtl5000 only supports I2S format and PCM format. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga9bd346f7776a687fe345e336127e5426ab56aded98ae08bb3dd4c431e036eb9b7"></a>kSGTL_BusI2S</em>&nbsp;</td><td class="fielddoc">
<p>I2S Type. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9bd346f7776a687fe345e336127e5426a99d80a1bbb2ca42f8d8b9ded7d0fe156"></a>kSGTL_BusLeftJustified</em>&nbsp;</td><td class="fielddoc">
<p>Left justified. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9bd346f7776a687fe345e336127e5426a742196d31e1ede4eb6d0b1bd6afcdc50"></a>kSGTL_BusRightJustified</em>&nbsp;</td><td class="fielddoc">
<p>Right Justified. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9bd346f7776a687fe345e336127e5426aae65c2ae38164483661ce81683e2cf6d"></a>kSGTL_BusPCMA</em>&nbsp;</td><td class="fielddoc">
<p>PCMA. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9bd346f7776a687fe345e336127e5426a165348d47026247f859a40813f449cfd"></a>kSGTL_BusPCMB</em>&nbsp;</td><td class="fielddoc">
<p>PCMB. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gac205be2172292384dd687b5471a87edd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">anonymous enum</td>
</tr>
</table>
</div><div class="memdoc">
<p><a class="anchor" id="_sgtl_play_channel"></a></p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggac205be2172292384dd687b5471a87edda4438d9d23b966a384697ac3959ec180c"></a>kSGTL_HeadphoneLeft</em>&nbsp;</td><td class="fielddoc">
<p>headphone left channel </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggac205be2172292384dd687b5471a87edda7c3a64195b071d4d17957f2de39a45a7"></a>kSGTL_HeadphoneRight</em>&nbsp;</td><td class="fielddoc">
<p>headphone right channel </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggac205be2172292384dd687b5471a87eddaea79ecce1f81bf12000fcf64671502ea"></a>kSGTL_LineoutLeft</em>&nbsp;</td><td class="fielddoc">
<p>lineout left channel </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggac205be2172292384dd687b5471a87eddabe25d4199f174f03f271a2ac335904bb"></a>kSGTL_LineoutRight</em>&nbsp;</td><td class="fielddoc">
<p>lineout right channel </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga157d5577a5b2f5986037d0d09c7dc77d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">anonymous enum</td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga157d5577a5b2f5986037d0d09c7dc77da358889525fbd4a6d5998c17a2382ac16"></a>kSGTL_RecordSourceLineIn</em>&nbsp;</td><td class="fielddoc">
<p>record source line in </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga157d5577a5b2f5986037d0d09c7dc77da3c1289899ca6bdbe2ee24346890a19e2"></a>kSGTL_RecordSourceMic</em>&nbsp;</td><td class="fielddoc">
<p>record source single end </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga1fb9092bcdeada2d206bdc74afbbe122"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">anonymous enum</td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga1fb9092bcdeada2d206bdc74afbbe122ad99308b50ee139be94b584a66d999caf"></a>kSGTL_PlaySourceLineIn</em>&nbsp;</td><td class="fielddoc">
<p>play source line in </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga1fb9092bcdeada2d206bdc74afbbe122a9c7fa540632ee8e4c733fb4ccebc8601"></a>kSGTL_PlaySourceDAC</em>&nbsp;</td><td class="fielddoc">
<p>play source line in </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga1d2c82787cda907a0ac8646e11171db8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00041.html#ga1d2c82787cda907a0ac8646e11171db8">sgtl_sclk_edge_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="gga1d2c82787cda907a0ac8646e11171db8aa89baee03025ca12e2fd8eb03909724c"></a>kSGTL_SclkValidEdgeRising</em>&nbsp;</td><td class="fielddoc">
<p>SCLK valid edge. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga1d2c82787cda907a0ac8646e11171db8a0e8f446d380d7f3c859b68ffe5a64a08"></a>kSGTL_SclkValidEdgeFailling</em>&nbsp;</td><td class="fielddoc">
<p>SCLK failling edge. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga5dd1b8225b23f6e47c4abed5bf74709f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_Init </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00041.html#a00304">sgtl_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 calls SGTL_I2CInit(), and in this function, some configurations are fixed. The second parameter can be NULL. If users want to change the SGTL5000 settings, a configure structure should be prepared. </p>
<dl class="section note"><dt>Note</dt><dd>If the codec_config is NULL, it would initialize sgtl5000 using default settings. The default setting: <div class="fragment"><div class="line">* sgtl_init_t codec_config</div>
<div class="line">* codec_config.route = <a class="code" href="a00041.html#gga78ef5545b50946b6d168203283c20820ae11f7c67b7d1ab7e4dce3d927be7da00">kSGTL_RoutePlaybackandRecord</a></div>
<div class="line">* codec_config.bus = <a class="code" href="a00041.html#gga9bd346f7776a687fe345e336127e5426ab56aded98ae08bb3dd4c431e036eb9b7">kSGTL_BusI2S</a></div>
<div class="line">* codec_config.master = slave</div>
<div class="line">* </div>
</div><!-- fragment --></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">config</td><td>sgtl5000 configuration structure. If this pointer equals to NULL, it means using the default configuration. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Initialization status </dd></dl>
</div>
</div>
<a class="anchor" id="ga1ef9c339bf1ac795d7e5f3c42cebafb7"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_SetDataRoute </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00041.html#ga78ef5545b50946b6d168203283c20820">sgtl_route_t</a>&#160;</td>
<td class="paramname"><em>route</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function would set the data route according to route. The route cannot be combined, as all route would enable different modules.</p>
<dl class="section note"><dt>Note</dt><dd>If a new route is set, the previous route would not work. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">route</td><td>Audio data route in sgtl5000. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga8087efbfa0ae9c2644d6191f441d9df0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_SetProtocol </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00041.html#ga9bd346f7776a687fe345e336127e5426">sgtl_protocol_t</a>&#160;</td>
<td class="paramname"><em>protocol</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sgtl5000 only supports I2S, I2S left, I2S right, PCM A, PCM B format. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">protocol</td><td>Audio data transfer protocol. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga872cb128c9d0445c60dee6dbc044c7b3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SGTL_SetMasterSlave </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>master</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">master</td><td>1 represent master, 0 represent slave. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga88af855c5959f6d814bd8f8327e168d5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_SetVolume </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a>&#160;</td>
<td class="paramname"><em>module</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>volume</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function would set the volume of sgtl5000 modules. This interface set module volume. The function assume that left channel and right channel has the same volume.</p>
<p>kSGTL_ModuleADC volume range: 0 - 0xF, 0dB - 22.5dB kSGTL_ModuleDAC volume range: 0x3C - 0xF0, 0dB - -90dB kSGTL_ModuleHP volume range: 0 - 0x7F, 12dB - -51.5dB kSGTL_ModuleLineOut volume range: 0 - 0x1F, 0.5dB steps</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">module</td><td>Sgtl5000 module, such as DAC, ADC and etc. </td></tr>
<tr><td class="paramname">volume</td><td>Volume value need to be set. The value is the exact value in register. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga6d0af6998eff44ee5765988e05d68434"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t SGTL_GetVolume </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a>&#160;</td>
<td class="paramname"><em>module</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function gets the volume of sgtl5000 modules. This interface get DAC module volume. The function assume that left channel and right channel has the same volume. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">module</td><td>Sgtl5000 module, such as DAC, ADC and etc. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Module value, the value is exact value in register. </dd></dl>
</div>
</div>
<a class="anchor" id="ga4c3a087636393265417c9435b6fc57c2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_SetMute </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a>&#160;</td>
<td class="paramname"><em>module</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>mute</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">module</td><td>Sgtl5000 module, such as DAC, ADC and etc. </td></tr>
<tr><td class="paramname">mute</td><td>True means mute, and false means unmute. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga51bf307e712104f5942d4cf64c60e624"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_EnableModule </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a>&#160;</td>
<td class="paramname"><em>module</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">module</td><td>Module expected to enable. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga26a3dba16af7a79e072f71d179dc00e6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_DisableModule </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00041.html#gaf78d5250d200a4cc76a60dcff249a4d3">sgtl_module_t</a>&#160;</td>
<td class="paramname"><em>module</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">module</td><td>Module expected to enable. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga27221640262b10948a03f3178e379814"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_Deinit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Shut down Sgtl5000 modules. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure pointer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga120c853dc3a86f5c70c4fbef309b6ef5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_ConfigDataFormat </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>mclk</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>sample_rate</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>bits</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function would configure the registers about the sample rate, bit depths. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure pointer. </td></tr>
<tr><td class="paramname">mclk</td><td>Master clock frequency of I2S. </td></tr>
<tr><td class="paramname">sample_rate</td><td>Sample rate of audio file running in sgtl5000. Sgtl5000 now supports 8k, 11.025k, 12k, 16k, 22.05k, 24k, 32k, 44.1k, 48k and 96k sample rate. </td></tr>
<tr><td class="paramname">bits</td><td>Bit depth of audio file (Sgtl5000 only supports 16bit, 20bit, 24bit and 32 bit in HW). </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga3052a63c17bdfdfeac94d1011434af5d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_SetPlay </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>playSource</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure pointer. </td></tr>
<tr><td class="paramname">playSource</td><td>play source value, reference _sgtl_play_source.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>kStatus_Success, else failed. </dd></dl>
</div>
</div>
<a class="anchor" id="gaf929ad37a6dd584cd5f17d52560ef7df"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_SetRecord </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>recordSource</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure pointer. </td></tr>
<tr><td class="paramname">recordSource</td><td>record source value, reference _sgtl_record_source.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>kStatus_Success, else failed. </dd></dl>
</div>
</div>
<a class="anchor" id="ga1f0eb0cad0476f34f65811b99d58752f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_WriteReg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>reg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>val</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">reg</td><td>The register address in sgtl. </td></tr>
<tr><td class="paramname">val</td><td>Value needs to write into the register. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gad044b5a578bac8480229730d610f22b6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_ReadReg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>reg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t *&#160;</td>
<td class="paramname"><em>val</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">reg</td><td>The register address in sgtl. </td></tr>
<tr><td class="paramname">val</td><td>Value written to. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga43f1ac7cec503ad6e6ea178b6fb691ac"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00178.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> SGTL_ModifyReg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00041.html#a00305">sgtl_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>reg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>clr_mask</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>val</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>Sgtl5000 handle structure. </td></tr>
<tr><td class="paramname">reg</td><td>The register address in sgtl. </td></tr>
<tr><td class="paramname">clr_mask</td><td>The mask code for the bits want to write. The bit you want to write should be 0. </td></tr>
<tr><td class="paramname">val</td><td>Value needs to write into the register. </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>