STM32串口通讯printf函数实现
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
stm32中串口通讯使用printf()函数发送数据,需进行函数重定向,即printf()函数的实现。printf()在C标准库中实质上是一个宏,调用fputc()函数。所以其实现配置方法参考如下。
一、包含标准输出输入头文件 stdio.h,同时在keil的工程配置上勾选 Use MicroLIB。如下
二、重新定义fputc()函数,即定向到需要的串口上,如下参考定向到USART1。完成后即可调用printf通过串口发送数据。
/* 重定向printf()到USART1 */
int fputc(int ch, FILE *f)
{
USART_SendData(USART1, (unsigned char)ch);
while(!(USART1->SR & USART_FLAG_TXE));
return (ch);
}