|
点击上方「嵌入式实验基地」,选择「置顶公众号」第一时间查看嵌入式笔记!
问题由来 日常调试过程中,printf调试信息输出是一项非常重要的调试手段,尤其是对于不能在线调试的MCU来说,printf几乎成了必备的调试手段。
在使用rtos时,你是否遇到过因为打印调试信息引起程序异常的情况,或者是打印信息完全“放飞自我”,不按照自己的设计输出,从printf打印异常出发,学习一下rtos中的资源管理。
内容很多,建议泡杯茶,慢慢看...
现象 实验很简单,创建两个任务,分别打印不同的内容,从结果来看,显然是有问题的,一个任务把另一个截断了,导致输出混乱。
printf函数:
#define debug_printf(format, args...) do{ \
printf(format, ##args); \
}while(0) |
|