我在使用MCASP0做IIS的通讯.配置好AIC3100后
MCASP0的时钟 IO等都初始化好了...
执行函数McASPRxSerActivate和McASPTxSerActivate 一直在那里循环.初始化不过去
在EVM开发班中使用了4个 IO.我也对应的设置好了..
是什么原因导致无法进入下一步?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我简单看了下,代码应该是没有问题,是按照 trm上22.3.12.2 Transmit/Receive Section Initialization,做的,如果没有接声卡,应该还是可以完成rec的active的,你在portting代码的时候,platform部分都编译进去了么,或者你找个evm板验证下,对比的看看
1. 不能听到话筒的声音只是配置没有做,类似ALSA里面要做配置
2. 我有点怀疑你的pinMUX和时钟配置,你能不能看看prcm里面的时钟配置,把你的引脚也发上来看看
简单的看了下代码,时钟设置没有问题,有两个办法试试看:
1. 把你的代码中,mcasp1和mcasp0同时初始化的地方,把mcasp1的代码都去掉,只初始化mcasp0看看结果。
2. 对于starterware的源代码,你可以把evm的profile调到2,然后修改McASP1PinMuxSetup代码使其在profile2的情况下也进行pinmux设置,看看在不连接声卡的情况下,能否正常初始化mcasp1.
这个客户的问题已经解决了,主要原因是Mcasp工作在slave模式下,bclk, fclk又 codec提供,而客户的codec没有正确配置,不能提供正确的时钟给soc,所以不能正常工作,所以建议你使用ClKOUT1作为codec的master时钟,这样可以最大程度上复用我们所提供的代码。