Czujnik temperatury DS18B20 - Wersja do druku +- Arduino Polska Forum (https://forum.arduinopolska.pl) +-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino) +--- Dział: Programowanie w Arduino (https://forum.arduinopolska.pl/dzial-programowanie-w-arduino) +--- Wątek: Czujnik temperatury DS18B20 (/watek-czujnik-temperatury-ds18b20) |
Czujnik temperatury DS18B20 - mateusz_91 - 26-02-2018 Witam, mam problem z pomiarem temperatury czujnikiem cyfrowym i wyświetlaniem na lcd. Sam czujnik działa przez prosty program monitoru portu szeregowego a jak zaimplementowałem to do mojego projektu to wskazuje-127 RE: Czujnik temperatury DS18B20 - kaczakat - 01-03-2018 Witam -127 pokazuje gdy nie ma czujnika na linii onewire, do którego się odwołujesz, jest uszkodzony (co tu raczej nie skoro działa na monitorze), brak lub zły rezystor podciągający do VCC, pewnie jeszcze inne mogą być, te są najczęściej. Poza tym kod nie będzie działać zgodnie z oczekiwaniem - raczej. Po każdej konwersji ta biblioteka blokuje pętlę na 750ms przy rozdzielczości 12bit (domyślnej). Dwa razy w pętli robisz odczyt (coś tam też trwa) + raz rozkaz wykonania pomiaru , czyli szybciej poszłoby chińczykowi na liczydle. Nie wydarzy się to coś zaplanowane co 200ms, zresztą te czynności tam akurat i tak nie mają sensu, bo przez 750ms nic się nowego na czujniku nie pojawi. Gdybyś tam chciał coś pokazywać co się zmienia kilka razy na s to zmień kod tak, by czujnik był pytany co np. 4 takty po te 200ms, lub nawet co 1s, to nie robi chyba różnicy przy piecu. Wyjdzie równa sekunda i co tyle odświeżaj zmienną temperatura. W pozostałych 4 przypadkach po prostu będzie wyświetlał starą wartość (czujnik i tak nic nowego nie powie). Ewentualnie możesz zmnieszyć rozdzielczość do 9 bitów i pytać go częściej. Tu regułka z biblioteki: Kod: // returns number of milliseconds to wait till conversion is complete (based on IC datasheet) Kod: // Include the libraries we need |