Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 27 maja 2026, o 02:49


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
Autor Wiadomość
 Tytuł: zapalenie diody
PostNapisane: 27 kwi 2014, o 23:22 
Offline
Nowy

Dołączył(a): 09 lut 2014
Posty: 9
Pomógł: 0

Witam,

Chce zapalić diodę LED gdy temperatura na czujniku T1 jest większa np od 26 stopni.

LED_OK-zapalenie,
LED_OFK-zgaszenie,
temp_T1- temperatura z czujnika DS18B20,

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Nie wiem niestety jak zczytać temperaure z czujnika i zadać ją w temp_T1.

Proszę o wyrozumiałość. pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 kwi 2014, o 23:25 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 05 sie 2013
Posty: 1154
Lokalizacja: Lublin / Kraków
Pomógł: 72

To może na początek trzeba się zająć obsługą magistrali 1-wire... Bo taka jest używana przez układy DS18x20.
Próbowałeś coś z tym robić wcześniej ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 kwi 2014, o 23:37 
Offline
Nowy

Dołączył(a): 09 lut 2014
Posty: 9
Pomógł: 0

Tak. Mam odczyt z dwóch czujników i wyświetlenie na wyświetlaczy LCD 2x16.
Jest to program Pana Mirka.

Nie wiem jak "zadać" temperature z czujnika.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 kwi 2014, o 23:51 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 05 sie 2013
Posty: 1154
Lokalizacja: Lublin / Kraków
Pomógł: 72

Jeśli to bazuje na kodzie Mirka to dobrze bo akurat tak się składa, że napisałem sobie kiedyś dwupunktowy termostat z regulowaną, warunkową histerezą.

Tobie chodzi o konwersję temperatury na liczbę całkowitą tak by móc ją porównywać.
Ja napisałem do tego funkcję:

proszę oto ona:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


funkcja ta zwraca nam temp. w postaci liczby całkowitej. Jak widać mamy tam mnożenie przez 10 więc dokładność pozostaje zachowana.

Wywołuję ją tak:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Zmiennej temp1 została przypisana wartość całkowita (ze znakiem) odpowiadająca temp pomnożonej przez 10
Czyli jeśli było 19,7 C to mamy 197.
zmienną temp porównujesz sobie z zadanym progiem w warunku IF i gasisz lub zapalasz diodę.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 kwi 2014, o 23:55 
Offline
Nowy

Dołączył(a): 09 lut 2014
Posty: 9
Pomógł: 0

Dzięki wielkie

:D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 kwi 2014, o 00:00 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 05 sie 2013
Posty: 1154
Lokalizacja: Lublin / Kraków
Pomógł: 72

Radekk napisał(a):
Dzięki wielkie

Nie ma sprawy ;)

Oczywiście temperaturę progową w warunku też musisz pomnożyć przez 10.
np.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 kwi 2014, o 00:10 
Offline
Nowy

Dołączył(a): 09 lut 2014
Posty: 9
Pomógł: 0

Będe próbowac. Mam nadzieje że się uda.
Jeszcze raz Dzięki



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 4 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO