• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

IAR这个问题谁见过,

我是爆米花啊 2018-04-25 浏览量:1094

1234.jpg

123.jpg


这个条件编译能执行到 这?!! IAR我没怎么用过,这也太过分了吧。

!!!!!!!!!!!!!!!!!!!!!!!!!!!

本来我定义为FALSE(hal_types.h中有定义) 结果不行,直接定义为0 都不行。

全局搜索过了的,别再扯全局搜索了。说全局搜索的人们用过IAR吗?我都给你红色框出来了,Found 5 instances

pwm.h里出现3次,再看上面3个小蓝旗,看到了吗。。。

C文件里使用#if 判断2次,另一处我没截图而已。5处我已经给截图出4处了。哎~


0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
所有亮答 数量:9
  • 查看这个.c文件有没有其他地方定义了这个宏了,如果没有还发生这类神奇的问题,请关闭代码优化。

    总的来说IAR除了代码编辑器这部分实在是个垃圾,编译和调试还是很牛的。

  • 那你直接写成#if 0试一下,看看还会不会有这种情况

  • 无论是什么编译器,只要是C/C++的编译器,一定都会遵循宏的规则,像楼主这种情况是不可能出现的,除非在别的地方也有另外一个名称一模一样的宏定义,因为这个问题,C++的编程者提倡使用const常量代替宏定义。

  • 宏定义这么使用,如果只有这么一个定义,应该不会出现。再查查其他地方是否有重复的。

  • 看一下,应该有重复的,


    解决方案,把重复的删了即可

  • 宏定义重复了。。。那不应该不可能。重新定义即可

  • 把工程全部重新编译一次再试试。

    你的这个C文件中,是不是包括了pwm.h这个头文件。

    在工程配置中,是不是手动在配置里添加了这个定义的值。

  • 代码有问题需要修改 PWM有几个 这个是几个舵机?

相关问题

问题达人换一批

IAR这个问题谁见过,