第一次写博客 如果有写的不对的地方 欢迎指正。
关于printf和sprintf 单片机中用的很多,而且用起来也很方便。我在这里就不详述原理。我直接告诉用法。
Printf:打印函数,在用之前首先要添加头文件<stdio.h>,然后就可以直接用了。但是对于单片机的通信,不单单就这么简单。因为只写个printf相当于电脑去打印,但是你想要串口发送数据给电脑所以这就需要你把printf要发送的数据重定向到串口上。这也是为什么好多人明明用了printf,但是没用。所以为什么需要再一个fputs函数就是这个原因。接下来讲解怎么用这个函数。首先函数名不需要改变,这是固定的。然后主体部分很简单,判断发送完成标志位是否发送完成,没有就一直发送,然后return ch,将数据发给串口,串口再发给电脑。我这里用的是固件库函数,你们用的时候要记得更改
Sprintf也是打印函数,不过sprintf主要用来打印字符串的函数。但是有人又说printf也可以打印,为什么非要用sprintf。这里我举个例子,比如我要获取的数据是年份,2024,但是它不是一个完整的数据去获取,可能是0x20,0x24,所以你这时候用printf就不太行。所以这个时候就可以用sprintf了。sprintf(str[20],“%x%x",a[1],b[1])。将两个值合并一起,传给str[20],然后再用printf去打印就可以了。