为方便工作上做测试,移植FreeRTOS到STM32F103xx,先做简单的UART1 printf。
工程编译通过,运行逻辑也确认可行,可就是无法正常打印消息。对比了网上的移植工程也是一致,硬件仿真在汇编窗口看到停留在“0x0800XXXX BEAB BKPT 0xAB",遂网上搜索"BKPT",找到下面网友的笔记,
参考:014:针对mdk中STM32程序无法使用printf,产生停留BEAB BKPT 0xAB处问题的解决(转)
试了“问题3”后可正常运行了,再看“问题4”时才想起使用了“printf”却没有勾选“MiclroLIB”。
打开“Options for target...”->“target”勾选“Use MiclroLIB”后一切就正常了。
总结:
温故而知新,学习要不断重温,将细节变为习惯,不然小小的细节却是折腾去大部分冤枉时间。