MSP432P401R数字格式化|数字转字符串|sprintf函数在嵌入式中的用法
嵌入式中实现数值变量转为字符串
·
解决OLED屏显示变量
在学习MPU6050和OLED的时候,想将MPU6050的三个角(Pitch、Roll、Yaw)显示到OLED屏上。但是因为三个角都是数字,不是字符串,不能直接传给OLED的字符串显示函数,所以我想先将数字转为字符串再将字符串传给OLED的显示函数中。
解决方法
1.导入标准库stdio.h
2.创建一个字符数组buffer,大小根据你要保存数据的大小而定
3.调用sprintf函数
下面是一个简单的例子
#include <stdio.h>
void main(){
buffer[45]; //保存格式化后的字符
float test=1.2563; //测试数据
sprintf(buffer,"This is a test:%.3f",test); //经过这个函数之后数字就转为字符了
/**
接下来就可以将字符串buffer传给你需要的函数了。需要注意的是,每次使用完
buffer后最好”清零“一下,否则如果下一次的数据长度小于这次的字符串长度,
那么这次的字符串后面的部分数据会被保留到下一次中,就可能导致你的显示不
正常
**/
}
清空操作可以使用memset函数,具体用法可以看一下这位博主写的文章。文章链接
如果哪里有说错,还请大家指出,我会及时更改,非常感谢
更多推荐
所有评论(0)