嵌入式硬件通信接口协议-UART:快速使用串口及应用-2
三、调试-输出
开发调试过程中,输出的内容基本上就是想查看的变量值、代码的执行位置跟踪、算法或者某些运算的结果等等。这些输出,仅用于调试阶段,而在人机调试过程中,使用计算机的串口助手软件进行交互,则输出的数据应该便于识读和判断。
1. C库函数printf格式输出重定向到串口输出
输出串口数据过程中,需要向寄存器逐字节传入数据的,而在传送之前必不可少的,就是将要发送的数据、字符放到同一个Buffer后,执行轮询的方式传送直到buffer内容全部被传送。
而这个“放”的过程也是需要做些计算、判断,尤其是增加必要的字符来描述输出信息,保证信息的可识读。
在C标准库printf函数就有格式输出的功能,利用这个接口更便于调试输出这个过程。
这就需要将printf函数重定向到串口输出上!
实现重定向只需3步:
Options for target选项卡内勾选UseMicroLIB
在串口实现的*.c文件内,将stdio.h文件和stdarg.h文件包含进来
重新定义int fputc函数的内部实现
完成以上3步,即可利用printf函数来格式化输出,并且能够在串口上接收到。
推荐