keil5| printf()函数 | 使用技巧 | STM32|UARST串口输出

目录

一.Printf函数重映射

二、sprintf函数格式化输出

三、中文乱码

一.Printf函数重映射

1、点击“魔术棒”

或者

2、点击“Target”,勾选“use MicroLIB”,前的对钩,点击“OK”,完成设置。

3、在头文件中添加#include <stdio.h>,同时对printf()函数重定向。

【注】由于printf()函数是向屏幕打印信息,但是STM32单片机没有屏幕,故需fputc()函数重定向到串口,那么printf()函数就可输出到串口,借助串口助手显示打印信息。

二、sprintf函数格式化输出

方法一:sprintf函数可以把格式化字符输出到一个字符串,不涉及重定向,每个串口都可以用sprintf函数格式化打印。

缺点:打出的字符是固定的不利于后期移植

方法二:为了解决以上缺点,对sprintf()函数封装。

1、添加头文件

2、封装printf()函数

三、中文乱码

方法一:在Misc Controls中 填写 --no-multibyte-chars,同时编码格式在keil中和串口助手中都选择UTF-8格式。printf("你好,世界");

方法二:编码格式在keil中和串口助手中都选择GBK格式。在Misc Controls中不用添加参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值