Float to String

String msgStr ="";
float floatData = 35.5 ;    

void setup() {
Serial.begin(115200);
}
void loop() {
msgStr = String(floatData);
Serial.print(“msgStr :”);
Serial.println(msgStr);
delay (2000);
}
使用BW16 板子 ,Arduino IDE 無問題 但Serial print

_rtl_sprintf: format not support!
msgStr :.2f

不知 語法
msgStr = String(floatData);
要如何修正

String msgStr ="";
float floatData = 35.3 ;    
int intData = 35 ;    

void setup() {
Serial.begin(115200);
}
void loop() {
msgStr = String(intData);
Serial.print(“msgStr :”);
Serial.println(msgStr);
delay (2000);
}
換成整數型態 就可以
msgStr :35
不知道是編譯器版本 還是晶片性能?

都不是。
1.語法沒錯。
2. 修復方法: 打開standard lib printf 選項,不使用rtl_printf即可
image

Log

1 Like