Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Problem s kodem v jazyku C pro zobrazeni teploty

Dobry den vespolek.

Chtel bych vas pozadat o pomoc s kodem v jazyku C se kterym jen zacinam kde nedokazu doshanou pozadovaneho vysledku.

Pouzita sonda je klasicky DHT 11 ktery by mel merit teplotu a vlhkost prostredi. Chtel bych se princip naucit na teto sonde a nasledovne vytvorit vlastni venkovni teplomer.
Prvni chyba byla ve zvolenem portu, kde spravny mel byt 9600 ktery jsem opravil, ted se mi vysledek v COM consoli zobrazuje, ale nezobrazuje spravne hodnoty vypise jen sem tam, jinak mi vraci znaky nebo neco takovyho :


??!:*#é#
naměřená hodnota teploty je: 25
naměřená hodnota vhlkosti je: 32
??!:*#**$#
naměřená hodnota teploty je: 25
naměřená hodnota vhlkosti je: 32
??!:*#$#
naměřená hodnota teploty je: 26
45
"'$''!!:$*

Momentalne kod v jazyku C vypada nejak tak :


#include "DHT.h"
DHT dht;
void setup()
{
 Serial.begin(9600);
 dht.setup(2);
}
void loop()
{
 delay(500);
 Serial.print("naměřená hodnota vhlkosti je: ");
 Serial.print(dht.getHumidity()); 
 Serial.print(("naměřená hodnota teploty je: "));
 Serial.println(dht.getTemperature()); 
}

Dekuji za kazdou radu.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Váš digitální snímač teploty má vzorkovací frekvenci 1Hz, což znamená že může zobrazit požadovanou i…
poradnaviktor 13.11.2019 17:01
poradnaviktor
Aha, no s delay(2000) to vypada ze to funguje. Ale dival jsem se teda po drazsim DHT 22 a u neho je…
Vann 13.11.2019 18:07
Vann
Ale dival jsem se teda po drazsim DHT 22 a u neho je napsany ze ma 0,5 Hz, takze muzu zobrazit teplo…
poradnaviktor 13.11.2019 18:14
poradnaviktor
No, to zni logicky, diky. nový
Vann 13.11.2019 18:24
Vann
Venkovní teplomer musí byť inštalovaný hodne ďaleko od vykurovaného objektu aby to ukazovalo venkovn… poslední
Kilo.Viktor 13.11.2019 19:12
Kilo.Viktor

Váš digitální snímač teploty má vzorkovací frekvenci 1Hz, což znamená že může zobrazit požadovanou informaci jen v intervalu 1x za 1s, u 0.5Hz by jste ji mohl zobrazit jen jednou za co 2s atd.

Jazyk C není má silná stranka ale možná bych začal změnou :

delay(500)

na zkoušku (jelikož ten požadavek bude rychlejší jak možnosti toho snímače) pozměněním za alespoň :

delay(2000) 

(aby ten snímač měl dostatečně času na zobrazení požadované informace. Ruku do ohně za to nedám, jen bez toho aniž bych viděl váše presné zapojení typuji)

Ale dival jsem se teda po drazsim DHT 22 a u neho je napsany ze ma 0,5 Hz, takze muzu zobrazit teplotu jenom jednou co 2 sekundy je tak ?
Proc je teda drazsi ?

Ta kvalita nebude záležet od toho jestli to zobrazí za 1s nebo 5s, venku se ta teplota nezmění během par vteřin z 30 na 20C° jestli mě rozumíte.

Ten DHT 22 podle datasheet o proti vašemu DHT 11 umí zobrazit teploty v rozhraní :
DHT 22:

- 40 až 80C°

DHT 11:

jen 0 až 50C°

Přesnost měření s 0.5C° odchylkou pro DHT22 a u DHT11 rozdíl až 2.0C°
Tak ten rozdíl ceny nebude v tom jak rychle zobrazí
naměřené informace, ale o kvalitě a přesnosti.

Venkovní teplomer musí byť inštalovaný hodne ďaleko od vykurovaného objektu aby to ukazovalo venkovní teplotu. Ďalšia vec a podla mňa dosť dôležitá je to, či je ten teplomer nakilbrovaný alebo len zostavený zo súčiastok.

Zpět do poradny Odpovědět na původní otázku Nahoru