打印

STM32F407 FSMC对IIS影响

[复制链接]
3797|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
shangdibaoyou|  楼主 | 2012-4-24 13:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在使用IIS(CPU STM32F407IG)进行录放音的设计测试,发现调节FSMC(挂接SRAM)中的值会影响录放音。 p.FSMC_AddressSetupTime = 2;     p.FSMC_AddressHoldTime = 1;                                    p.FSMC_DataSetupTime = 4; 经过测试,具体表现为:调节上面的三个值要不就是录音录的是杂音,要不就是放音是杂音。对于放音,通过示波器查看,发现从内存出来的数据和到IIS引脚的波形上输出的数据发生了移位,数据的数据量是一致的。并且,若上面三个值的大小变化,数据移的位数,也跟着发生改变。录音正好反过来。我们的程序中IIS都是工作在从模式,两边的IIS接口采用的协议都是标准的IIS PHILPS标准协议。从测试来看,因为放音的时候从外部RAM的值通过过DMA到IIS寄存器,然后引脚输出的时候发生了变化,可以排出编解码芯片的问题。
一直没有搞清楚为什么FSMC中的时序会对IIS接口的时序产生影响,有人遇到过吗,有高手可以帮忙给点建议吗,谢谢!
沙发
香水城| | 2012-4-24 14:28 | 只看该作者
要看你的数据缓冲是放在哪里,如果放在FSMC的存储器中,这种现象就不奇怪了。调节FSMC的时序,意味着数据读写的时间变长或变短,而IIS的速度却是恒定的,如果FSMC跟不上IIS的速度,自然就会出现问题。

使用特权

评论回复
板凳
shangdibaoyou|  楼主 | 2012-4-24 15:29 | 只看该作者
现在试验着将缓冲放到了外部SRAM,也试着将缓冲放到CPU内部RAM,结果也是一样。如果说是SRAM读写错误,整个系统的运行都是在外部SRAM中,别的倒是没发现什么问题。

使用特权

评论回复
地板
shangdibaoyou|  楼主 | 2012-4-24 16:43 | 只看该作者
没有人遇到过类似的吗?

使用特权

评论回复
5
原野牧歌| | 2012-4-24 20:26 | 只看该作者
准备用407IG做工控,虽然不用这个IIS,但是关注这个问题的原因……

使用特权

评论回复
6
shangdibaoyou|  楼主 | 2012-5-16 14:06 | 只看该作者
还是没有人遇到过吗!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

6

帖子

0

粉丝