armqt210-AC97 DMA的使用问题

小陆zi 2013-01-10 03:17:39
hi 大侠们:
最近在调试QT210的DMA。主要是针对AUDIO的接口。
我把环境描述一下:
s5pc210的片子+WM9713的codec芯片。
应用:
上层app未经过任何处理以及修改的时候掉用可以录音,但是杂音很大。
在录音的时候串口显示:
DmaAddr=@ff008000 Total=512bytes PrdSz=2 (打印有省略)函数为:s3c_dma_hw_params()/s3c-dma.c
后来看了DATAsheet 发现pcm的datain fifo中描述为
16bits X 2 X 16entries
这样算来外设的fifo大小是64bytes。但是DMA实际使用的是256Bytes。
再查看了DMA(pl330)的datasheet。
发现是2个bytes - burst,一共是128个burst。这样算下来确实是256bytes是的传入。

我的问题是:
1,实际分配的DMA缓存大小和DATAsheet中描述的fifo大小相差是什么原因造成的?
2,这个原因可不可能导致了杂音的现象?
3,传输速率和我录音是采用的采样频率是不是有一一对应的关系?比如我采样的时候用的是48k,所以我播放的时候也是使用48k换算过的传输速率?

请大家给我一点帮助。
谢谢了
...全文
61 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

21,597

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧