Quantcast
Channel: Processors forum - Recent Threads
Viewing all articles
Browse latest Browse all 17527

Large-ish write to flash breaks MCASP transmit buffering.

$
0
0

I've got a real head scratcher here. 

I declare the following global variable: 

Int16 AudioTemp[576000]={0};

If I read a bunch of audio off the SD card, and load it into flash - but load it into the same space in memory, not incrementing the indices of the array that I'm loading too, then MCASP transmits a different audio file properly after the load.

			for (i=0; i<512*8/32; i++)
			{

				Rshort = (short)(rx[i]        & 0x0000FFFF);				//2 bytes little endian signed int
				AudioTemp[*samp_ind]=Rshort;
				//printf("\nSample[%d, %d]: %d, 0x%x",*samp_ind,i,Rshort,Rshort);
				// *samp_ind=*samp_ind+1;

However, if I uncomment the line that increments the indices, the MCASP has a buffer underun after the load.  

Again, the audio I'm transmitting is drawing from a different cyclical buffer.

Thanks in Advance,

-Amanda 


Viewing all articles
Browse latest Browse all 17527

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>