问题前述:已经成功配置CLA以及CLAmath库,并且在CLA中控制ADC采样并完成锁相环计算操作,运行结果准确。
问题详情:因为开发需求,需要给一个标志位FlagPLL来进行锁相环的复位操作,在写入复位操作代码后,CLA卡死在CLASin函数语句。复位代码示例如下:
if(FlagPLL == 1){ a = 0; b = 0; }
此时FlagPLL = 0,意味着if语句后面的代码块不会被执行,但是当注释掉中间两句赋值代码后,CLA中的锁相环程序能够正常运行,代码示例如下:
if(FlagPLL == 1){ // a = 0; // b = 0; }
有大神知道这种问题因为哪个地方配置不对导致的吗?
您好
我不确定我是否理解 FlagPLL 的意义。 问题是否只是你试图调用 clasin () CLA 数学函数,而代码却被卡住了? 当调试器到达该行时、您是否可以尝试打开反汇编(View >> Disassembly)? 它看起来是不寻常的吗?
如果您可以在任务中附加更多代码、以便获取更多上下文、可能会有所帮助。