分享到:
学习stm32,打交道最多的莫过于串口通讯了,但是官方的串口发送库太恶心了,完全不好用甚是还念C语言的printf,想输出什么就有什么,
现在,一步步来做个重定向,让你的stm32可以跟C语言一样能想看什么就看什么:
首先:
添加printf的头文件 :
#include <stdio.h> //当时学C语言最熟悉的stdio.h
其次:
改写int fputc(int ch, FILE *f)函数
现在,一步步来做个重定向,让你的stm32可以跟C语言一样能想看什么就看什么:
首先:
添加printf的头文件 :
#include <stdio.h> //当时学C语言最熟悉的stdio.h
其次:
改写int fputc(int ch, FILE *f)函数
int fputc(int ch, FILE *f);
int fputc(int ch, FILE *f)
{
USART_SendData(USARTx, (uint8_t) ch);
while (USART_GetFlagStatus(USARTx, USART_FLAG_TC) == RESET);
return ch;
}
最后:
在keil 平台上改下设置:
Use MicroLIB ->Target -> Code Generation -> 选中Use MicroLIB
当然,前提是你初始化了USARTx
在IAR中一样的:
只不过最后一个设置改一下:Projec t- >Options -> General Options -> Library Configuration中的Library 项由"Normal"改为"Full"
(0 )
(0 )
回复
举报
- 0000000000000000
-
1888 发帖7917 回复34980 积分
- 私信他 +关注
- xiaomiking
-
1148 发帖6357 回复18614 积分
- 私信他 +关注
- phoenix20111116
-
124 发帖361 回复1671 积分
- 私信他 +关注
发表回复
块
导
航
举报
请选择举报类别
- 广告垃圾
- 违规内容
- 恶意灌水
- 重复发帖