我现在在程序固化之前将6678的拨码开关SW3,SW4,SW5,SW6设置成1000 0000 0000 1100(看了下资料,SPI nor flash固化之前需要将拨码开关设置如此),用CCS5.5在线调试程序,让程序全速运行,每次运行一段时间后就会出现:Error:connect to PRSC failed。而将拨码快关SW3,SW4,SW5,SW6设置成其他模式不会出现这种问题,请问可能是什么问题那?怎么排查?
Allen35065:
拨码开关只影响启动,不会影响运行的代码;还是有可能是因为代码本身存在问题,比如栈溢出或者错误指针等等。
fuxin qu:
回复 Allen35065:
Allen Yin
你好!
虽然拨码开关只影响启动,但是为什么在没有改拨码快关的时候可以正常运行,而且在改过拨码快关之后我用DDR3的例程也试过也会出现同样的问题。
Allen35065:
回复 fuxin qu:
参考 http://processors.wiki.ti.com/index.php/TMDXEVM6678L_EVM_Hardware_Setup
设置成No Boot的模式应该是
No boot
(off, on, on, on)
(on, on, on, on)
(on, on, on, on)
(on, on, on, on)你把拨码开关设到这样再运行代码看看
fuxin qu:
回复 Allen35065:
好的,我试一下。
fuxin qu:
回复 Allen35065:
Allen Yin
你好!
我按照no boot模式进行设置运行结果也是运行一会就会出现断的现象,我们设置成IBL NOR boot on image 0(default)模式可以正常运行,请问这可能是什么问题那?
Allen35065:
回复 fuxin qu:
另换一个程序运行看看会不会有问题,IBL里对PLL和DDR3以及一些外设做了初始化的操作,但不应该会对程序代码有影响。
No Boot模式下应当是正确的,你可以先使用针对EVM的Gel脚本进行初始化后再运行你的代码。
fuxin qu:
回复 Allen35065:
您好!我按照您说的方法做了还是一样的结果,而且程序在出现错误之后就不能正常下载程序了,我试着将boot的控制信号抓出来,发现dsp复位状态RESETSTAT在程序跑飞之后再次重新初始化时候就一直是“1”,而在没下程序之前是可以满足手册中figure 7-1的时序的。
Allen35065:
回复 fuxin qu:
先用一个最简单的例子测一下,比如一个while循环,不断的print;代码里如果跑飞也可能会导致DSP不能正常下载程序。
有条件的话换块板卡交叉对比。
fuxin qu:
回复 Allen35065:
您好!我按照您说的用了最简单的程序试了一下还是会出现跑飞的情况,而且我换了一块板卡将我的程序固化是可以实现的,而且我今天在程序跑飞之后测了一下dsp的CVDD变为了0,没有跑程序之前是正确的。
Allen35065:
回复 fuxin qu:
如果CVDD供电为0那应该是板卡出问题,多测试几次看看。