MCUXpresso_LPC55S69/docs/MCUXpresso SDK API Referenc.../a00014.html

1252 lines
78 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: CS42888 Driver</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="fs_logo.gif"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">MCUXpresso SDK API Reference Manual
&#160;<span id="projectnumber">Rev 2.15.000</span>
</div>
<div id="projectbrief">NXP Semiconductors</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>API&#160;Reference</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('a00014.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="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">CS42888 Driver<div class="ingroups"><a class="el" href="a00274.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 cs42888 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:a00309"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a00309">_cs42888_audio_format</a></td></tr>
<tr class="memdesc:a00309"><td class="mdescLeft">&#160;</td><td class="mdescRight">cs42888 audio format <a href="a00014.html#a00309">More...</a><br/></td></tr>
<tr class="separator:a00309"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00446"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a00446">cs42888_config</a></td></tr>
<tr class="memdesc:a00446"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize structure of CS42888. <a href="a00014.html#a00446">More...</a><br/></td></tr>
<tr class="separator:a00446"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00310"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a00310">_cs42888_handle</a></td></tr>
<tr class="memdesc:a00310"><td class="mdescLeft">&#160;</td><td class="mdescRight">cs42888 handler <a href="a00014.html#a00310">More...</a><br/></td></tr>
<tr class="separator:a00310"><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:ga953230c47c19e6eb63913ae2b64e1ae5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga953230c47c19e6eb63913ae2b64e1ae5"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga953230c47c19e6eb63913ae2b64e1ae5">CS42888_I2C_HANDLER_SIZE</a>&#160;&#160;&#160;<a class="el" href="a00012.html#ga708be0fda3516367fe0461a5f054118c">CODEC_I2C_MASTER_HANDLER_SIZE</a></td></tr>
<tr class="memdesc:ga953230c47c19e6eb63913ae2b64e1ae5"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 handle size. <br/></td></tr>
<tr class="separator:ga953230c47c19e6eb63913ae2b64e1ae5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8996629a1d0330f394495461ceb4957b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga8996629a1d0330f394495461ceb4957b">CS42888_ID</a>&#160;&#160;&#160;0x01U</td></tr>
<tr class="memdesc:ga8996629a1d0330f394495461ceb4957b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Define the register address of CS42888. <a href="#ga8996629a1d0330f394495461ceb4957b">More...</a><br/></td></tr>
<tr class="separator:ga8996629a1d0330f394495461ceb4957b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac06d214143119255ed45dd4f3b7ab627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac06d214143119255ed45dd4f3b7ab627"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#gac06d214143119255ed45dd4f3b7ab627">CS42888_AOUT_MAX_VOLUME_VALUE</a>&#160;&#160;&#160;0xFFU</td></tr>
<tr class="memdesc:gac06d214143119255ed45dd4f3b7ab627"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 volume setting range. <br/></td></tr>
<tr class="separator:gac06d214143119255ed45dd4f3b7ab627"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa8dd0b96c875487380daa23f03192594"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa8dd0b96c875487380daa23f03192594"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#gaa8dd0b96c875487380daa23f03192594">CS42888_CACHEREGNUM</a>&#160;&#160;&#160;28U</td></tr>
<tr class="memdesc:gaa8dd0b96c875487380daa23f03192594"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cache register number. <br/></td></tr>
<tr class="separator:gaa8dd0b96c875487380daa23f03192594"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3758dc010c2ce784b57cf530610bee26"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga3758dc010c2ce784b57cf530610bee26">CS42888_I2C_ADDR</a>&#160;&#160;&#160;0x48U</td></tr>
<tr class="memdesc:ga3758dc010c2ce784b57cf530610bee26"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 I2C address. <a href="#ga3758dc010c2ce784b57cf530610bee26">More...</a><br/></td></tr>
<tr class="separator:ga3758dc010c2ce784b57cf530610bee26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga129d78d2efcbc77435255429dc0baef4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga129d78d2efcbc77435255429dc0baef4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga129d78d2efcbc77435255429dc0baef4">CS42888_I2C_BITRATE</a>&#160;&#160;&#160;(100000U)</td></tr>
<tr class="memdesc:ga129d78d2efcbc77435255429dc0baef4"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 I2C baudrate. <br/></td></tr>
<tr class="separator:ga129d78d2efcbc77435255429dc0baef4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga5fe323798009a9b45302adece010e3e0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5fe323798009a9b45302adece010e3e0"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga5fe323798009a9b45302adece010e3e0">cs42888_reset</a> )(bool state)</td></tr>
<tr class="memdesc:ga5fe323798009a9b45302adece010e3e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">cs42888 reset function pointer <br/></td></tr>
<tr class="separator:ga5fe323798009a9b45302adece010e3e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1ab2b08437ff0240d91298dec0fc957b"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="a00014.html#ga0181f6f0d547da193db4a61149cf84d0">_CS42888_func_mode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a></td></tr>
<tr class="memdesc:ga1ab2b08437ff0240d91298dec0fc957b"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 support modes. <a href="#ga1ab2b08437ff0240d91298dec0fc957b">More...</a><br/></td></tr>
<tr class="separator:ga1ab2b08437ff0240d91298dec0fc957b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7151227626166a33aa10d24aa7e6a53e"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="a00014.html#gae2b10bb2968b31b5745cc6f091b7ab24">_CS42888_module</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga7151227626166a33aa10d24aa7e6a53e">cs42888_module_t</a></td></tr>
<tr class="memdesc:ga7151227626166a33aa10d24aa7e6a53e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modules in CS42888 board. <a href="#ga7151227626166a33aa10d24aa7e6a53e">More...</a><br/></td></tr>
<tr class="separator:ga7151227626166a33aa10d24aa7e6a53e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f2c856d60f3b94bafd6f3c4ed4027ed"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="a00014.html#ga6b8dfab01be44c83e79f6d913d9526bd">_CS42888_bus</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga0f2c856d60f3b94bafd6f3c4ed4027ed">cs42888_bus_t</a></td></tr>
<tr class="memdesc:ga0f2c856d60f3b94bafd6f3c4ed4027ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 supported audio bus type. <a href="#ga0f2c856d60f3b94bafd6f3c4ed4027ed">More...</a><br/></td></tr>
<tr class="separator:ga0f2c856d60f3b94bafd6f3c4ed4027ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8f705faa4b3075e9293c448b3a0fb1db"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8f705faa4b3075e9293c448b3a0fb1db"></a>
typedef struct <br class="typebreak"/>
<a class="el" href="a00014.html#a00309">_cs42888_audio_format</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga8f705faa4b3075e9293c448b3a0fb1db">cs42888_audio_format_t</a></td></tr>
<tr class="memdesc:ga8f705faa4b3075e9293c448b3a0fb1db"><td class="mdescLeft">&#160;</td><td class="mdescRight">cs42888 audio format <br/></td></tr>
<tr class="separator:ga8f705faa4b3075e9293c448b3a0fb1db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab738cdffee1c037e754566c0c0856daf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab738cdffee1c037e754566c0c0856daf"></a>
typedef struct <a class="el" href="a00014.html#a00446">cs42888_config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#gab738cdffee1c037e754566c0c0856daf">cs42888_config_t</a></td></tr>
<tr class="memdesc:gab738cdffee1c037e754566c0c0856daf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize structure of CS42888. <br/></td></tr>
<tr class="separator:gab738cdffee1c037e754566c0c0856daf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad32b5ec50e313050a3c4ba0ec2eef663"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad32b5ec50e313050a3c4ba0ec2eef663"></a>
typedef struct <a class="el" href="a00014.html#a00310">_cs42888_handle</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a></td></tr>
<tr class="memdesc:gad32b5ec50e313050a3c4ba0ec2eef663"><td class="mdescLeft">&#160;</td><td class="mdescRight">cs42888 handler <br/></td></tr>
<tr class="separator:gad32b5ec50e313050a3c4ba0ec2eef663"><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:ga0181f6f0d547da193db4a61149cf84d0"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga0181f6f0d547da193db4a61149cf84d0">_CS42888_func_mode</a> { <br/>
&#160;&#160;<a class="el" href="a00014.html#gga0181f6f0d547da193db4a61149cf84d0a57b2cc424116839aeec3d1c2e53bfff4">kCS42888_ModeMasterSSM</a> = 0x0,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga0181f6f0d547da193db4a61149cf84d0a11b7086a5f9cfc75f35718710815780c">kCS42888_ModeMasterDSM</a> = 0x1,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga0181f6f0d547da193db4a61149cf84d0a2d0f655396420774935b01b1b01b315a">kCS42888_ModeMasterQSM</a> = 0x2,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga0181f6f0d547da193db4a61149cf84d0aa6dd80e639d0173bafda96b4df37c96a">kCS42888_ModeSlave</a> = 0x3
<br/>
}</td></tr>
<tr class="memdesc:ga0181f6f0d547da193db4a61149cf84d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 support modes. <a href="a00014.html#ga0181f6f0d547da193db4a61149cf84d0">More...</a><br/></td></tr>
<tr class="separator:ga0181f6f0d547da193db4a61149cf84d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae2b10bb2968b31b5745cc6f091b7ab24"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#gae2b10bb2968b31b5745cc6f091b7ab24">_CS42888_module</a> { <br/>
&#160;&#160;<a class="el" href="a00014.html#ggae2b10bb2968b31b5745cc6f091b7ab24a0c3edb05c683d99b43b1afffa92c7745">kCS42888_ModuleDACPair1</a> = 0x2,
<br/>
&#160;&#160;<a class="el" href="a00014.html#ggae2b10bb2968b31b5745cc6f091b7ab24a12297793c9f7de6c5df5dd506ba81600">kCS42888_ModuleDACPair2</a> = 0x4,
<br/>
&#160;&#160;<a class="el" href="a00014.html#ggae2b10bb2968b31b5745cc6f091b7ab24a45072abfadea932906a4e536dbb7d5a4">kCS42888_ModuleDACPair3</a> = 0x8,
<br/>
&#160;&#160;<a class="el" href="a00014.html#ggae2b10bb2968b31b5745cc6f091b7ab24a3d1833e1a30aa83df7c3174ff3ab63a9">kCS42888_ModuleDACPair4</a> = 0x10,
<br/>
&#160;&#160;<a class="el" href="a00014.html#ggae2b10bb2968b31b5745cc6f091b7ab24a9e6ae9226aa29208f3fde450a3a2ae69">kCS42888_ModuleADCPair1</a> = 0x20,
<br/>
&#160;&#160;<a class="el" href="a00014.html#ggae2b10bb2968b31b5745cc6f091b7ab24a3863290d03b58c95e2ae8824fe99aac6">kCS42888_ModuleADCPair2</a> = 0x40
<br/>
}</td></tr>
<tr class="memdesc:gae2b10bb2968b31b5745cc6f091b7ab24"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modules in CS42888 board. <a href="a00014.html#gae2b10bb2968b31b5745cc6f091b7ab24">More...</a><br/></td></tr>
<tr class="separator:gae2b10bb2968b31b5745cc6f091b7ab24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6b8dfab01be44c83e79f6d913d9526bd"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga6b8dfab01be44c83e79f6d913d9526bd">_CS42888_bus</a> { <br/>
&#160;&#160;<a class="el" href="a00014.html#gga6b8dfab01be44c83e79f6d913d9526bda7685b48742dd9b6a928673cb716dc496">kCS42888_BusLeftJustified</a> = 0x0,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga6b8dfab01be44c83e79f6d913d9526bdaeef13df8577ef9bfde4a8390d5b0ccd9">kCS42888_BusI2S</a> = 0x1,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga6b8dfab01be44c83e79f6d913d9526bda4d55c55bf343966060e2a1a756445629">kCS42888_BusRightJustified</a> = 0x2,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga6b8dfab01be44c83e79f6d913d9526bda7c862e2ffab7396a543b9a07df682c7d">kCS42888_BusOL1</a> = 0x4,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga6b8dfab01be44c83e79f6d913d9526bda440e9e0d3ebd0431de4690b05bffcf5f">kCS42888_BusOL2</a> = 0x5,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga6b8dfab01be44c83e79f6d913d9526bdaf1ae036e2e350aabfe39cd29bace6d32">kCS42888_BusTDM</a> = 0x6
<br/>
}</td></tr>
<tr class="memdesc:ga6b8dfab01be44c83e79f6d913d9526bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 supported audio bus type. <a href="a00014.html#ga6b8dfab01be44c83e79f6d913d9526bd">More...</a><br/></td></tr>
<tr class="separator:ga6b8dfab01be44c83e79f6d913d9526bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9334a5b9057f32da96db9b5c6a045d67"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br/>
&#160;&#160;<a class="el" href="a00014.html#gga9334a5b9057f32da96db9b5c6a045d67a40c873d24063247f27786a37ae99f4e5">kCS42888_AOUT1</a> = 1U,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga9334a5b9057f32da96db9b5c6a045d67a4e25320a6e1770c4782c0776bd6708e2">kCS42888_AOUT2</a> = 2U,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga9334a5b9057f32da96db9b5c6a045d67a3635f95f2c41320a933acb215a07ea1e">kCS42888_AOUT3</a> = 3U,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga9334a5b9057f32da96db9b5c6a045d67ad9aedebf8ecd41a35099a221194985ae">kCS42888_AOUT4</a> = 4U,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga9334a5b9057f32da96db9b5c6a045d67a5433074d6d61dc9a342dd07880ad8013">kCS42888_AOUT5</a> = 5U,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga9334a5b9057f32da96db9b5c6a045d67a5523459f137c68559e45279689b3c9d1">kCS42888_AOUT6</a> = 6U,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga9334a5b9057f32da96db9b5c6a045d67a4c5575ba57cca766bc4f8a1971065b5a">kCS42888_AOUT7</a> = 7U,
<br/>
&#160;&#160;<a class="el" href="a00014.html#gga9334a5b9057f32da96db9b5c6a045d67a317c6f4677e7331aeee1270eefd18981">kCS42888_AOUT8</a> = 8U
<br/>
}</td></tr>
<tr class="memdesc:ga9334a5b9057f32da96db9b5c6a045d67"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS428888 play channel. <a href="a00014.html#ga9334a5b9057f32da96db9b5c6a045d67">More...</a><br/></td></tr>
<tr class="separator:ga9334a5b9057f32da96db9b5c6a045d67"><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:gaaedecae1ab48066f40067f938b45e246"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#gaaedecae1ab48066f40067f938b45e246">CS42888_Init</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, <a class="el" href="a00014.html#gab738cdffee1c037e754566c0c0856daf">cs42888_config_t</a> *config)</td></tr>
<tr class="memdesc:gaaedecae1ab48066f40067f938b45e246"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 initialize function. <a href="#gaaedecae1ab48066f40067f938b45e246">More...</a><br/></td></tr>
<tr class="separator:gaaedecae1ab48066f40067f938b45e246"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9f3f2e2ab36b350ac9e7687ac068c924"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga9f3f2e2ab36b350ac9e7687ac068c924">CS42888_Deinit</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle)</td></tr>
<tr class="memdesc:ga9f3f2e2ab36b350ac9e7687ac068c924"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deinit the CS42888 codec. <a href="#ga9f3f2e2ab36b350ac9e7687ac068c924">More...</a><br/></td></tr>
<tr class="separator:ga9f3f2e2ab36b350ac9e7687ac068c924"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9909a32fcd8fb65497a0971169f02b6f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga9909a32fcd8fb65497a0971169f02b6f">CS42888_SetProtocol</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, <a class="el" href="a00014.html#ga0f2c856d60f3b94bafd6f3c4ed4027ed">cs42888_bus_t</a> protocol, uint32_t bitWidth)</td></tr>
<tr class="memdesc:ga9909a32fcd8fb65497a0971169f02b6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the audio transfer protocol. <a href="#ga9909a32fcd8fb65497a0971169f02b6f">More...</a><br/></td></tr>
<tr class="separator:ga9909a32fcd8fb65497a0971169f02b6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7eec024331e152d41eb21b4de0dcb50b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga7eec024331e152d41eb21b4de0dcb50b">CS42888_SetFuncMode</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, <a class="el" href="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a> mode)</td></tr>
<tr class="memdesc:ga7eec024331e152d41eb21b4de0dcb50b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set CS42888 to differernt working mode. <a href="#ga7eec024331e152d41eb21b4de0dcb50b">More...</a><br/></td></tr>
<tr class="separator:ga7eec024331e152d41eb21b4de0dcb50b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga206dde5ac0fb4ad77ce3b3e68a5f03e0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga206dde5ac0fb4ad77ce3b3e68a5f03e0">CS42888_SelectFunctionalMode</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, <a class="el" href="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a> adcMode, <a class="el" href="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a> dacMode)</td></tr>
<tr class="memdesc:ga206dde5ac0fb4ad77ce3b3e68a5f03e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set CS42888 to differernt functional mode. <a href="#ga206dde5ac0fb4ad77ce3b3e68a5f03e0">More...</a><br/></td></tr>
<tr class="separator:ga206dde5ac0fb4ad77ce3b3e68a5f03e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga213cbbee89c91489164c8ab704ff468b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga213cbbee89c91489164c8ab704ff468b">CS42888_SetAOUTVolume</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, uint8_t channel, uint8_t volume)</td></tr>
<tr class="memdesc:ga213cbbee89c91489164c8ab704ff468b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the volume of different modules in CS42888. <a href="#ga213cbbee89c91489164c8ab704ff468b">More...</a><br/></td></tr>
<tr class="separator:ga213cbbee89c91489164c8ab704ff468b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae86544adbe99c855a60db68b11e40960"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#gae86544adbe99c855a60db68b11e40960">CS42888_SetAINVolume</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, uint8_t channel, uint8_t volume)</td></tr>
<tr class="memdesc:gae86544adbe99c855a60db68b11e40960"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the volume of different modules in CS42888. <a href="#gae86544adbe99c855a60db68b11e40960">More...</a><br/></td></tr>
<tr class="separator:gae86544adbe99c855a60db68b11e40960"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2e5e55bf98bd6af70483e36d94f5c173"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga2e5e55bf98bd6af70483e36d94f5c173">CS42888_GetAOUTVolume</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, uint8_t channel)</td></tr>
<tr class="memdesc:ga2e5e55bf98bd6af70483e36d94f5c173"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the volume of different AOUT channel in CS42888. <a href="#ga2e5e55bf98bd6af70483e36d94f5c173">More...</a><br/></td></tr>
<tr class="separator:ga2e5e55bf98bd6af70483e36d94f5c173"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafc22378afb83464ee651b35187aa57c0"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#gafc22378afb83464ee651b35187aa57c0">CS42888_GetAINVolume</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, uint8_t channel)</td></tr>
<tr class="memdesc:gafc22378afb83464ee651b35187aa57c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the volume of different AIN channel in CS42888. <a href="#gafc22378afb83464ee651b35187aa57c0">More...</a><br/></td></tr>
<tr class="separator:gafc22378afb83464ee651b35187aa57c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga55964f9ec6f7f9dd0f066a2aa50187ab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga55964f9ec6f7f9dd0f066a2aa50187ab">CS42888_SetMute</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, uint8_t channelMask)</td></tr>
<tr class="memdesc:ga55964f9ec6f7f9dd0f066a2aa50187ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mute modules in CS42888. <a href="#ga55964f9ec6f7f9dd0f066a2aa50187ab">More...</a><br/></td></tr>
<tr class="separator:ga55964f9ec6f7f9dd0f066a2aa50187ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf995fa288cfd403c1dcdc7286edcdb48"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#gaf995fa288cfd403c1dcdc7286edcdb48">CS42888_SetChannelMute</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, uint8_t channel, bool isMute)</td></tr>
<tr class="memdesc:gaf995fa288cfd403c1dcdc7286edcdb48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mute channel modules in CS42888. <a href="#gaf995fa288cfd403c1dcdc7286edcdb48">More...</a><br/></td></tr>
<tr class="separator:gaf995fa288cfd403c1dcdc7286edcdb48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2664a02181180546f17d0ec2a35f227b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga2664a02181180546f17d0ec2a35f227b">CS42888_SetModule</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, <a class="el" href="a00014.html#ga7151227626166a33aa10d24aa7e6a53e">cs42888_module_t</a> module, bool isEnabled)</td></tr>
<tr class="memdesc:ga2664a02181180546f17d0ec2a35f227b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable/disable expected devices. <a href="#ga2664a02181180546f17d0ec2a35f227b">More...</a><br/></td></tr>
<tr class="separator:ga2664a02181180546f17d0ec2a35f227b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1cc19dbe338c5dac380a6d4f8747b7e9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga1cc19dbe338c5dac380a6d4f8747b7e9">CS42888_ConfigDataFormat</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, uint32_t mclk, uint32_t sample_rate, uint32_t bits)</td></tr>
<tr class="memdesc:ga1cc19dbe338c5dac380a6d4f8747b7e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configure the data format of audio data. <a href="#ga1cc19dbe338c5dac380a6d4f8747b7e9">More...</a><br/></td></tr>
<tr class="separator:ga1cc19dbe338c5dac380a6d4f8747b7e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaac05142d661f4cc16706b59f5bb6c03d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#gaac05142d661f4cc16706b59f5bb6c03d">CS42888_WriteReg</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, uint8_t reg, uint8_t val)</td></tr>
<tr class="memdesc:gaac05142d661f4cc16706b59f5bb6c03d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write register to CS42888 using I2C. <a href="#gaac05142d661f4cc16706b59f5bb6c03d">More...</a><br/></td></tr>
<tr class="separator:gaac05142d661f4cc16706b59f5bb6c03d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7d6fae89e3f167613b9aeabe65380918"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga7d6fae89e3f167613b9aeabe65380918">CS42888_ReadReg</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, uint8_t reg, uint8_t *val)</td></tr>
<tr class="memdesc:ga7d6fae89e3f167613b9aeabe65380918"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read register from CS42888 using I2C. <a href="#ga7d6fae89e3f167613b9aeabe65380918">More...</a><br/></td></tr>
<tr class="separator:ga7d6fae89e3f167613b9aeabe65380918"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9338f9003a76f3d7f71156f49e7ce293"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga9338f9003a76f3d7f71156f49e7ce293">CS42888_ModifyReg</a> (<a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *handle, uint8_t reg, uint8_t mask, uint8_t val)</td></tr>
<tr class="memdesc:ga9338f9003a76f3d7f71156f49e7ce293"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify some bits in the register using I2C. <a href="#ga9338f9003a76f3d7f71156f49e7ce293">More...</a><br/></td></tr>
<tr class="separator:ga9338f9003a76f3d7f71156f49e7ce293"><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:ga469630e0b22b4bc480718055fd9bdff1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ga469630e0b22b4bc480718055fd9bdff1">FSL_CS42888_DRIVER_VERSION</a>&#160;&#160;&#160;(<a class="el" href="a00242.html#ga812138aa3315b0c6953c1a26130bcc37">MAKE_VERSION</a>(2, 1, 3))</td></tr>
<tr class="memdesc:ga469630e0b22b4bc480718055fd9bdff1"><td class="mdescLeft">&#160;</td><td class="mdescRight">cs42888 driver version 2.1.3. <a href="#ga469630e0b22b4bc480718055fd9bdff1">More...</a><br/></td></tr>
<tr class="separator:ga469630e0b22b4bc480718055fd9bdff1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="a00309" id="a00309"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _cs42888_audio_format</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:a10d00b0e91e9fbf33c7c77bb104ef21b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a10d00b0e91e9fbf33c7c77bb104ef21b"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a10d00b0e91e9fbf33c7c77bb104ef21b">mclk_HZ</a></td></tr>
<tr class="memdesc:a10d00b0e91e9fbf33c7c77bb104ef21b"><td class="mdescLeft">&#160;</td><td class="mdescRight">master clock frequency <br/></td></tr>
<tr class="separator:a10d00b0e91e9fbf33c7c77bb104ef21b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a407c0f6d0c5c140f36ead6b8561f1289"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a407c0f6d0c5c140f36ead6b8561f1289"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a407c0f6d0c5c140f36ead6b8561f1289">sampleRate</a></td></tr>
<tr class="memdesc:a407c0f6d0c5c140f36ead6b8561f1289"><td class="mdescLeft">&#160;</td><td class="mdescRight">sample rate <br/></td></tr>
<tr class="separator:a407c0f6d0c5c140f36ead6b8561f1289"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a621a1b1ed908192a1b313d5114a2084e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a621a1b1ed908192a1b313d5114a2084e"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a621a1b1ed908192a1b313d5114a2084e">bitWidth</a></td></tr>
<tr class="memdesc:a621a1b1ed908192a1b313d5114a2084e"><td class="mdescLeft">&#160;</td><td class="mdescRight">bit width <br/></td></tr>
<tr class="separator:a621a1b1ed908192a1b313d5114a2084e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div>
</div>
<a name="a00446" id="a00446"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct cs42888_config</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"></div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:a0aef75d2e780c2ab20b977502074d919"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0aef75d2e780c2ab20b977502074d919"></a>
<a class="el" href="a00014.html#ga0f2c856d60f3b94bafd6f3c4ed4027ed">cs42888_bus_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a0aef75d2e780c2ab20b977502074d919">bus</a></td></tr>
<tr class="memdesc:a0aef75d2e780c2ab20b977502074d919"><td class="mdescLeft">&#160;</td><td class="mdescRight">Audio transfer protocol. <br/></td></tr>
<tr class="separator:a0aef75d2e780c2ab20b977502074d919"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c87c9ae3ce51bf8f9e3279178d8b0ac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c87c9ae3ce51bf8f9e3279178d8b0ac"></a>
<a class="el" href="a00014.html#ga8f705faa4b3075e9293c448b3a0fb1db">cs42888_audio_format_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a5c87c9ae3ce51bf8f9e3279178d8b0ac">format</a></td></tr>
<tr class="memdesc:a5c87c9ae3ce51bf8f9e3279178d8b0ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">cs42888 audio format <br/></td></tr>
<tr class="separator:a5c87c9ae3ce51bf8f9e3279178d8b0ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed6855eea5768e26bd55a38d4b9594bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#aed6855eea5768e26bd55a38d4b9594bf">ADCMode</a></td></tr>
<tr class="memdesc:aed6855eea5768e26bd55a38d4b9594bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 ADC function mode. <a href="#aed6855eea5768e26bd55a38d4b9594bf">More...</a><br/></td></tr>
<tr class="separator:aed6855eea5768e26bd55a38d4b9594bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a282d7645529df380a7128e952c4a5875"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a282d7645529df380a7128e952c4a5875">DACMode</a></td></tr>
<tr class="memdesc:a282d7645529df380a7128e952c4a5875"><td class="mdescLeft">&#160;</td><td class="mdescRight">CS42888 DAC function mode. <a href="#a282d7645529df380a7128e952c4a5875">More...</a><br/></td></tr>
<tr class="separator:a282d7645529df380a7128e952c4a5875"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a266dc8f1cd4ebf48685b7bdea543feec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a266dc8f1cd4ebf48685b7bdea543feec"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a266dc8f1cd4ebf48685b7bdea543feec">master</a></td></tr>
<tr class="memdesc:a266dc8f1cd4ebf48685b7bdea543feec"><td class="mdescLeft">&#160;</td><td class="mdescRight">true is master, false is slave <br/></td></tr>
<tr class="separator:a266dc8f1cd4ebf48685b7bdea543feec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f3b211b95780eb127952ca275bbfdb0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6f3b211b95780eb127952ca275bbfdb0"></a>
<a class="el" href="a00012.html#ga7cef6c41744cbf081437214aa3a6acec">codec_i2c_config_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a6f3b211b95780eb127952ca275bbfdb0">i2cConfig</a></td></tr>
<tr class="memdesc:a6f3b211b95780eb127952ca275bbfdb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">i2c bus configuration <br/></td></tr>
<tr class="separator:a6f3b211b95780eb127952ca275bbfdb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63d9fe669c4cea85a7bdb83e5cd354b4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63d9fe669c4cea85a7bdb83e5cd354b4"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a63d9fe669c4cea85a7bdb83e5cd354b4">slaveAddress</a></td></tr>
<tr class="memdesc:a63d9fe669c4cea85a7bdb83e5cd354b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">slave address <br/></td></tr>
<tr class="separator:a63d9fe669c4cea85a7bdb83e5cd354b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8f2ea58d447aa80a72ec6bc6c824f15"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae8f2ea58d447aa80a72ec6bc6c824f15"></a>
<a class="el" href="a00014.html#ga5fe323798009a9b45302adece010e3e0">cs42888_reset</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ae8f2ea58d447aa80a72ec6bc6c824f15">reset</a></td></tr>
<tr class="memdesc:ae8f2ea58d447aa80a72ec6bc6c824f15"><td class="mdescLeft">&#160;</td><td class="mdescRight">reset function pointer <br/></td></tr>
<tr class="separator:ae8f2ea58d447aa80a72ec6bc6c824f15"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="aed6855eea5768e26bd55a38d4b9594bf"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a> cs42888_config::ADCMode</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a282d7645529df380a7128e952c4a5875"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a> cs42888_config::DACMode</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<a name="a00310" id="a00310"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _cs42888_handle</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"></div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:a91dd3acb8b54ad7c9b31ee4640675572"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a91dd3acb8b54ad7c9b31ee4640675572"></a>
<a class="el" href="a00014.html#gab738cdffee1c037e754566c0c0856daf">cs42888_config_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a91dd3acb8b54ad7c9b31ee4640675572">config</a></td></tr>
<tr class="memdesc:a91dd3acb8b54ad7c9b31ee4640675572"><td class="mdescLeft">&#160;</td><td class="mdescRight">cs42888 config pointer <br/></td></tr>
<tr class="separator:a91dd3acb8b54ad7c9b31ee4640675572"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe4ae0d2677d079f71af2b531ee3991f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe4ae0d2677d079f71af2b531ee3991f"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#abe4ae0d2677d079f71af2b531ee3991f">i2cHandle</a> [<a class="el" href="a00014.html#ga953230c47c19e6eb63913ae2b64e1ae5">CS42888_I2C_HANDLER_SIZE</a>]</td></tr>
<tr class="memdesc:abe4ae0d2677d079f71af2b531ee3991f"><td class="mdescLeft">&#160;</td><td class="mdescRight">i2c handle pointer <br/></td></tr>
<tr class="separator:abe4ae0d2677d079f71af2b531ee3991f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="ga469630e0b22b4bc480718055fd9bdff1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FSL_CS42888_DRIVER_VERSION&#160;&#160;&#160;(<a class="el" href="a00242.html#ga812138aa3315b0c6953c1a26130bcc37">MAKE_VERSION</a>(2, 1, 3))</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga8996629a1d0330f394495461ceb4957b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define CS42888_ID&#160;&#160;&#160;0x01U</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga3758dc010c2ce784b57cf530610bee26"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define CS42888_I2C_ADDR&#160;&#160;&#160;0x48U</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="ga1ab2b08437ff0240d91298dec0fc957b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="a00014.html#ga0181f6f0d547da193db4a61149cf84d0">_CS42888_func_mode</a> <a class="el" href="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga7151227626166a33aa10d24aa7e6a53e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="a00014.html#gae2b10bb2968b31b5745cc6f091b7ab24">_CS42888_module</a> <a class="el" href="a00014.html#ga7151227626166a33aa10d24aa7e6a53e">cs42888_module_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga0f2c856d60f3b94bafd6f3c4ed4027ed"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="a00014.html#ga6b8dfab01be44c83e79f6d913d9526bd">_CS42888_bus</a> <a class="el" href="a00014.html#ga0f2c856d60f3b94bafd6f3c4ed4027ed">cs42888_bus_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="ga0181f6f0d547da193db4a61149cf84d0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00014.html#ga0181f6f0d547da193db4a61149cf84d0">_CS42888_func_mode</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="gga0181f6f0d547da193db4a61149cf84d0a57b2cc424116839aeec3d1c2e53bfff4"></a>kCS42888_ModeMasterSSM</em>&nbsp;</td><td class="fielddoc">
<p>master single speed mode </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga0181f6f0d547da193db4a61149cf84d0a11b7086a5f9cfc75f35718710815780c"></a>kCS42888_ModeMasterDSM</em>&nbsp;</td><td class="fielddoc">
<p>master dual speed mode </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga0181f6f0d547da193db4a61149cf84d0a2d0f655396420774935b01b1b01b315a"></a>kCS42888_ModeMasterQSM</em>&nbsp;</td><td class="fielddoc">
<p>master quad speed mode </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga0181f6f0d547da193db4a61149cf84d0aa6dd80e639d0173bafda96b4df37c96a"></a>kCS42888_ModeSlave</em>&nbsp;</td><td class="fielddoc">
<p>master single speed mode </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gae2b10bb2968b31b5745cc6f091b7ab24"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00014.html#gae2b10bb2968b31b5745cc6f091b7ab24">_CS42888_module</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="ggae2b10bb2968b31b5745cc6f091b7ab24a0c3edb05c683d99b43b1afffa92c7745"></a>kCS42888_ModuleDACPair1</em>&nbsp;</td><td class="fielddoc">
<p>DAC pair1 (AOUT1 and AOUT2) module in CS42888. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae2b10bb2968b31b5745cc6f091b7ab24a12297793c9f7de6c5df5dd506ba81600"></a>kCS42888_ModuleDACPair2</em>&nbsp;</td><td class="fielddoc">
<p>DAC pair2 (AOUT3 and AOUT4) module in CS42888. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae2b10bb2968b31b5745cc6f091b7ab24a45072abfadea932906a4e536dbb7d5a4"></a>kCS42888_ModuleDACPair3</em>&nbsp;</td><td class="fielddoc">
<p>DAC pair3 (AOUT5 and AOUT6) module in CS42888. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae2b10bb2968b31b5745cc6f091b7ab24a3d1833e1a30aa83df7c3174ff3ab63a9"></a>kCS42888_ModuleDACPair4</em>&nbsp;</td><td class="fielddoc">
<p>DAC pair4 (AOUT7 and AOUT8) module in CS42888. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae2b10bb2968b31b5745cc6f091b7ab24a9e6ae9226aa29208f3fde450a3a2ae69"></a>kCS42888_ModuleADCPair1</em>&nbsp;</td><td class="fielddoc">
<p>ADC pair1 (AIN1 and AIN2) module in CS42888. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae2b10bb2968b31b5745cc6f091b7ab24a3863290d03b58c95e2ae8824fe99aac6"></a>kCS42888_ModuleADCPair2</em>&nbsp;</td><td class="fielddoc">
<p>ADC pair2 (AIN3 and AIN4) module in CS42888. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga6b8dfab01be44c83e79f6d913d9526bd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00014.html#ga6b8dfab01be44c83e79f6d913d9526bd">_CS42888_bus</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="gga6b8dfab01be44c83e79f6d913d9526bda7685b48742dd9b6a928673cb716dc496"></a>kCS42888_BusLeftJustified</em>&nbsp;</td><td class="fielddoc">
<p>Left justified format, up to 24 bits. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga6b8dfab01be44c83e79f6d913d9526bdaeef13df8577ef9bfde4a8390d5b0ccd9"></a>kCS42888_BusI2S</em>&nbsp;</td><td class="fielddoc">
<p>I2S format, up to 24 bits. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga6b8dfab01be44c83e79f6d913d9526bda4d55c55bf343966060e2a1a756445629"></a>kCS42888_BusRightJustified</em>&nbsp;</td><td class="fielddoc">
<p>Right justified, can support 16bits and 24 bits. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga6b8dfab01be44c83e79f6d913d9526bda7c862e2ffab7396a543b9a07df682c7d"></a>kCS42888_BusOL1</em>&nbsp;</td><td class="fielddoc">
<p>One-Line #1 mode. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga6b8dfab01be44c83e79f6d913d9526bda440e9e0d3ebd0431de4690b05bffcf5f"></a>kCS42888_BusOL2</em>&nbsp;</td><td class="fielddoc">
<p>One-Line #2 mode. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga6b8dfab01be44c83e79f6d913d9526bdaf1ae036e2e350aabfe39cd29bace6d32"></a>kCS42888_BusTDM</em>&nbsp;</td><td class="fielddoc">
<p>TDM mode. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga9334a5b9057f32da96db9b5c6a045d67"></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="_cs42888_play_channel"></a></p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga9334a5b9057f32da96db9b5c6a045d67a40c873d24063247f27786a37ae99f4e5"></a>kCS42888_AOUT1</em>&nbsp;</td><td class="fielddoc">
<p>aout1 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9334a5b9057f32da96db9b5c6a045d67a4e25320a6e1770c4782c0776bd6708e2"></a>kCS42888_AOUT2</em>&nbsp;</td><td class="fielddoc">
<p>aout2 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9334a5b9057f32da96db9b5c6a045d67a3635f95f2c41320a933acb215a07ea1e"></a>kCS42888_AOUT3</em>&nbsp;</td><td class="fielddoc">
<p>aout3 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9334a5b9057f32da96db9b5c6a045d67ad9aedebf8ecd41a35099a221194985ae"></a>kCS42888_AOUT4</em>&nbsp;</td><td class="fielddoc">
<p>aout4 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9334a5b9057f32da96db9b5c6a045d67a5433074d6d61dc9a342dd07880ad8013"></a>kCS42888_AOUT5</em>&nbsp;</td><td class="fielddoc">
<p>aout5 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9334a5b9057f32da96db9b5c6a045d67a5523459f137c68559e45279689b3c9d1"></a>kCS42888_AOUT6</em>&nbsp;</td><td class="fielddoc">
<p>aout6 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9334a5b9057f32da96db9b5c6a045d67a4c5575ba57cca766bc4f8a1971065b5a"></a>kCS42888_AOUT7</em>&nbsp;</td><td class="fielddoc">
<p>aout7 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga9334a5b9057f32da96db9b5c6a045d67a317c6f4677e7331aeee1270eefd18981"></a>kCS42888_AOUT8</em>&nbsp;</td><td class="fielddoc">
<p>aout8 </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="gaaedecae1ab48066f40067f938b45e246"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_Init </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_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="a00014.html#gab738cdffee1c037e754566c0c0856daf">cs42888_config_t</a> *&#160;</td>
<td class="paramname"><em>config</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The second parameter is NULL to CS42888 in this version. If users want to change the settings, they have to use cs42888_write_reg() or cs42888_modify_reg() to set the register value of CS42888. Note: If the codec_config is NULL, it would initialize CS42888 using default settings. The default setting: codec_config-&gt;bus = kCS42888_BusI2S codec_config-&gt;ADCmode = kCS42888_ModeSlave codec_config-&gt;DACmode = kCS42888_ModeSlave</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>CS42888 handle structure. </td></tr>
<tr><td class="paramname">config</td><td>CS42888 configuration structure. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga9f3f2e2ab36b350ac9e7687ac068c924"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_Deinit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function close all modules in CS42888 to save power.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>CS42888 handle structure pointer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga9909a32fcd8fb65497a0971169f02b6f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_SetProtocol </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_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="a00014.html#ga0f2c856d60f3b94bafd6f3c4ed4027ed">cs42888_bus_t</a>&#160;</td>
<td class="paramname"><em>protocol</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>bitWidth</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>CS42888 only supports I2S, left justified, right justified, PCM A, PCM B format.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>CS42888 handle structure. </td></tr>
<tr><td class="paramname">protocol</td><td>Audio data transfer protocol. </td></tr>
<tr><td class="paramname">bitWidth</td><td>bit width </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga7eec024331e152d41eb21b4de0dcb50b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void CS42888_SetFuncMode </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_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="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a>&#160;</td>
<td class="paramname"><em>mode</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="a00296.html#_deprecated000015">Deprecated:</a></b></dt><dd>api, Do not use it anymore. It has been superceded by <a class="el" href="a00014.html#ga206dde5ac0fb4ad77ce3b3e68a5f03e0">CS42888_SelectFunctionalMode</a>.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>CS42888 handle structure. </td></tr>
<tr><td class="paramname">mode</td><td>differenht working mode of CS42888. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga206dde5ac0fb4ad77ce3b3e68a5f03e0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_SelectFunctionalMode </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_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="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a>&#160;</td>
<td class="paramname"><em>adcMode</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00014.html#ga1ab2b08437ff0240d91298dec0fc957b">cs42888_func_mode</a>&#160;</td>
<td class="paramname"><em>dacMode</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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">adcMode</td><td>differenht working mode of CS42888. </td></tr>
<tr><td class="paramname">dacMode</td><td>differenht working mode of CS42888. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga213cbbee89c91489164c8ab704ff468b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_SetAOUTVolume </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>channel</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_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 CS42888 modules. Uses need to appoint the module. 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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">channel</td><td>AOUT channel, it shall be 1~8. </td></tr>
<tr><td class="paramname">volume</td><td>Volume value need to be set. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gae86544adbe99c855a60db68b11e40960"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_SetAINVolume </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>channel</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_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 CS42888 modules. Uses need to appoint the module. 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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">channel</td><td>AIN channel, it shall be 1~4. </td></tr>
<tr><td class="paramname">volume</td><td>Volume value need to be set. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga2e5e55bf98bd6af70483e36d94f5c173"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t CS42888_GetAOUTVolume </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>channel</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 CS42888 modules. Uses need to appoint the module. 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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">channel</td><td>AOUT channel, it shall be 1~8. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gafc22378afb83464ee651b35187aa57c0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t CS42888_GetAINVolume </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>channel</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 CS42888 modules. Uses need to appoint the module. 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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">channel</td><td>AIN channel, it shall be 1~4. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga55964f9ec6f7f9dd0f066a2aa50187ab"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_SetMute </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>channelMask</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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">channelMask</td><td>Channel mask for mute. Mute channel 0, it shall be 0x1, while mute channel 0 and 1, it shall be 0x3. Mute all channel, it shall be 0xFF. Each bit represent one channel, 1 means mute, 0 means unmute. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaf995fa288cfd403c1dcdc7286edcdb48"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_SetChannelMute </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>channel</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>isMute</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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">channel</td><td>reference _cs42888_play_channel. </td></tr>
<tr><td class="paramname">isMute</td><td>true is mute, falase is unmute. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga2664a02181180546f17d0ec2a35f227b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_SetModule </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_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="a00014.html#ga7151227626166a33aa10d24aa7e6a53e">cs42888_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>isEnabled</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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">module</td><td>Module expected to enable. </td></tr>
<tr><td class="paramname">isEnabled</td><td>Enable or disable moudles. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga1cc19dbe338c5dac380a6d4f8747b7e9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_ConfigDataFormat </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_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>CS42888 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 CS42888. CS42888 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 (CS42888 only supports 16bit, 20bit, 24bit and 32 bit in HW). </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaac05142d661f4cc16706b59f5bb6c03d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_WriteReg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>reg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">reg</td><td>The register address in CS42888. </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="ga7d6fae89e3f167613b9aeabe65380918"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_ReadReg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>reg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">reg</td><td>The register address in CS42888. </td></tr>
<tr><td class="paramname">val</td><td>Value written to. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga9338f9003a76f3d7f71156f49e7ce293"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00242.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> CS42888_ModifyReg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00014.html#gad32b5ec50e313050a3c4ba0ec2eef663">cs42888_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>reg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mask</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_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>CS42888 handle structure. </td></tr>
<tr><td class="paramname">reg</td><td>The register address in CS42888. </td></tr>
<tr><td class="paramname">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>