This repository has been archived on 2024-08-19. You can view files and clone it, but cannot push or open issues or pull requests.
Arduino/JQ6500_Serial-master/docs/html/class_j_q6500___serial.html
2023-07-03 13:45:36 +03:00

916 lines
48 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.9.1"/>
<title>JQ6500 MP3 Player Arduino Library: JQ6500_Serial Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.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/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">JQ6500 MP3 Player Arduino Library
</div>
<div id="projectbrief">A simple library to control a JQ6500 MP3 Player Module from an Arduino.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
<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 class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</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 id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></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('class_j_q6500___serial.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)">
</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="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="class_j_q6500___serial-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">JQ6500_Serial Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Inherits SoftwareSerial.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a37e8e9d6d1eeb5f77efa42a4fdb510d0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a37e8e9d6d1eeb5f77efa42a4fdb510d0">JQ6500_Serial</a> (short rxPin, short txPin)</td></tr>
<tr class="memdesc:a37e8e9d6d1eeb5f77efa42a4fdb510d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create JQ6500 object. <a href="#a37e8e9d6d1eeb5f77efa42a4fdb510d0">More...</a><br /></td></tr>
<tr class="separator:a37e8e9d6d1eeb5f77efa42a4fdb510d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3fbb860a8c7e061bdcc16c06e20547f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3fbb860a8c7e061bdcc16c06e20547f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#ae3fbb860a8c7e061bdcc16c06e20547f">play</a> ()</td></tr>
<tr class="memdesc:ae3fbb860a8c7e061bdcc16c06e20547f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start playing the current file. <br /></td></tr>
<tr class="separator:ae3fbb860a8c7e061bdcc16c06e20547f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80a2ef4fbb20aa984eca0ddb03328718"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a80a2ef4fbb20aa984eca0ddb03328718">restart</a> ()</td></tr>
<tr class="memdesc:a80a2ef4fbb20aa984eca0ddb03328718"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restart the current (possibly paused) track from the beginning. <a href="#a80a2ef4fbb20aa984eca0ddb03328718">More...</a><br /></td></tr>
<tr class="separator:a80a2ef4fbb20aa984eca0ddb03328718"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6265593f16bb2268e64938de5e4d881"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#ad6265593f16bb2268e64938de5e4d881">pause</a> ()</td></tr>
<tr class="memdesc:ad6265593f16bb2268e64938de5e4d881"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pause the current file. <a href="#ad6265593f16bb2268e64938de5e4d881">More...</a><br /></td></tr>
<tr class="separator:ad6265593f16bb2268e64938de5e4d881"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1479a28386d265ad160b4638b60f4b52"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1479a28386d265ad160b4638b60f4b52"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a1479a28386d265ad160b4638b60f4b52">next</a> ()</td></tr>
<tr class="memdesc:a1479a28386d265ad160b4638b60f4b52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Play the next file. <br /></td></tr>
<tr class="separator:a1479a28386d265ad160b4638b60f4b52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a0c4dd1b805fd1799395e01cf022da9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a0c4dd1b805fd1799395e01cf022da9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a0a0c4dd1b805fd1799395e01cf022da9">prev</a> ()</td></tr>
<tr class="memdesc:a0a0c4dd1b805fd1799395e01cf022da9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Play the previous file. <br /></td></tr>
<tr class="separator:a0a0c4dd1b805fd1799395e01cf022da9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a933e15d95030635f97fd30bb1a86c8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a933e15d95030635f97fd30bb1a86c8"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a0a933e15d95030635f97fd30bb1a86c8">nextFolder</a> ()</td></tr>
<tr class="memdesc:a0a933e15d95030635f97fd30bb1a86c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Play the next folder. <br /></td></tr>
<tr class="separator:a0a933e15d95030635f97fd30bb1a86c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad11c922dfd1b670e394fa57ee6ce4955"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad11c922dfd1b670e394fa57ee6ce4955"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#ad11c922dfd1b670e394fa57ee6ce4955">prevFolder</a> ()</td></tr>
<tr class="memdesc:ad11c922dfd1b670e394fa57ee6ce4955"><td class="mdescLeft">&#160;</td><td class="mdescRight">Play the previous folder. <br /></td></tr>
<tr class="separator:ad11c922dfd1b670e394fa57ee6ce4955"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaaa94916df5363cf9d4f843af112688d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#aaaa94916df5363cf9d4f843af112688d">playFileByIndexNumber</a> (unsigned int fileNumber)</td></tr>
<tr class="memdesc:aaaa94916df5363cf9d4f843af112688d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Play a specific file based on it's (FAT table) index number. <a href="#aaaa94916df5363cf9d4f843af112688d">More...</a><br /></td></tr>
<tr class="separator:aaaa94916df5363cf9d4f843af112688d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a355abffc73948ed3929889bc822d17d4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a355abffc73948ed3929889bc822d17d4">playFileNumberInFolderNumber</a> (unsigned int folderNumber, unsigned int fileNumber)</td></tr>
<tr class="memdesc:a355abffc73948ed3929889bc822d17d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Play a specific file in a specific folder based on the name of those folder and file. <a href="#a355abffc73948ed3929889bc822d17d4">More...</a><br /></td></tr>
<tr class="separator:a355abffc73948ed3929889bc822d17d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7af96fb244cf2a75b2a735771ab69b72"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a7af96fb244cf2a75b2a735771ab69b72">volumeUp</a> ()</td></tr>
<tr class="memdesc:a7af96fb244cf2a75b2a735771ab69b72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increase the volume by 1 (volume ranges 0 to 30). <a href="#a7af96fb244cf2a75b2a735771ab69b72">More...</a><br /></td></tr>
<tr class="separator:a7af96fb244cf2a75b2a735771ab69b72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48c715b6ba9ebea42ccd704cff7f0fb3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a48c715b6ba9ebea42ccd704cff7f0fb3">volumeDn</a> ()</td></tr>
<tr class="memdesc:a48c715b6ba9ebea42ccd704cff7f0fb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrease the volume by 1 (volume ranges 0 to 30). <a href="#a48c715b6ba9ebea42ccd704cff7f0fb3">More...</a><br /></td></tr>
<tr class="separator:a48c715b6ba9ebea42ccd704cff7f0fb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5817319d586676bd91b314f722eec699"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a5817319d586676bd91b314f722eec699">setVolume</a> (byte volumeFrom0To30)</td></tr>
<tr class="memdesc:a5817319d586676bd91b314f722eec699"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the volume to a specific level (0 to 30). <a href="#a5817319d586676bd91b314f722eec699">More...</a><br /></td></tr>
<tr class="separator:a5817319d586676bd91b314f722eec699"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1d7c2adac6d94e1a5b36195095b4f37"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#ad1d7c2adac6d94e1a5b36195095b4f37">setEqualizer</a> (byte equalizerMode)</td></tr>
<tr class="memdesc:ad1d7c2adac6d94e1a5b36195095b4f37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the equalizer to one of 6 preset modes. <a href="#ad1d7c2adac6d94e1a5b36195095b4f37">More...</a><br /></td></tr>
<tr class="separator:ad1d7c2adac6d94e1a5b36195095b4f37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96783219caa0d849f6e48540f312fd20"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a96783219caa0d849f6e48540f312fd20">setLoopMode</a> (byte loopMode)</td></tr>
<tr class="memdesc:a96783219caa0d849f6e48540f312fd20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the looping mode. <a href="#a96783219caa0d849f6e48540f312fd20">More...</a><br /></td></tr>
<tr class="separator:a96783219caa0d849f6e48540f312fd20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af730b77807371203d79bc2824f69986b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#af730b77807371203d79bc2824f69986b">setSource</a> (byte source)</td></tr>
<tr class="memdesc:af730b77807371203d79bc2824f69986b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the source to read mp3 data from. <a href="#af730b77807371203d79bc2824f69986b">More...</a><br /></td></tr>
<tr class="separator:af730b77807371203d79bc2824f69986b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2637fb1a98af48facc7bd0854e512d17"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a2637fb1a98af48facc7bd0854e512d17">sleep</a> ()</td></tr>
<tr class="memdesc:a2637fb1a98af48facc7bd0854e512d17"><td class="mdescLeft">&#160;</td><td class="mdescRight">Put the device to sleep. <a href="#a2637fb1a98af48facc7bd0854e512d17">More...</a><br /></td></tr>
<tr class="separator:a2637fb1a98af48facc7bd0854e512d17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a656a4a915ca0ca29ef6d6cb3311efa42"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a656a4a915ca0ca29ef6d6cb3311efa42">reset</a> ()</td></tr>
<tr class="memdesc:a656a4a915ca0ca29ef6d6cb3311efa42"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the device (softly). <a href="#a656a4a915ca0ca29ef6d6cb3311efa42">More...</a><br /></td></tr>
<tr class="separator:a656a4a915ca0ca29ef6d6cb3311efa42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26a539cd68ac3b0ce35c8af9dd68d2cb"><td class="memItemLeft" align="right" valign="top">byte&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a26a539cd68ac3b0ce35c8af9dd68d2cb">getStatus</a> ()</td></tr>
<tr class="memdesc:a26a539cd68ac3b0ce35c8af9dd68d2cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the status from the device. <a href="#a26a539cd68ac3b0ce35c8af9dd68d2cb">More...</a><br /></td></tr>
<tr class="separator:a26a539cd68ac3b0ce35c8af9dd68d2cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43c75b0c11ec1fcc1f81173cb0fa2fc4"><td class="memItemLeft" align="right" valign="top">byte&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a43c75b0c11ec1fcc1f81173cb0fa2fc4">getVolume</a> ()</td></tr>
<tr class="memdesc:a43c75b0c11ec1fcc1f81173cb0fa2fc4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current volume level. <a href="#a43c75b0c11ec1fcc1f81173cb0fa2fc4">More...</a><br /></td></tr>
<tr class="separator:a43c75b0c11ec1fcc1f81173cb0fa2fc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8434bee28c17f1416d52b47233b7b02d"><td class="memItemLeft" align="right" valign="top">byte&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a8434bee28c17f1416d52b47233b7b02d">getEqualizer</a> ()</td></tr>
<tr class="memdesc:a8434bee28c17f1416d52b47233b7b02d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the equalizer mode. <a href="#a8434bee28c17f1416d52b47233b7b02d">More...</a><br /></td></tr>
<tr class="separator:a8434bee28c17f1416d52b47233b7b02d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a664cf9ead4482b9b8aa1f624a9946fb0"><td class="memItemLeft" align="right" valign="top">byte&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a664cf9ead4482b9b8aa1f624a9946fb0">getLoopMode</a> ()</td></tr>
<tr class="memdesc:a664cf9ead4482b9b8aa1f624a9946fb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get loop mode. <a href="#a664cf9ead4482b9b8aa1f624a9946fb0">More...</a><br /></td></tr>
<tr class="separator:a664cf9ead4482b9b8aa1f624a9946fb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7435b371bce3ee270578e1b67b992541"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a7435b371bce3ee270578e1b67b992541">countFiles</a> (byte source)</td></tr>
<tr class="memdesc:a7435b371bce3ee270578e1b67b992541"><td class="mdescLeft">&#160;</td><td class="mdescRight">Count the number of files on the specified media. <a href="#a7435b371bce3ee270578e1b67b992541">More...</a><br /></td></tr>
<tr class="separator:a7435b371bce3ee270578e1b67b992541"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4752f08b33ec78305812e0251e7ecfcc"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a4752f08b33ec78305812e0251e7ecfcc">countFolders</a> (byte source)</td></tr>
<tr class="memdesc:a4752f08b33ec78305812e0251e7ecfcc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Count the number of folders on the specified media. <a href="#a4752f08b33ec78305812e0251e7ecfcc">More...</a><br /></td></tr>
<tr class="separator:a4752f08b33ec78305812e0251e7ecfcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c56631edbde77192027a027a7dfb108"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a7c56631edbde77192027a027a7dfb108">currentFileIndexNumber</a> (byte source)</td></tr>
<tr class="memdesc:a7c56631edbde77192027a027a7dfb108"><td class="mdescLeft">&#160;</td><td class="mdescRight">For the currently playing (or paused, or file that would be played next if stopped) file, return the file's (FAT table) index number. <a href="#a7c56631edbde77192027a027a7dfb108">More...</a><br /></td></tr>
<tr class="separator:a7c56631edbde77192027a027a7dfb108"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad954738247ecb0117f0aab66e6409d24"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#ad954738247ecb0117f0aab66e6409d24">currentFilePositionInSeconds</a> ()</td></tr>
<tr class="memdesc:ad954738247ecb0117f0aab66e6409d24"><td class="mdescLeft">&#160;</td><td class="mdescRight">For the currently playing or paused file, return the current position in seconds. <a href="#ad954738247ecb0117f0aab66e6409d24">More...</a><br /></td></tr>
<tr class="separator:ad954738247ecb0117f0aab66e6409d24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc63d2b3f4902c563839cf0c6ba3e8f2"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#abc63d2b3f4902c563839cf0c6ba3e8f2">currentFileLengthInSeconds</a> ()</td></tr>
<tr class="memdesc:abc63d2b3f4902c563839cf0c6ba3e8f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">For the currently playing or paused file, return the total length of the file in seconds. <a href="#abc63d2b3f4902c563839cf0c6ba3e8f2">More...</a><br /></td></tr>
<tr class="separator:abc63d2b3f4902c563839cf0c6ba3e8f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42d8644021cd216f1fe5bd69ad161f1f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a42d8644021cd216f1fe5bd69ad161f1f">currentFileName</a> (char *buffer, unsigned int bufferLength)</td></tr>
<tr class="memdesc:a42d8644021cd216f1fe5bd69ad161f1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the name of the "current" file on the SD Card. <a href="#a42d8644021cd216f1fe5bd69ad161f1f">More...</a><br /></td></tr>
<tr class="separator:a42d8644021cd216f1fe5bd69ad161f1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a60b3b91b08c27b4a99d8cc790b9b7258"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a60b3b91b08c27b4a99d8cc790b9b7258">sendCommand</a> (byte command, byte arg1, byte arg2, char *responseBuffer, unsigned int bufferLength)</td></tr>
<tr class="memdesc:a60b3b91b08c27b4a99d8cc790b9b7258"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send a command to the JQ6500 module,. <a href="#a60b3b91b08c27b4a99d8cc790b9b7258">More...</a><br /></td></tr>
<tr class="separator:a60b3b91b08c27b4a99d8cc790b9b7258"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bc1174fa9050a28d981cc96d74a3a36"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5bc1174fa9050a28d981cc96d74a3a36"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>sendCommand</b> (byte command)</td></tr>
<tr class="separator:a5bc1174fa9050a28d981cc96d74a3a36"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86185adfb18fa0323cd461f922c03e87"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86185adfb18fa0323cd461f922c03e87"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>sendCommand</b> (byte command, byte arg1)</td></tr>
<tr class="separator:a86185adfb18fa0323cd461f922c03e87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92296a461ac0796d5ad1898a5bf30d57"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a92296a461ac0796d5ad1898a5bf30d57"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>sendCommand</b> (byte command, byte arg1, byte arg2)</td></tr>
<tr class="separator:a92296a461ac0796d5ad1898a5bf30d57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9620925f5e42c30586b6ed8300372781"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_j_q6500___serial.html#a9620925f5e42c30586b6ed8300372781">sendCommandWithUnsignedIntResponse</a> (byte command)</td></tr>
<tr class="memdesc:a9620925f5e42c30586b6ed8300372781"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send a command to the JQ6500 module, and get a response. <a href="#a9620925f5e42c30586b6ed8300372781">More...</a><br /></td></tr>
<tr class="separator:a9620925f5e42c30586b6ed8300372781"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94b614522f28f66b2822ec03165441a5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a94b614522f28f66b2822ec03165441a5"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><b>getVersion</b> ()</td></tr>
<tr class="separator:a94b614522f28f66b2822ec03165441a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33d24d803e8dc93368d570d3f44a0951"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33d24d803e8dc93368d570d3f44a0951"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><b>readBytesUntilAndIncluding</b> (char terminator, char *buffer, size_t length, byte maxOneLineOnly=0)</td></tr>
<tr class="separator:a33d24d803e8dc93368d570d3f44a0951"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ac75360b8e52af22b4316fdb243a0bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3ac75360b8e52af22b4316fdb243a0bf"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>waitUntilAvailable</b> (unsigned long maxWaitTime=1000)</td></tr>
<tr class="separator:a3ac75360b8e52af22b4316fdb243a0bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a37e8e9d6d1eeb5f77efa42a4fdb510d0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">JQ6500_Serial::JQ6500_Serial </td>
<td>(</td>
<td class="paramtype">short&#160;</td>
<td class="paramname"><em>rxPin</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">short&#160;</td>
<td class="paramname"><em>txPin</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Create JQ6500 object. </p>
<p>Example, create global instance: </p><pre class="fragment">JQ6500_Serial mp3(8,9);
</pre><h2>For a 5v Arduino: </h2>
<ul>
<li>TX on JQ6500 connects to D8 on the Arduino</li>
<li>RX on JQ6500 connects to one end of a 1k resistor, other end of resistor connects to D9 on the Arduino</li>
</ul>
<h2>For a 3v3 Arduino: </h2>
<ul>
<li>TX on JQ6500 connects to D8 on the Arduino</li>
<li>RX on JQ6500 connects to D9 on the Arduino</li>
</ul>
<p>Of course, power and ground are also required, VCC on JQ6500 is 5v tolerant (but RX isn't totally, hence the resistor above).</p>
<p>And then you can use in your setup(): </p><pre class="fragment">mp3.begin(9600)
mp3.reset();
</pre><p>and all the other commands :-) </p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a7435b371bce3ee270578e1b67b992541"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int JQ6500_Serial::countFiles </td>
<td>(</td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>source</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Count the number of files on the specified media. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">source</td><td>One of MP3_SRC_BUILTIN and MP3_SRC_SDCARD </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of files present on that media. </dd></dl>
</div>
</div>
<a class="anchor" id="a4752f08b33ec78305812e0251e7ecfcc"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int JQ6500_Serial::countFolders </td>
<td>(</td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>source</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Count the number of folders on the specified media. </p>
<p>Note that only SD Card can have folders.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">source</td><td>One of MP3_SRC_BUILTIN and MP3_SRC_SDCARD </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of folders present on that media. </dd></dl>
</div>
</div>
<a class="anchor" id="a7c56631edbde77192027a027a7dfb108"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int JQ6500_Serial::currentFileIndexNumber </td>
<td>(</td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>source</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>For the currently playing (or paused, or file that would be played next if stopped) file, return the file's (FAT table) index number. </p>
<p>This number can be used with <a class="el" href="class_j_q6500___serial.html#aaaa94916df5363cf9d4f843af112688d" title="Play a specific file based on it&#39;s (FAT table) index number. ">playFileByIndexNumber()</a>;</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">source</td><td>One of MP3_SRC_BUILTIN and MP3_SRC_SDCARD </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of file. </dd></dl>
</div>
</div>
<a class="anchor" id="abc63d2b3f4902c563839cf0c6ba3e8f2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int JQ6500_Serial::currentFileLengthInSeconds </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>For the currently playing or paused file, return the total length of the file in seconds. </p>
<dl class="section return"><dt>Returns</dt><dd>Length of audio file in seconds. </dd></dl>
</div>
</div>
<a class="anchor" id="a42d8644021cd216f1fe5bd69ad161f1f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::currentFileName </td>
<td>(</td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>buffer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>bufferLength</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the name of the "current" file on the SD Card. </p>
<p>The current file is the one that is playing, paused, or if stopped then could be next to play or last played, uncertain.</p>
<p>It would be best to only consult this when playing or paused and you know that the SD Card is the active source.</p>
<p>Unfortunately there is no way to query the device to find out which media is the active source (at least not that I know of). </p>
</div>
</div>
<a class="anchor" id="ad954738247ecb0117f0aab66e6409d24"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int JQ6500_Serial::currentFilePositionInSeconds </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>For the currently playing or paused file, return the current position in seconds. </p>
<dl class="section return"><dt>Returns</dt><dd>Number of seconds into the file currently played. </dd></dl>
</div>
</div>
<a class="anchor" id="a8434bee28c17f1416d52b47233b7b02d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">byte JQ6500_Serial::getEqualizer </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the equalizer mode. </p>
<dl class="section return"><dt>Returns</dt><dd>One of the following,</dd></dl>
<ul>
<li>MP3_EQ_NORMAL</li>
<li>MP3_EQ_POP</li>
<li>MP3_EQ_ROCK</li>
<li>MP3_EQ_JAZZ</li>
<li>MP3_EQ_CLASSIC</li>
<li>MP3_EQ_BASS </li>
</ul>
</div>
</div>
<a class="anchor" id="a664cf9ead4482b9b8aa1f624a9946fb0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">byte JQ6500_Serial::getLoopMode </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get loop mode. </p>
<dl class="section return"><dt>Returns</dt><dd>One of the following,</dd></dl>
<ul>
<li>MP3_LOOP_ALL - Loop through all files.</li>
<li>MP3_LOOP_FOLDER - Loop through all files in the same folder (SD Card only)</li>
<li>MP3_LOOP_ONE - Loop one file.</li>
<li>MP3_LOOP_RAM - Loop one file (uncertain how it is different to the previous!)</li>
<li>MP3_LOOP_NONE - No loop, just play one file and then stop. (aka MP3_LOOP_ONE_STOP) </li>
</ul>
</div>
</div>
<a class="anchor" id="a26a539cd68ac3b0ce35c8af9dd68d2cb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">byte JQ6500_Serial::getStatus </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the status from the device. </p>
<p>CAUTION! This is somewhat unreliable for the following reasons...</p>
<ol type="1">
<li>When playing from the on board memory (MP3_SRC_BUILTIN), STOPPED sems to never be returned, only PLAYING and PAUSED</li>
<li>Sometimes PAUSED is returned when it is PLAYING, to try and catch this <a class="el" href="class_j_q6500___serial.html#a26a539cd68ac3b0ce35c8af9dd68d2cb" title="Get the status from the device. ">getStatus()</a> actually queries the module several times to ensure that it is really sure about what it tells us.</li>
</ol>
<dl class="section return"><dt>Returns</dt><dd>One of MP3_STATUS_PAUSED, MP3_STATUS_PLAYING and MP3_STATUS_STOPPED </dd></dl>
</div>
</div>
<a class="anchor" id="a43c75b0c11ec1fcc1f81173cb0fa2fc4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">byte JQ6500_Serial::getVolume </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the current volume level. </p>
<dl class="section return"><dt>Returns</dt><dd>Value between 0 and 30 </dd></dl>
</div>
</div>
<a class="anchor" id="ad6265593f16bb2268e64938de5e4d881"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::pause </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Pause the current file. </p>
<p>To unpause, use <a class="el" href="class_j_q6500___serial.html#ae3fbb860a8c7e061bdcc16c06e20547f" title="Start playing the current file. ">play()</a>, to unpause and go back to beginning of track use <a class="el" href="class_j_q6500___serial.html#a80a2ef4fbb20aa984eca0ddb03328718" title="Restart the current (possibly paused) track from the beginning. ">restart()</a> </p>
</div>
</div>
<a class="anchor" id="aaaa94916df5363cf9d4f843af112688d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::playFileByIndexNumber </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>fileNumber</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Play a specific file based on it's (FAT table) index number. </p>
<p>Note that the index number has nothing to do with the file name (except if you uploaded/copied them to the media in order of file name).</p>
<p>To sort your SD Card FAT table, search for a FAT sorting utility for your operating system of choice. </p>
</div>
</div>
<a class="anchor" id="a355abffc73948ed3929889bc822d17d4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::playFileNumberInFolderNumber </td>
<td>(</td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>folderNumber</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>fileNumber</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Play a specific file in a specific folder based on the name of those folder and file. </p>
<p>Only applies to SD Card.</p>
<p>To use this function, folders must be named from 00 to 99, and the files in those folders must be named from 000.mp3 to 999.mp3</p>
<p>So to play the file on the SD Card "/03/006.mp3" use mp3.playFileNumberInFolderNumber(3, 6); </p>
</div>
</div>
<a class="anchor" id="a656a4a915ca0ca29ef6d6cb3311efa42"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::reset </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reset the device (softly). </p>
<p>It may be necessary in practice to actually power-cycle the device as sometimes it can get a bit confused, especially if changing SD Cards on-the-fly which really doesn't work too well.</p>
<p>So if designing a PCB/circuit including JQ6500 modules it might be worth while to include such ability (ie, power the device through a MOSFET which you can turn on/off at will). </p>
</div>
</div>
<a class="anchor" id="a80a2ef4fbb20aa984eca0ddb03328718"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::restart </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Restart the current (possibly paused) track from the beginning. </p>
<p>Note that this is not an actual command the JQ6500 knows what we do is mute, advance to the next track, pause, unmute, and go back to the previous track (which will cause it to start playing.</p>
<p>That said, it appears to work just fine. </p>
</div>
</div>
<a class="anchor" id="a60b3b91b08c27b4a99d8cc790b9b7258"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::sendCommand </td>
<td>(</td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>command</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>arg1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>arg2</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>responseBuffer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>bufferLength</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Send a command to the JQ6500 module,. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">command</td><td>Byte value of to send as from the datasheet. </td></tr>
<tr><td class="paramname">arg1</td><td>First (if any) argument byte </td></tr>
<tr><td class="paramname">arg2</td><td>Second (if any) argument byte </td></tr>
<tr><td class="paramname">responseBuffer</td><td>Buffer to store a single line of response, if NULL, no response is read. </td></tr>
<tr><td class="paramname">buffLength</td><td>Length of response buffer including NULL terminator. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="a9620925f5e42c30586b6ed8300372781"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">unsigned int JQ6500_Serial::sendCommandWithUnsignedIntResponse </td>
<td>(</td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>command</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Send a command to the JQ6500 module, and get a response. </p>
<p>For the query commands, the JQ6500 generally sends an integer response (over the UART as 4 hexadecimal digits).</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">command</td><td>Byte value of to send as from the datasheet. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Response from module. </dd></dl>
</div>
</div>
<a class="anchor" id="ad1d7c2adac6d94e1a5b36195095b4f37"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::setEqualizer </td>
<td>(</td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>equalizerMode</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the equalizer to one of 6 preset modes. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">equalizerMode</td><td>One of the following,</td></tr>
</table>
</dd>
</dl>
<ul>
<li>MP3_EQ_NORMAL</li>
<li>MP3_EQ_POP</li>
<li>MP3_EQ_ROCK</li>
<li>MP3_EQ_JAZZ</li>
<li>MP3_EQ_CLASSIC</li>
<li>MP3_EQ_BASS </li>
</ul>
</div>
</div>
<a class="anchor" id="a96783219caa0d849f6e48540f312fd20"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::setLoopMode </td>
<td>(</td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>loopMode</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the looping mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">loopMode</td><td>One of the following,</td></tr>
</table>
</dd>
</dl>
<ul>
<li>MP3_LOOP_ALL - Loop through all files.</li>
<li>MP3_LOOP_FOLDER - Loop through all files in the same folder (SD Card only)</li>
<li>MP3_LOOP_ONE - Loop one file.</li>
<li>MP3_LOOP_RAM - Loop one file (uncertain how it is different to the previous!)</li>
<li>MP3_LOOP_NONE - No loop, just play one file and then stop. (aka MP3_LOOP_ONE_STOP) </li>
</ul>
</div>
</div>
<a class="anchor" id="af730b77807371203d79bc2824f69986b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::setSource </td>
<td>(</td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>source</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the source to read mp3 data from. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">source</td><td>One of the following,</td></tr>
</table>
</dd>
</dl>
<ul>
<li>MP3_SRC_BUILTIN - Files read from the on-board flash memory</li>
<li>MP3_SRC_SDCARD - Files read from the SD Card (JQ6500-28P only) </li>
</ul>
</div>
</div>
<a class="anchor" id="a5817319d586676bd91b314f722eec699"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::setVolume </td>
<td>(</td>
<td class="paramtype">byte&#160;</td>
<td class="paramname"><em>volumeFrom0To30</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the volume to a specific level (0 to 30). </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">volumeFrom0To30</td><td>Level of volume to set from 0 to 30 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="a2637fb1a98af48facc7bd0854e512d17"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::sleep </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Put the device to sleep. </p>
<p>Not recommanded if you are using SD Card as for some reason it appears to cause the SD Card to not be recognised again until the device is totally powered off and on again :-/ </p>
</div>
</div>
<a class="anchor" id="a48c715b6ba9ebea42ccd704cff7f0fb3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::volumeDn </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Decrease the volume by 1 (volume ranges 0 to 30). </p>
</div>
</div>
<a class="anchor" id="a7af96fb244cf2a75b2a735771ab69b72"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void JQ6500_Serial::volumeUp </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Increase the volume by 1 (volume ranges 0 to 30). </p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>/bigdrive/home/boffin/sketchbook/libraries/JQ6500_Serial/<a class="el" href="_j_q6500___serial_8h_source.html">JQ6500_Serial.h</a></li>
<li>/bigdrive/home/boffin/sketchbook/libraries/JQ6500_Serial/<a class="el" href="_j_q6500___serial_8cpp.html">JQ6500_Serial.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="class_j_q6500___serial.html">JQ6500_Serial</a></li>
<li class="footer">Generated on Wed Feb 25 2015 14:08:34 for JQ6500 MP3 Player Arduino Library by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
</ul>
</div>
</body>
</html>