Здравствуйте. Организовалсвязь между двумя ардуинами посредствам 433Мгц, подключил два датчика: температура и влажность почвы, данные передаются нормально, НО если к температуре претензий нет, то влажность почвы считывается как то странно, тоесть если датчик сухой то -127 а если в воде то 0 и больше никак. код передатчика: Код (C++): //Transmitter #include <VirtualWire.h> #include <OneWire.h> #include <DallasTemperature.h> #define ONE_WIRE_BUS 4 #define ONE_WIRE_BUSS 9 OneWire oneWire(ONE_WIRE_BUS); OneWire oneWirew(ONE_WIRE_BUSS); // подключаем Dallas Temperature. DallasTemperature sensors(&oneWire); DallasTemperature sensorss(&oneWirew); void setup() { Serial.begin(9600); vw_setup(2000); vw_set_tx_pin(12); // пин, соединенный с DATA трансмиттера Serial.println("Transmitter"); Serial.print("\n"); sensors.begin(); sensorss.begin(); } void loop() { char msg[24]; sensors.requestTemperatures(); // опрос датчиков sensorss.requestTemperatures(); dtostrf(sensors.getTempCByIndex(0), 6, 2, msg); //получение и форматирование Т в msg vw_send((uint8_t *)msg, strlen(msg)); // отправляем dtostrf(sensorss.getTempCByIndex(0), 6, 2, msg); vw_send((uint8_t *)msg, strlen(msg)); vw_wait_tx(); // ждем полного завершения передачи }
Какой датчик и как подключали? Если просто два гвоздя один в +5, другой в A0, то ничего работать не будет.