这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 使用ADS并使用ILLD和367DPMCU,赋值运算符没有按预期运行的原因?

共3条 1/1 1 跳转至

使用ADS并使用ILLD和367DPMCU,赋值运算符没有按预期运行的原因?

工程师
2024-07-06 16:55:42     打赏

我正在使用 ADS 并使用 ILLD 和 367DP MCU。
从字面上看,赋值运算符没有按预期运行。
例如,考虑以下代码(这是一个极其简化的示例,实际上,它涉及将SPI结果分配给一个变量以通过CAN通信输出):
int a = 3;
int b = 0;
b = a;
执行此代码时,b 应为 3。 但是,b 仍为 0。
有人遇到过类似的问题吗? 在这种情况下,应考虑哪些解决方案或检查?
我只使用 ILLD 和 ADS(AURIX™ Development Studio)。

我正在使用调试器(MINI_CONTROL2GO 摆动器),当我使用 ADS 在调试状态下运行代码时,分配完成得很好,
但是如果没有调试器,当我运行程序时,分配不起作用。
(我的意思不是整个任务都行不通。 只有一些代码行不起作用)

我不确定这是硬件问题(缓存... 之类的)还是编译器(任务)的问题。




关键词: 运算符     MCU    

助工
2024-07-06 16:56:13     打赏
2楼

1. 确保代码已正确编译和链接。执行 Clean Project 和 Rebuild Project 操作以确保在编译器中重新生成所有文件。

2. 检查代码的执行顺序。在某些情况下,如果代码存在分支或循环,可能会导致值未正确分配。确保代码流程正确,并在所需位置使用条件断点进行调试。

3. 禁用优化选项。尝试在编译器选项中禁用优化,以确保代码按照预期执行。这可以通过更改编译器设置或修改编译器选项来实现。

4. 检查变量类型和大小。确保变量的数据类型正确,并且足够大以容纳所需的值。例如,如果变量是一个字符或字节类型,它可能无法容纳整数值。

5. 检查目标设备的兼容性。确保所选的ADS版本和ILLD库与367DP MCU兼容。如果不兼容,可能会导致代码出现问题。

6. 考虑使用其他IDE或工具进行调试。如果问题仍然存在,尝试使用其他IDE或调试工具来验证是否是ADS的问题。


高工
2024-07-07 16:13:34     打赏
3楼

谢谢分享


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]