TMS320x28335能正常运行的电机控制程序,转移至TMS320x28035中,算法能正常运行,但是在进一步添加全局变量时,发现影响到算法正常运行,有没有同行遇到过类似的问题?
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.
TMS320x28335能正常运行的电机控制程序,转移至TMS320x28035中,算法能正常运行,但是在进一步添加全局变量时,发现影响到算法正常运行,有没有同行遇到过类似的问题?
user5901225 说:但是在进一步添加全局变量时,发现影响到算法正常运行
请问在编译时是否有警告或者advice?您添加的全局变量是已初始化还是未初始化?能否大概描述一下?
根据您的描述,有可能是cmd文件的问题
您好,非常感谢您的回复!以下是我出现问题的部分截图和过程:
编译过程中没有报关于空间不够的警告,以下是编译过程的警告
在进行电机控制时,我删减定义的几个未经初始化的无关变量,或是修改无关函数,改变初始化变量的值均会导致算法不收敛,以下是我删减的无关变量。
另外编译器的优化等级也会导致算法不收敛,应该是编译过程中出现的问题。
为定位问题,我对比了两次删减全局变量前后的map文件,发现c_int00()地址和main函数地址发生变化,从电机运行角度来看,初始状态发生变化,以下是正常和非正常运行下的c_int00()地址。
电机正常运行时的入口函数地址:
电机非正常运行时的入口函数地址:
具体定位仍然不清晰,请问一下,有没有遇到过类似的问题,该如何排查呢?
您好,非常感谢您的回复!以下是我出现问题的部分截图和过程:
程序中未报关于空间不够的警告,警告如下:
在进行电机控制时,删减定义的未经初始化的无关变量以及无关函数的修改,改变初始化变量的初始值均会导致算法不收敛。
以下我在定义全局变量的.h文件中删减了这几个没有进行算法计算的无关变量,电机就不能正常起动了。
根据以上问题,我对比两次删减无关变量前后的map文件,发现c_int00()地址和main函数地址发生变化,从电机运行角度来看,初始状态发生变化。
电机正常运行时的入口函数地址:
电机非正常运行时的入口函数地址:
另外编译器的优化等级也会导致算法不收敛,应该是编译过程中出现的问题。
但是目前具体定位仍不清晰,请问一下,有没有遇到过类似的问题,该如何排查呢?