语音录放程序1

语音录放程序1

ID:38286160

大小:53.50 KB

页数:8页

时间:2019-06-07

语音录放程序1_第1页
语音录放程序1_第2页
语音录放程序1_第3页
语音录放程序1_第4页
语音录放程序1_第5页
资源描述:

《语音录放程序1》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、程序1-1DVR以自动方式录放音前台程序:intkey;Main(){System_Initial();//键盘初始化SACM_DVR_Initial(Auto);while(1){Key=SP_GetCh();//获取键值switch(Key){case0x0000:break;case0x0001:SACM_DVR_Record();//录音,存储资料到SRAMbreak;case0x0002:SACM_DVR_Stop();//停止录/放音break;case0x0004:SACM_DVR_Play();//从SRAM中取出语音资料并播放b

2、reak;default:break;}System_ServiceLoop();//键扫描SACM_DVR_ServiceLoop();}//while(1)结束}背景程序:_FIQ:pushregisters;callF_FIQ_Service_SACM_DVR;//放音Clearinterruptflagpopregisters;reti;_IRQ1:pushregisterscallF_IRQ1_Service_SACM_DVR;//录音Clearinterruptflagpopregisters;reti;注:对于函数System_In

3、itial()、System_ServiceLoop()和SP_GetCh()详见具体的实验。程序1-2非自动方式:(见光盘)DVR手动方式主程序流程见图#defineManual0#defineAuto1#defineSRAM_Size0xffff-2#defineRceMonitorOff0#defineRceMonitorOn1#defineDAC11#defineDAC22#defineFull1#defineEmpty2**************录音**************main(){SACM_DVR_Initial(Manua

4、l);//手动方式初始化Addr=0;//定义语音存放的首址变量InitWriteSRAM();SACM_DVR_InitEncoder(RceMonitorOn);//开始对A2000的语音资料以非自动方式编码while(Addr

5、单元区Addr+=2;//两个8位SRAM存储一个16位资料}}SACM_DVR_StopEncoder();}*********放音*********main(){SACM_DVR_Initial(Manual);//非自动方式播放的初始化InitReadSRAM();Addr=0;SACM_DVR_InitDecoder(DAC1);//开始对A2000的语音资料以非自动方式译码while(1){if(SACM_DVR_TestQueue()!=Full)//测试并获取语音队列的状态{Ret=ReadSRAM(Addr);//从存储区里获取一

6、个字型语音资料SACM_DVR_FillQueue(Ret);//获取语音编码资料并填入语音队列等候译码Addr+=2;}if(Addr

7、r5from[sp];reti;_IRQ1:pushr1,r5to[sp];callF_IRQ1_Service_SACM_DVR;//语音录制中断r1=0x1000[P_INT_Clear]=r1popr1,r5from[sp];reti;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。