Hello y'all,
<div>I&#39;m depressed, see, I can&#39;t get my micro to play back recorded audio samples, here&#39;s what I&#39;ve been doing and from what I can tell, the internet says todo:</div><div>using an tiny85 I&#39;m using its 64Mhz PWM with a low pass filter to create analog voltages, I can create a sine wave using a 256 byte lookup table I use 256 resolution because I do this:</div>
<div><br></div><div>OCR1B = pgm_read_byte[sinWaveTable + TCNT0]; //The timer speed is the speed at which the wave table is played back</div><div><br></div><div>And it makes a really good sin wave (used an oscilloscope to verify this). </div>
<div><br></div><div>however, this shows that I can create relatively good analog voltages, I cannot play back sounds that I&#39;ve saved in the avr&#39;s flash. </div><div><br></div><div>to do this, I have converted an arbitrary sound file to .WAV (uncompressed) further converted it to 8bit sampled at 6khz. So each byte in this file corresponds to a sinusoidal sound wave point, and all i have to do is play back each analog value at the speed of the sampling rate. (please verify me on this?) makes sense. I open the WAV file in a java program that I wrote that reads each byte and separates them with commas so that I can make an array out of the data. </div>
<div><br></div><div>And I just play it back, I tried to use a Compare Match A interrupt to read each array value (at the sampling rate hence the compare match interrupt) and change analog value coming out of OCR1B but it sounds like SHIT, I can&#39;t even tell what it sounds like. </div>
<div><br></div><div>If anybody has had experience with this approach maybe you can help me?  </div>