Arduino IDEを用いてESP32からRaspberry Piにfloat型のデータ送信したいのですが,うまく受け取ることが出来ません.
(Raspi側の受信にはNODE-REDを用いています.)
試しに
Arduino
1const int sensor_pin = 5; 2int input_value = 0; 3float convert_V = 0.00; 4float i = 2.5; 5int input_value_send = 0; 6 7input_value = analogRead(sensor_pin); 8convert_V = (input_value * 5 ) / 1024; 9 10UDP.write(1); 11UDP.write(100); 12UDP.write(255); 13UDP.write(256); 14UDP.write(2.5); 15UDP.write(i); 16UDP.write(convert_V); 17UDP.write(input_value); 18 19input_value_send = input_value / 4; 20 21UDP.write(input_value_send); 22
と送ってみたところ受信側結果は
1 100 255 0 2 2 0 0 186
だったので1byte以上の値を送ることが出来ないのかなという状況です.
UDP.writeを使ってfloat型の数値の送り方を教えていただきたいです.
追記::もしくは受信側に問題があるのでしょうか.
追記2::float型でデータを送信できたわけではないので自己解決方法で記入はしませんが,ひとまず,生データ2bitシフトしたデータ(4で割り算したデータ)を送信し,受信側で再度2bitシフトする(4で掛け算)という形をとりました.
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。