标签:plain 串口 整数 color double blog 输出 name sign
如何轻松玩转Arduino单片机,当我在进行数据转换的时候,遇到了问题,尝试了C语言和C++中的好多函数,都没有达到将float型数据转换为char型的目的。苦苦查阅资料后,终于找到了一个大神级函数!!!dtostrf(),可以轻松实现数据类型from float to char . get it
格式如下:
char* dtostrf(double _val,signed char _width, unsigned char prec, char* _s)
参数说明:
_val:要转换的float或者double值。
_width:转换后整数部分长度。
_prec:转换后小数部分长度。
_s:保存到该char数组中。
示例如下:
float f=3.1415; char c[]; dtostrf(f,1,2,c); Serial.println(c);此时从Arduino自带串口监视器中将输出3.14,即成功实现了数据类型转换。
数据转换之后,我们可以对字符串进行一个拼接。如下,将实现字符串的拼接
float f=3.1415; char c[]; dtostrf(f,1,2,c); Serial.println(c); //定义一个字符串 char s[]="///sensor1///ly///sensor1///PM2.5///100.70///"; //进行字符串拼接操作 strcat(s,c); Serial.println(s);此时将在Arduino自带串口监视器中将输出///sensor1///ly///sensor1///PM2.5///100.70///3.14,即成功实现了字符串的拼接。
Arduino中数据类型转换 float/double转换为char 亲测好使,dtostrf()函数
标签:plain 串口 整数 color double blog 输出 name sign
原文地址:http://blog.csdn.net/qq_25827845/article/details/50717522