Kurs Arduino #10: Obsługa modułów RF 433MHz i 315MHz

5. Trzeci program – transmisja temperatury z czujnika DS18B20

Ten program będzie swego rodzaju zwieńczeniem ostatnich 2 części kursu o obsłudze wyświetlacza, czujnika DS18B20 oraz dzisiejszego o modułach RF. Będzie on również pełnić funkcję utrwalenia dzisiejszej lekcji.

Schemat nadajnika:
kurs 10.3 nadajnik_bbSchemat odbiornika:
kurs10.3odbironik

Kod nadajnika:

Pozwolę sobie od razu przejść do pętli głównej programu. Na początku wywołujemy odczyt z czujnika DS18B20. Następnie tworzymy zmienną typu float (liczba zmiennoprzecinkowa) i przypisujemy jej dane z czujnika DS18B20. Musimy to zrobić za pomocą float, ponieważ chcemy poznać wartości temperatury po przecinku. Przykład: czujnik odczytał temperaturę 27,58 stopnia Celsjusza. Gdybyśmy przypisali zmienną int to byśmy otrzymywali wartość 27 stopni Celsjusza. Dlatego wykorzystujemy zmienną float, aby poznać wartość temperatury po przecinku. Następnie przy pomocy funkcji dtostrf() rozbijamy zmienną float na pojedyncze znaki. Ilość znaków 6 (zakładając, że uzyskamy temperaturę powyżej 100.00 stopni Celsujsza), ilość znaków po przecinku 2. Rozbite znaki przenieś do zmiennej tablicowej pomiar[6]. Następnie wyślij wartość zmiennej tablicowej o długości równej tablicy. Następnie poczekaj do zakończenia transmisji i odczekaj dodatkowo 0,5 sekundy.

Kod odbiornika:

Tutaj sytuacja wygląda podobnie jak w programie 2. Po weryfikacji danych utwórz zmienną „i” oraz String pomiar. Następnie do zmiennej String wstaw i połącz znaki znajdujące się buforze odbioru. Ustawiamy kursor wyświetlacza w lewym górnym rogu i wyświetl: „Temperatura: ” wartość temperatury (zmienna pomiar), znak stopnia oraz „C”. Odczekaj sekundę. Jak widać obsługa tych modułów nie jest taka trudna jak mogłoby się zdawać. Co prawda trzeba trochę pokombinować, jak przesyłać zmienne dane, ale gdy już to się opanuje to będzie znaczenie łatwiej w przyszłości ;)

Efekt naszego programu:

Materiały do tej części kursu:

Download-icon

 

 

 


Jeżeli chcesz być informowany na bieżąco o nowych częściach kursu to kliknij „Lubię to!” bądź subskrybuj naszą stronę, aby otrzymywać na adres e-mail nowości ze strony. Jeżeli masz jakieś pytania to śmiało zadawaj je na forum ; )