Преобразование byte > float
- Войдите на сайт для отправки комментариев
Ср, 13/02/2013 - 01:00
Есть две дуины и пара nRF24L01 модулей, суть в то что передача идет пакетом из буфера допустим 4 байта.
float t = dht.readTemperature();
Serial.print("Local_temp=");
Serial.println(t);
Mirf.setTADDR((byte *)"mega");
Mirf.send((byte *)&t);
while(Mirf.isSending()){
}
Serial.println("Finished sending");
delay(100);
преобразовывая значение флоат с дхт22 в байт.
Как его преобразовать обратно на приемнике?
byte data[4];
if(!Mirf.isSending() && Mirf.dataReady()){
Serial.println("Got packet");
Mirf.getData(data);
Заранее спасибо, вопрос может показаться глупым, просто с забитой под вечер головой тяжело вникнуть в суть вопроса(
http://arduino.ru/forum/programmirovanie/preobrazovanie-unsigned-long-by...
http://arduino.ru/forum/programmirovanie/zapis-v-eeprom
float t = 0; if(!Mirf.isSending() && Mirf.dataReady()) { Serial.println("Got packet"); byte data[4]; Mirf.getData(data); float *y = (float *)&data; t = y[0]; }Обычно хватает принципа "как передаем, так и принимаем"
Возможно, хватило бы