中级会员
 
- 积分
- 330
- 金钱
- 330
- 注册时间
- 2017-8-24
- 在线时间
- 75 小时
|

楼主 |
发表于 2018-8-24 15:31:10
|
显示全部楼层
if(rval==0) //Äú′æéêÇëOK
{
recoder_enter_rec_mode(1024*recagc);
while(VS_RD_Reg(SPI_HDAT1)>>8); //μèμ½buf ½ÏÎa¿ÕÏDÔù¿aê¼
// memset(pname,0,30); //pnameûóDèÎoÎÎļtÃû
//recoder_new_pathname(pname); //μÃμ½DÂμÄÃû×Ö
recoder_wav_init(&wavhead); //3õê¼»ˉwavêy¾Y
res=f_open(&f_rec,"1:REC/1.wav", FA_CREATE_ALWAYS | FA_WRITE);
if(res) //Îļt′′½¨ê§°ü
{
rec_sta=0; //′′½¨Îļtê§°ü,2»Äü¼òô
printf("ìáê¾êÇ·ñ′æÔúSD¿¨\n");
}else res=f_write(&f_rec,&wavhead,sizeof(__WaveHeader),&bw);//D′èëí·êy¾Y
rec_sta=0X80; //¿aê¼Â¼òô
printf("¿aê¼Â¼òô\n");
while(rval==0)
{
key=KEY_Scan(0);
switch(key)
{
case KEY0_PRES: //STOP&SAVE
printf("±£′æêy¾Y\n");
if(rec_sta&0X80)//óD¼òô
{
wavhead.riff.ChunkSize=sectorsize*512+36; //Õû¸öÎļtμÄ′óD¡-8;
wavhead.data.ChunkSize=sectorsize*512; //êy¾Y′óD¡
res=f_lseek(&f_rec,0); //Æ«òÆμ½Îļtí·.
printf("\r\nres:%d\r\n",res);
res=f_write(&f_rec,&wavhead,sizeof(__WaveHeader),&bw);//D′èëí·êy¾Y
printf("\r\nres:%d\r\n",res);
res=f_close(&f_rec);
printf("\r\nres:%d\r\n",res);
sectorsize=0;
printf("±£′æÂ¼òôêy¾Y\n");
}
rec_sta=0;
break;
}
///////////////////////////////////////////////////////////
//¶áè¡êy¾Y
if(rec_sta==0X80)//òѾ-Ôú¼òôáË
{
w=VS_RD_Reg(SPI_HDAT1);
printf("w=VS_RD_Reg(SPI_HDAT1); =%d\r\n",VS_RD_Reg(SPI_HDAT1));
if((w>=256)&&(w<896))
{
printf("ÕyÔú¼òô\n");
idx=0;
while(idx<512) //ò»′ζáè¡512×Ö½ú
{
w=VS_RD_Reg(SPI_HDAT0);
recbuf[idx++]=w&0XFF;
recbuf[idx++]=w>>8;
printf("recbuf[idx++]=%d\r\n",recbuf[idx++]);
}
res=f_write(&f_rec,recbuf,512,&bw);//D′èëÎļt
if(res)
{
printf("err:%d\r\n",res);
printf("bw:%d\r\n",bw);
printf("D′èë3ö′í\n");
break;//D′èë3ö′í.
}
sectorsize++;//éèÇøêyÔö¼ó1,Ô¼Îa32ms
}
}// if(rec_sta==0X80)//òѾ-Ôú¼òôáË
///while(1)
}
}
}
} |
|