Lab_interaccio/2009/waveshield/examples.html

251 lines
14 KiB
HTML
Raw Permalink Normal View History

2025-02-25 21:21:58 +01:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html><!-- InstanceBegin template="/Templates/make/waveshield/ashield-use.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
<!-- InstanceBeginEditable name="overlib" -->
<script type="text/javascript" src="/javascript/overlib.js"><!-- overLIB (c) Erik Bosrup --></script>
<!-- InstanceEndEditable -->
<meta http-equiv="imagetoolbar" content="no" />
<LINK REL=stylesheet HREF="/css/make.css" TYPE="text/css">
<LINK REL=stylesheet HREF="/css/skeleton.css" TYPE="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<!-- InstanceBeginEditable name="doctitle" -->
<title>Audio Shield for Arduino</title>
<!-- InstanceEndEditable --><!-- InstanceBeginEditable name="head" -->
<!-- InstanceEndEditable -->
</head>
<body>
<div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>
<!-- InstanceBeginEditable name="badge" -->
<div class="topheader" ><img src="../../images/digg/topheaderbadge.png" width="171" height="190"></div>
<!-- InstanceEndEditable -->
<span class="topheadertext"><!-- InstanceBeginEditable name="heading" -->Wave Shield<!-- InstanceEndEditable --></span>
<span class="topsubheadertext"><!-- InstanceBeginEditable name="Subheading" -->Examples<!-- InstanceEndEditable --></span>
<ul id="menu">
<li class="first"></li>
<li>
<div class="menuitemtext"><a href="index.html">Overview</a></div>
</li>
<li>
<div class="menuitemtext"><a href="faq.html">FAQ</a></div>
</li>
<li>
<div class="menuitemtext"><a href="design.html">Design</a></div>
</li>
<li>
<div class="menuitemtext"><a href="make.html">Make it! </a> </div>
</li>
<li>
<div class="menuitemtext"><a href="use.html">Use it! </a></div>
<ul>
<li> <div class="menuitemtext"><a href="formatcard.htm">SD Card</a></div>
</li><li> <div class="menuitemtext"><a href="convert.html">Convert files </a></div>
</li><li> <div class="menuitemtext"><a href="library.html">Library</a></div>
</li>
<li> <div class="menuitemtext"><a href="examples.html">Examples</a></div>
</li>
</ul>
</li>
<li>
<div class="menuitemtext"><a href="download.html">Download</a></div>
</li>
<li>
<div class="menuitemtext"><a href="http://www.adafruit.com/index.php?main_page=product_info&cPath=17_21&products_id=94">Buy Kit </a></div>
</li>
<li>
<div class="menuitemtext"><a href="http://forums.ladyada.net/">Forums</a></div>
</li>
<li class="last"></li>
</ul>
<ul id="nav">
<li><a href="http://www.ladyada.net">Home</a></li>
<li><a href="http://www.ladyada.net/about.html">About<!--[if gte IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="http://www.ladyada.net/about.html">ladyada.net</a></li>
<li><a href="http://www.ladyada.net/portfolio/2007/index.html">Portfolio</a></li>
<li><a href="http://www.ladyada.net/pub/research.html">Research</a></li>
<li><a href="http://www.ladyada.net/pub/press.html">Press</a></li>
<li><a href="http://www.ladyada.net/pub/pub.html">Publication &amp; Presentation</a></li>
<li><a href="http://www.flickr.com/photos/ladyada/">Photos</a></li>
<li><a href="http://www.ladyada.net/wiki">Wiki (backend)</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li><a href="http://www.ladyada.net/make/">Projects<!--[if gte IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="#nogo">Arduino &#187;<!--[if gte IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="http://www.ladyada.net/make/eshield/">Ethernet&nbsp;Shield</a></li>
<li><a href="http://www.ladyada.net/make/gpsshield/">GPS&nbsp;Shield</a></li>
<li><a href="http://www.ladyada.net/make/pshield/">Proto&nbsp;Shield</a></li>
<li><a href="http://www.ladyada.net/make/mshield/">Motor&nbsp;Shield</a></li>
<li><a href="http://www.ladyada.net/make/waveshield/">Wave&nbsp;Shield</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
<li><a href="http://www.ladyada.net/make/boarduino/">BoArduino</a></li>
<li><a href="http://www.ladyada.net/make/digg/">DIGG&nbsp;Button</a></li>
<li><a href="http://www.ladyada.net/make/drawdio/">Drawdio</a></li>
<li><a href="http://www.ladyada.net/make/gamegrrl/">Game&nbsp;Grrl</a></li>
<li><a href="http://www.ladyada.net/make/conway/">Game&nbsp;of&nbsp;Life</a></li>
<li><a href="http://www.ladyada.net/make/midisense/">MIDIsense</a></li>
<li><a href="http://www.ladyada.net/make/minipov2/">MiniPOV2</a></li>
<li><a href="http://www.ladyada.net/make/minipov3/">MiniPOV3</a></li>
<li><a href="http://www.ladyada.net/make/minty/">MintyMP3</a></li>
<li><a href="http://www.ladyada.net/make/mintyboost/">MintyBoost</a></li>
<li><a href="http://www.ladyada.net/make/simreader/">SIM&nbsp;Reader</a></li>
<li><a href="http://www.ladyada.net/make/spokepov/">SpokePOV</a></li>
<li><a href="http://www.ladyada.net/make/tvbgone/">TV-B-Gone</a></li>
<li><a href="http://www.ladyada.net/make/usbtinyisp/">USBtinyISP</a></li>
<li><a href="http://www.ladyada.net/make/wavebubble/">Wave&nbsp;Bubble</a></li>
<li><a href="http://www.ladyada.net/make/x0xb0x/">x0xb0x</a></li>
<li><a href="http://www.ladyada.net/make/xbee/">XBee</a></li>
<li><a href="http://www.ladyada.net/make/ybox2/">YBox2</a></li>
<li><a href="#nogo">Quickies &#187;<!--[if gte IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="http://www.ladyada.net//make/pumpkin/pumpkin.html">Halloween&nbsp;Pumpkin</a></li>
<li><a href="http://www.ladyada.net//make/vintagelight/index.html">Vintage&nbsp;Bike&nbsp;Lite</a></li>
<li><a href="http://www.ladyada.net//make/sudc4kap/index.html">Kite&nbsp;Arial&nbsp;Photo</a></li>
<li><a href="http://www.ladyada.net//make/bikestand/index.html">Bike&nbsp;Stand</a></li>
<li><a href="http://www.ladyada.net//make/bikelite/index.html">LiIon&nbsp;Bike&nbsp;Lite</a></li>
</ul><!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li><a href="http://www.ladyada.net/make/">More...</a></li>
<li><a href="http://www.instructables.com/member/ladyada/">->Instructables</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li><a href="http://www.ladyada.net/learn/">Learn<!--[if gte IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="http://www.ladyada.net/learn/arduino/">Arduino&nbsp;tutorial</a></li>
<li><a href="http://www.ladyada.net/learn/avr/">AVR&nbsp;tutorial</a></li>
<li><a href="http://www.ladyada.net/learn/multimeter/">Multimeter&nbsp;tutorial</a></li>
<li><a href="http://www.ladyada.net/learn/soldering/">Soldering&nbsp;tutorial</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li><a href="http://www.ladyada.net/library/">Library<!--[if gte IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="http://www.ladyada.net/library/arduino/">Arduino&nbsp;Hacks</a></li>
<li><a href="http://www.ladyada.net/library/batteries.html">Batteries</a></li>
<li><a href="http://www.ladyada.net/library/equipt/">E.E.&nbsp;Tools</a></li>
<li><a href="http://www.ladyada.net/library/procure/">Find&nbsp;Parts</a></li>
<li><a href="http://www.ladyada.net/library/kits/">Kits</a></li>
<li><a href="http://www.ladyada.net/library/laser/">Laser</a></li>
<li><a href="http://www.ladyada.net/library/ucannoyances.html">uC Annoyances</a></li>
<li><a href="http://www.ladyada.net/library/openhardware/">Open Source Hardware</a></li>
<li><a href="http://www.ladyada.net/library/pcb/">PCB&nbsp;Design&nbsp;&amp;&nbsp;Tips</a></li>
<li><a href="http://www.ladyada.net/library/picvsavr.html">PIC&nbsp;vs.&nbsp;AVR</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li><a href="http://www.ladyada.net/rant/">Blog</a></li>
<li><a href="http://www.adafruit.com" target="_blank">Store</a></li>
<li><a href="http://forums.ladyada.net/" target="_blank">Forums</a></li>
</ul>
<div id="searchbox">
<!-- Google CSE Search Box Begins -->
<form id="searchbox_012941403977924873237:omv8mprm6ek" action="http://www.google.com/cse" target="_top"> <input type="hidden" name="cx" value="012941403977924873237:omv8mprm6ek" /> <input name="q" type="text" size="23" /><br /> <span class="style1">ladyada.net</span> <input type="submit" name="sa" value="Search" /> <input type="hidden" name="cof" value="FORID:0" /> </form><script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=searchbox_012941403977924873237%3Aomv8mprm6ek"></script>
<!-- Google CSE Search Box Ends -->
</div>
<div id="lefttcol">
<!-- this is just a buffer -->
</div>
<div id="content">
<!-- InstanceBeginRepeat name="texts" --><!-- InstanceBeginRepeatEntry -->
<div class="textblockheader"> <!-- InstanceBeginEditable name="Header" -->Getting Stack overflow errors?<!-- InstanceEndEditable --> </div>
<div class="textblock"> <!-- InstanceBeginEditable name="text" -->These examples are all designed for Arduino v10 so try to use that if possible<!-- InstanceEndEditable --> </div>
<!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
<div class="textblockheader"> <!-- InstanceBeginEditable name="Header" -->Get more RAM &amp; Flash! <!-- InstanceEndEditable --> </div>
<div class="textblock"> <!-- InstanceBeginEditable name="text" -->
<p>Before you try to play audio, you'll want to free up some Arduino RAM, so that you don't end up with a nasty stack-overflow. </p>
<p><a href="http://www.ladyada.net/rant/2008/04/free-up-some-arduino-sram/">Follow these instructions</a> on how to get more RAM by reducing the input Serial library buffer. You dont need to do this if you're using an <a href="http://www.ladyada.net/library/arduino/upgrade.html">ATmega328</a></p>
<p>Note that the library is pretty big (about 10K) so if you want to do a lot more, I suggest <a href="http://www.ladyada.net/library/arduino/upgrade.html">upgrading to an ATmega328</a>. The shield was designed with the expectation that this part would be available.</p>
<!-- InstanceEndEditable --> </div>
<!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
<div class="textblockheader"> <!-- InstanceBeginEditable name="Header" -->Generating speech<!-- InstanceEndEditable --> </div>
<div class="textblock"> <!-- InstanceBeginEditable name="text" -->
<p>If you want a human voice in your project, you can use the free generator at <a href="http://www.research.att.com/%7Ettsweb/tts/demo.php#top">AT&amp;T Text-to-Speech demo page </a></p>
<p>It will create a 16KHz, 16-bit audio file so you can use the audio 'right out of the box' </p>
<!-- InstanceEndEditable --> </div>
<!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
<div class="textblockheader"> <!-- InstanceBeginEditable name="Header" -->Sound sample library<!-- InstanceEndEditable --> </div>
<div class="textblock"> <!-- InstanceBeginEditable name="text" --> <a href="http://wiki.laptop.org/go/Sound_samples">Here is huge collection of C.C. Attribution licensed sound samples!</a> A lot of it is already mono, 16 or 22KHz<!-- InstanceEndEditable --> </div>
<!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
<div class="textblockheader"> <!-- InstanceBeginEditable name="Header" -->Digital audio player <!-- InstanceEndEditable --> </div>
<div class="textblock"> <!-- InstanceBeginEditable name="text" -->
<p>This is the simplest example. It plays every audio file it finds on the SD card in a loop.</p>
<ul>
<li><a href="../../media/wavshield/dap.pde">Sketch</a></li>
</ul>
<!-- InstanceEndEditable --> </div>
<!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
<div class="textblockheader"> <!-- InstanceBeginEditable name="Header" -->PI party! <!-- InstanceEndEditable --> </div>
<div class="textblock"> <!-- InstanceBeginEditable name="text" -->
<p>This example shows how to use the AT&amp;T text-to-speech website to speak the first 2640 digits of pi. The number is stored in flash, each digit is spoken one at a time. </p>
<ul>
<li><a href="../../media/wavshield/piwav.zip">Zip file containing the digits 0 thru 9 and 'point'</a> place the wave files onto the SD card </li>
<li><a href="../../media/wavshield/pispeak.pde">Sketch</a> </li>
</ul>
<!-- InstanceEndEditable --> </div>
<!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
<div class="textblockheader"> <!-- InstanceBeginEditable name="Header" -->Playing sound based on input<!-- InstanceEndEditable --> </div>
<div class="textblock"> <!-- InstanceBeginEditable name="text" -->
<p><a href="http://www.ladyada.net/forums/viewtopic.php?t=6120">This example</a> plays 6 different files depending on whether buttons connected to the 6 analog input pins are pressed.</p>
<!-- InstanceEndEditable --> </div>
<!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
<div class="textblockheader"> <!-- InstanceBeginEditable name="Header" -->Changing the playback rate<!-- InstanceEndEditable --> </div>
<div class="textblock"> <!-- InstanceBeginEditable name="text" -->
<p>By messing with the playback interrupt, <a href="http://www.ladyada.net/rant/2008/05/wave-shield-bending-the-playback-sample-rate/">you can change the speed of playback for an interesting effect.</a></p>
<!-- InstanceEndEditable --> </div>
<!-- InstanceEndRepeatEntry --><!-- InstanceBeginRepeatEntry -->
<div class="textblockheader"> <!-- InstanceBeginEditable name="Header" -->Halloween pumpkin<!-- InstanceEndEditable --> </div>
<div class="textblock"> <!-- InstanceBeginEditable name="text" --><a href="../pumpkin/pumpkin.html">An example of using a sensor to trigger sounds, as well as animating LEDs based on the volume</a><!-- InstanceEndEditable --> </div>
<!-- InstanceEndRepeatEntry --><!-- InstanceEndRepeat --></div>
<div id="rightcol">
<!-- this is just a buffer -->
</div>
<div id="history">
<!-- #BeginDate format:Am1m -->November 2, 2008 18:16<!-- #EndDate --></div>
</body>
<!-- InstanceEnd --></html>