共2条
1/1 1 跳转至页
44b0,IIS 关于44b0 IIS的细节问题
问
如何根据wav音频的采样频率和CPU的主时钟配置CODECLK和SCLK?
俺读了N遍44b0手册的IIS部分,楞是没看到如何配置这个关键的SCLK!!
恳请大牛出面指点一二,谢谢了! 答 1: 可以参考44b0test程序先根据wav采样频率fs,得CODECLK=256fs,而CODECLK可以设置IISPSR寄存器由PCLK得到,而PCLK可调用ChangeClockDivider(1,1)函数由FCLK得到。而FCLK可以调用ChangeMPllValue(0xa1,0x3,0x1)由外接晶振得到。最好根据44b0test程序的IIS部分查读数据手册
答 2: 多谢回复你的办法是要修改CPU工作频率的,有没有办法不修改CPU工作频率播放任意采样频率的声音文件呀?
不能改变硬件,硬件上已经确定CS4334使用CODECLK引脚为作MCLK. 答 3: re:如果不改变CPU的工作频率计算出的fs会有误差,播放出的wav声音就会产生失真!你要进行测试,看它的失真能否接受!任意采样频率是不可能的。另外还有一个办法,将你的任意采样频率的wav文件通过其它工具(如:windows自带的录音机,在程序->附件->娱乐->录音机)修改成某个固定的频率(如都是44.1K),修改过后的wav格式可能会有一些变化,找个wav文件协议看看,再改改可能就没问题。这样你的程序只要做一个频率的播放就可以了 答 4: 谢谢!这个办法技术上可行, 但是也太骗人了, 到时候人家自己录一段声音, 结果播放不出来.....
我必须接受修改CPU主频的方案了, 尽管十分地不情愿....
如何根据wav音频的采样频率和CPU的主时钟配置CODECLK和SCLK?
俺读了N遍44b0手册的IIS部分,楞是没看到如何配置这个关键的SCLK!!
恳请大牛出面指点一二,谢谢了! 答 1: 可以参考44b0test程序先根据wav采样频率fs,得CODECLK=256fs,而CODECLK可以设置IISPSR寄存器由PCLK得到,而PCLK可调用ChangeClockDivider(1,1)函数由FCLK得到。而FCLK可以调用ChangeMPllValue(0xa1,0x3,0x1)由外接晶振得到。最好根据44b0test程序的IIS部分查读数据手册
答 2: 多谢回复你的办法是要修改CPU工作频率的,有没有办法不修改CPU工作频率播放任意采样频率的声音文件呀?
不能改变硬件,硬件上已经确定CS4334使用CODECLK引脚为作MCLK. 答 3: re:如果不改变CPU的工作频率计算出的fs会有误差,播放出的wav声音就会产生失真!你要进行测试,看它的失真能否接受!任意采样频率是不可能的。另外还有一个办法,将你的任意采样频率的wav文件通过其它工具(如:windows自带的录音机,在程序->附件->娱乐->录音机)修改成某个固定的频率(如都是44.1K),修改过后的wav格式可能会有一些变化,找个wav文件协议看看,再改改可能就没问题。这样你的程序只要做一个频率的播放就可以了 答 4: 谢谢!这个办法技术上可行, 但是也太骗人了, 到时候人家自己录一段声音, 结果播放不出来.....
我必须接受修改CPU主频的方案了, 尽管十分地不情愿....
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |