概要
タイトルの通り
MQTT の PubSubClient.h を使う時にペイロードが byte* だったので文字列に変更したかった感じです
環境
- macOS 10.12.5
- Arduino IDE 1.6.12
コード
void callback(char* topic, byte* payload, unsigned int length) {
payload[length] = '\0';
String msg = String((char*) payload);
Serial.println(msg);
if (msg == "start") {
// something ...
} else if (msg == "stop") {
// something ...
}
}
ポイントはバイト配列の最後に終端文字を入れてること
こうしないとうまく文字列に変換できません
最後に
*byte を String に変換する方法を紹介しました
久しぶりに Arduino に触るとよくわかんないですね
0 件のコメント:
コメントを投稿