最近在调试STM32时碰到一个神奇的问题,我在程序中使用了printf函数,结果在进行调试的时候发现程序一直卡在启动代码中,进不了主函数。
一开始我以为是硬件的问题,我尝试着使用软件仿真,结果与使用硬件调试的结果相同。
后来在网上查了一下说是因为printf之类的函数使用了半主机模式。在配置选项里勾选了微库的话就不会使用半主机模式。但是事实上我在编译器的配置选项里勾选了微库。
最后我尝试更换了IDE的版本,程序终于进到主函数里了,对于这个问题折腾了一天,内心充满了淡淡的忧伤。
最近在调试STM32时碰到一个神奇的问题,我在程序中使用了printf函数,结果在进行调试的时候发现程序一直卡在启动代码中,进不了主函数。
一开始我以为是硬件的问题,我尝试着使用软件仿真,结果与使用硬件调试的结果相同。
后来在网上查了一下说是因为printf之类的函数使用了半主机模式。在配置选项里勾选了微库的话就不会使用半主机模式。但是事实上我在编译器的配置选项里勾选了微库。
最后我尝试更换了IDE的版本,程序终于进到主函数里了,对于这个问题折腾了一天,内心充满了淡淡的忧伤。