STM32
直播中

贾伟刚

7年用户 1468经验值
私信 关注
[问答]

printf在keil5的AC6编译器下运行进入死循环的原因?

使用STM32F769I-DISCO板运行LwIP_HTTP_Server_Socket_RTOS的示例,在程序中使用宏LCD_UsrLog ("  State: Ethernet Initialization ...n");把信息显示在屏幕上,用AC5编译时运行正常,但是编译速度太慢;而用AC6编译时,速度快,但运行出现死循环(更改库编译都能通过),这个宏定义是:
#define  LCD_UsrLog(...)    do {
                                           LCD_LineColor = LCD_LOG_TEXT_COLOR;
                                                  printf(__VA_ARGS__);
                                              } while (0)

向大侠们请教怎么解决?

回帖(1)

李华瑞

2024-4-7 15:21:14
建议关闭优化,这个问题有可能是开了优化导致的
举报

更多回帖

发帖
×
20
完善资料,
赚取积分