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

CCS5.5 调试CLA加速器时停止后不能运行

我用CCS5.5调试CLA加速器时,任务8编写一些变量的初始化,当启动运行后,停止在调试停止的位置,然后可以单步运行,一直到MSTOP指令,然后再单步运行的时候就一直在MSTOP这条指令这里。而我用CCS3.3调试相同的代码,运行到MSTOP之后,然后单步运行,就可以到自己设置启动的任务1,而且可以这样一直不断的循环运行,不会遇到MSTOP指令后不能在运行的情况,不知道这是什么原因,请大牛们支支招!

Hank Zhao:

你的这个MSTOP是在Task代码的结尾吗,如果是在代码结尾的话是正常情况。

我用CCS5.5调试CLA加速器时,任务8编写一些变量的初始化,当启动运行后,停止在调试停止的位置,然后可以单步运行,一直到MSTOP指令,然后再单步运行的时候就一直在MSTOP这条指令这里。而我用CCS3.3调试相同的代码,运行到MSTOP之后,然后单步运行,就可以到自己设置启动的任务1,而且可以这样一直不断的循环运行,不会遇到MSTOP指令后不能在运行的情况,不知道这是什么原因,请大牛们支支招!

jianchang shi:

回复 Hank Zhao:

是的 ,你的意思是说,CCS5.5不能像CCS3.3循环调试吗?如果我要循环单步执行CLA加速环改如何做??

我用CCS5.5调试CLA加速器时,任务8编写一些变量的初始化,当启动运行后,停止在调试停止的位置,然后可以单步运行,一直到MSTOP指令,然后再单步运行的时候就一直在MSTOP这条指令这里。而我用CCS3.3调试相同的代码,运行到MSTOP之后,然后单步运行,就可以到自己设置启动的任务1,而且可以这样一直不断的循环运行,不会遇到MSTOP指令后不能在运行的情况,不知道这是什么原因,请大牛们支支招!

Hank Zhao:

回复 jianchang shi:

是的,CLA代码运行结束就要返回到CPU的中断函数中运行,CLA停止。你可以将Task代码放在一个循环函数中以实现循环执行CLA程序的功能。

我用CCS5.5调试CLA加速器时,任务8编写一些变量的初始化,当启动运行后,停止在调试停止的位置,然后可以单步运行,一直到MSTOP指令,然后再单步运行的时候就一直在MSTOP这条指令这里。而我用CCS3.3调试相同的代码,运行到MSTOP之后,然后单步运行,就可以到自己设置启动的任务1,而且可以这样一直不断的循环运行,不会遇到MSTOP指令后不能在运行的情况,不知道这是什么原因,请大牛们支支招!

jianchang shi:

回复 Hank Zhao:

我的代码是在执行任务1后清除EPWM1的中断标志,所以没有设置任务完成后进入CLA中断服务程序。之前在CCS3.3的调试中,可以循环的触发任务1,但CCS5.5不行,不知道这算不算CCS5.5的一个BUG,不知道CCS6.1的版本就这个问题是否已经改正?谢谢你的回复

我用CCS5.5调试CLA加速器时,任务8编写一些变量的初始化,当启动运行后,停止在调试停止的位置,然后可以单步运行,一直到MSTOP指令,然后再单步运行的时候就一直在MSTOP这条指令这里。而我用CCS3.3调试相同的代码,运行到MSTOP之后,然后单步运行,就可以到自己设置启动的任务1,而且可以这样一直不断的循环运行,不会遇到MSTOP指令后不能在运行的情况,不知道这是什么原因,请大牛们支支招!

Hank Zhao:

回复 jianchang shi:

CLA只是一个加速器,并不是一个单独的CPU核,所以在执行完任务之后肯定是要返回CPU程序中的,它不像CPU程序那样是一个循环系统。在芯片自启动运行的时候,就是按照CCS5.5的这个调试流程来实际执行的,这怎么能说是BUG。

我用CCS5.5调试CLA加速器时,任务8编写一些变量的初始化,当启动运行后,停止在调试停止的位置,然后可以单步运行,一直到MSTOP指令,然后再单步运行的时候就一直在MSTOP这条指令这里。而我用CCS3.3调试相同的代码,运行到MSTOP之后,然后单步运行,就可以到自己设置启动的任务1,而且可以这样一直不断的循环运行,不会遇到MSTOP指令后不能在运行的情况,不知道这是什么原因,请大牛们支支招!

jianchang shi:

回复 Hank Zhao:

 谢谢你的回复!可能我没有说清楚,是这样的之前我的代码在CCS3.3中调试的时候,保持C28X一直运行,然后进入CLA后单步调试TASK3,任务执行完后停在MSTOP处,然后我又继续按单步执行按键,然后编译器会再次进入TASK3的调试停止命令处,这样我又可以继续进行单步调试了。但是我把代码导入到CCS5.5后,就一直听在MSTOP处,无论怎么点击单步执行命令,都停止MSTOP处。所以,我现在搞不清楚是我的代码的问题,还是CCS5.5编译器本身就只能进入一次CLA的任务单步调试,或者是不是一定要返回到C28X执行CLA中断,清楚中断标志,然后才能再次进入TASK3的任务调试?—太多疑问,谢谢回复

我用CCS5.5调试CLA加速器时,任务8编写一些变量的初始化,当启动运行后,停止在调试停止的位置,然后可以单步运行,一直到MSTOP指令,然后再单步运行的时候就一直在MSTOP这条指令这里。而我用CCS3.3调试相同的代码,运行到MSTOP之后,然后单步运行,就可以到自己设置启动的任务1,而且可以这样一直不断的循环运行,不会遇到MSTOP指令后不能在运行的情况,不知道这是什么原因,请大牛们支支招!

Hank Zhao:

回复 jianchang shi:

CCS3.3调试时CLA程序执行结束后会返回到CLA程序的开始处,这可以方便调试,但在芯片自启动时并不是这样运行的。CCS5.5调试时的CLA代码执行流程才是和自启动时的运行情况一致。CLA代码执行完之后,除非在CPU程序中再次软件调用或者中断触发,否则不会再进入CLA的TASK。

我用CCS5.5调试CLA加速器时,任务8编写一些变量的初始化,当启动运行后,停止在调试停止的位置,然后可以单步运行,一直到MSTOP指令,然后再单步运行的时候就一直在MSTOP这条指令这里。而我用CCS3.3调试相同的代码,运行到MSTOP之后,然后单步运行,就可以到自己设置启动的任务1,而且可以这样一直不断的循环运行,不会遇到MSTOP指令后不能在运行的情况,不知道这是什么原因,请大牛们支支招!

jianchang shi:

回复 jianchang shi:

谢谢回复,都搞好了,是自己软件的错误,可以循环触发!!

我用CCS5.5调试CLA加速器时,任务8编写一些变量的初始化,当启动运行后,停止在调试停止的位置,然后可以单步运行,一直到MSTOP指令,然后再单步运行的时候就一直在MSTOP这条指令这里。而我用CCS3.3调试相同的代码,运行到MSTOP之后,然后单步运行,就可以到自己设置启动的任务1,而且可以这样一直不断的循环运行,不会遇到MSTOP指令后不能在运行的情况,不知道这是什么原因,请大牛们支支招!

Mak he:

回复 jianchang shi:

jianchang shi ,

        我刚开始用CLA功能,有很多疑问,想请教下,我在调试时出现如下图情况,点击单步调试,一直提示"CLA_0: Can't Single Step Target Program: (Error -2060 @ 0x0) No task is currently active.  Cannot step while target is idle. (Emulation package 5.0.747.0)“,有空帮我看下,谢谢!

赞(0)
未经允许不得转载:TI中文支持网 » CCS5.5 调试CLA加速器时停止后不能运行
分享到: 更多 (0)