如何在mcu上使用printf使串口printf输出

版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明

    在嵌入式开发过程中,往往需要多个串口printf进行通讯使用printf函数是个不错的选择,格式化输出后方便实用;
不论什么型号的单片机只要支持标准C的编译器,都可以实现此功能

 
下面是函数定义,可以移植到任意的串口printf;
 
 
 
 
 

一般数据用串口printf传输的时候,通常都要规定一定的“格式” 否则的话,一个字节顶多只能代表256种代码用它充当普通数据显然很不够的。 通常人们采用的通信格式囿很多种,这里不便列举了 如果您的要求非常低,也可以不必采用通用的格式而是自己规定一些尽可能简单的格式。 例如您要传送int型或unsigned int型的整数,那么可以规定连续发送两个字节用先后两个字节拼成一个int型或unsigned int型的整数。例如先传送低字节再传送高字节。 两个字节拼成一个整数拼的办法很简单。例如假设您的变量都定义成了unsigned的,那么假如第一次收到的字符是c1第二次收到的字符是c2,拼成的无符號整数就是: (unsigned int)c2<<8 + c1 至于如何转换成十进制更简单,直接用printf语句输出其中的格式符%u或%d都具有转化成十进制的功能。

用keil 编译软件先设置串口printf工作方式,波特率给串口printf初始化,设置TI=1后就可以用printf函数从串口printf输出打印内部了。如果是仿真打开UART窗口,就能看到串口printf输出的字符数据等。

你对这个回答的评价是

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案

我要回帖

更多关于 串口printf 的文章

 

随机推荐