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.
在进行电机控制时,增加和删减 定义的无关变量个数以及无关函数的修改均会导致算法不收敛,对比两次的map文件,发现c_int00()地址和main函数地址发生变化,从电机运行角度来看,初始状态发生变化,程序中没有任何错误和警告。
另外编译器的优化等级也会导致算法不收敛,应该是编译过程中出现的问题,但是具体定位不清晰,请问一下,有没有遇到过类似的问题,该如何排查呢?
您好,非常感谢您的回复!以下是我出现问题的部分截图和过程:
这是我在定义变量的.h文件中删减了这几个没有进行算法计算的无关变量,电机就不能正常起动了。
是在例程的基础上进行修改的,之前使用过程中也没出现这个错误,但是在查程序中,通过查询map和反汇编文件,只能发现删减变量后,map文件中显示CINT00位置改变和main函数位置改变以及.text顺序发生改变,别的没有看出其他问题,因为这个问题是可重复出现的,只要我加上这几个无关变量就能正常运行,编译过程是否影响到我的初始化变量状态呢?
电机正常运行时的入口函数地址:
电机非正常运行时的入口函数地址: