打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
STM32单片机怎么用printf发送数据到串口?

在C语言中,当需要打印信息时一般都会用printf函数,比如要打印Hello World!

C语言中是这样写的 printf('Hello World!');

回到单片机上,如果单片机需要发送数据需要调用发送寄存器,将需要发送的数据存入发送寄存器,这个寄存器一般是八位的,对于一些字符串或者一些数据如果都是用这种存入发送寄存器的方式就会显得不那么方便,不那么灵活。

但是如果把printf函数用在串口发送上,一切就变得很简单了。不论是打印字符串还是打印数据都会变得很简单。

实现的方法:加入以下程序即可,本次以串口1举例,开发环境是Keil

struct __FILE

{

int handle;

};

FILE __stdout;

_sys_exit(int x)

{

x = x;

}

//重定义fputc函数

int fputc(int ch, FILE *f)

{

while((USART1->SR&0X40)==0);

USART1->DR = (u8) ch;

return ch;

}

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
STM32的半主机机制
Keil调试命令(转载)
如何将double float通过串口发送/double float与char类型转换
STM32 ~ USART接收不定长数据
STM32中使用printf打印串口数据
STM32程序添加printf函数后无法运行的解决方法(转)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服