音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

s344b0x實驗箱聲音的播放

作者:syzhou1314 欄目:嵌入式系統(tǒng)
s344b0x實驗箱聲音的播放
 我正在用s344b0x實驗箱做一個語音電子時鐘,現(xiàn)需連續(xù)播放兩段wave聲音:  
     一段是歡迎使用(huanying.wav總共404858字節(jié),除去44字節(jié)的頭文件信息是404814字節(jié)),

另一段是播報日期的聲音(nian.wav總共是156698字節(jié),除去44字節(jié)的頭文件信息是156654字節(jié)),兩者總共播放時間不過5秒,在程序中定義的播放buffer緩沖區(qū)”int buffer[AUDIO_IN_BUFFERSIZE*20];“大小是1764000字節(jié)(>(404814+156654))

我的做法是先把huanying.wav讀到緩沖區(qū)buffer的0~404813中,然后把nian.wav讀到404814~561467中,然后在把buffer作為dma的源地址進行播放!單結(jié)果只是播放了huanying.wav,后面的沒出來,請問是什么原因?錯在哪里》》÷??

void Main_Task(void *Id)             //Main_Test_Task
{   u32 toubyte;
U32 nbyte;
FILE *pfile;
FILE *pfile1;
CHAR filename[]="huanying.wav";//erlingling
CHAR filename1[]="nian.wav";
    int aa=1;
rIISCON=0; //disable;
rIISMOD=IISMOD_TX|IISMOD_16BIT|IISMOD_32FS|IISMOD_MCLK_384FS;
rIISFCON=IISFCON_TXDMA|IISFCON_TXFIFO;
rIISPSR=0x11;
rIISCON=IISCON_PRESCALE|IISCON_ENABLE;

Init_UDA1341();
pfile=OpenOSFile(filename, FILEMODE_READ);
if(!pfile)
  return ;
pfile1=OpenOSFile(filename1, FILEMODE_READ);
if(!pfile1)
  return ;
toubyte=ReadOSFile(pfile, (U8*) buffer, 0x16*2);//讀取頭文件信息
nbyte=ReadOSFile(pfile, (U8*) buffer, 404814);//讀取波形數(shù)據(jù)
Uart_Printf("\nhuanying file tounbyte=%d\t nbyte=%d sizeofbuff=%d\n",toubyte,nbyte,sizeof(buffer));

toubyte=ReadOSFile(pfile1, (U8*) (buffer+404814), 0x16*2);//讀取頭文件信息
Uart_Printf("\nnian tounbyte=%d\n",toubyte);
nbyte=ReadOSFile(pfile1, (U8*) (buffer+404814),156654);//讀取波形數(shù)據(jù)
Uart_Printf("\nnian file tounbyte=%d\t nbyte=%d sizeofbuff=%d\n",toubyte,nbyte,sizeof(buffer));

for(;;)
{//死循環(huán)
  /****** BDMA0 Initialize ******/
  //for Source
  rBDISRC0=(1<<30)+(1<<28)+(int)buffer; //Half word,inc,Buf
  //for des
  rBDIDES0=(1<<30)+(3<<28)+((int)0x1d18010); //M2IO,fix,IISFIF
  //Size
  //iis,reserve,done_int,not auto-reload/start,DMA enable,COUNT
  rBDICNT0=(1<<30)+(1<<26)+(3<<22)+(0<<21)+(0<<20)+(sizeof(buffer)&(~0x3));
  rBDICNT0 |= (1<<20);//enable
  //Enable DMA
  rBDCON0 = 0x0<<2;
  //Tx DMA
  rIISCON|=IISCON_TXDMA;
}
}
這是超級終端的結(jié)果:
File huanyingwav have been read!
File nian    wav have been read!
huanying file tounbyte=44        nbyte=404814 sizeofbuff=1764000
nian tounbyte=44
nian file tounbyte=44    nbyte=156654 sizeofbuff=1764000
懇請指教!


參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
求助(關(guān)于定時電控鎖)
暈~~ov9650的datasheet真難找
請問:關(guān)于RTL8019AS的片選和地址問題
怎么去學(xué)著去規(guī)劃一個軟件
FPGA 電路不需要復(fù)位電路嗎
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號