你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

使用Keil编译的时候else里的语句没有编译

[复制链接]
yyjyyj 提问时间:2023-11-16 10:55 / 未解决

最近遇到了一个编译问题,我在stm32f4xx_it.c文件中的CAN2_RX0_IRQHandler函数里编写了一个if——else if ——else语句,但调试的时候发现elseif 和else里的语句都没编译,打不上断点,也没有相应的汇编语句。但是把else换成if之后,里面的语句则可以被编译。我魔术棒里优化等级也选择的level0,但是并没有解决问题,求大佬指点

image.png

image.png

赞 收藏 评论4 发布时间:2023-11-16 10:55

举报

4个回答
watershade 回答时间:2023-11-16 17:53:06

如果没猜错,你的应该是AC6的编译器。安富莱的汉哥有一篇专门讲IAR和KEIL编译的问题。我也开始从KEIL转投IAR或者STM32IDE了

butterflyspring 回答时间:2023-11-16 14:10:53
可以比较一下,换另一给编译器试试。

是否参与编译或者编译成什么样的汇编语言是编译器决定的。

看看不同公司的编译器是不是有这样的区别。
5RP2E 回答时间:2023-11-16 15:43:15

把编译后文件都删了重新编译一下呢?

Heeloo 回答时间:2023-11-22 08:44:17

watershade 发表于 2023-11-16 17:53
如果没猜错,你的应该是AC6的编译器。安富莱的汉哥有一篇专门讲IAR和KEIL编译的问题。我也开始从KEIL转 ...

[md]IAR 里可在函数定义前一行增加这一句,keil 的不知道可不可以。 你试一下。

pragma optimize=none

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版