TI中文支持网
TI专业的中文技术问题搜集分享网站

KeyStone_DDR_PLL_init 无法完成

大家好:

我在6657开发板上测试初始化,首先main函数KeyStone_main_PLL_init(100, 10, 1),console可以正常输出

[C66xx_0] Initialize DSP main clock = 100.00MHz/1×10 = 1000MHz。

然后下面写KeyStone_DDR_PLL_init(50.0,20,1);console不能输出Initialize DDR speed = ****。

判断程序应该是卡死在其调用的KeyStone_PLL_init,请问该如何做,这样初始化的方法不对吗?

程序编译通过,没有报错和警告,在0核上运行。

shiwei pan:

单步运行发现卡死在TSC_delay_us延时程序,这部分能有什么能有什么问题?

void TSC_delay_us(Uint32 us){ volatile unsigned long long startTSC, currentTSC; unsigned long long delay_cycles; Uint32 tscl, tsch;

tscl= TSCL; tsch= TSCH; startTSC= _itoll(tsch,tscl); delay_cycles= ((unsigned long long)us*gDSP_Core_Speed_Hz/1000000);

do { tscl= TSCL; tsch= TSCH; currentTSC= _itoll(tsch,tscl); } while((currentTSC-startTSC)<delay_cycles);}

Thomas Yang1:

回复 shiwei pan:

您定时器跑起来了吗?可以查看TIMER中的寄存器判别下,如果没有重点检查SYSCLK, PLL相关配置

shiwei pan:

回复 yue li2:

恩 是的要先初始化TSC

赞(0)
未经允许不得转载:TI中文支持网 » KeyStone_DDR_PLL_init 无法完成
分享到: 更多 (0)