Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Termometr na DS2436, projekt, schemat, opis

Gordios 29 Apr 2010 13:40 1162 0
Tespol
  • Jeśli chodzi o parametry czujnika temperatury to nie będę powtarzał informacji zawartych w notach katalogowych. (Bez problemu do zdobycia w internecie). Należy nadmienić, że oprócz rejestru z temperaturą układ-DS2436 zawiera jeszcze wiele innych rejestrów oraz różnego rodzaju pamięci . Powyższy układ scalony został zastosowany tylko ze względu na możliwość jego taniego zdobycia ze złomowanych baterii od telefonów Duet-Hagenuk . Producent nie poleca stosowania DS2436 w nowych aplikacjach.
    Opis urządzenia |(nie zasada działania)|Pomiar temp. W zakresie –55 do +125 `C z rozdzielczością 1`C.
    Częstotliwość odświeżania około 1 min (oraz. po przyciśnięciu przycisku “A”)

    Wskaźnik monotoniczności zmian temperatury (porównuje bieżącą wartość z ostatnio zarejestrowaną i jeśli te różnią się o więcej niż 2`C wtedy wskaźnik zostaje odpowiednio ustawiony)

    Zegar z kalendarzem (bez ustawiania roku (trzeba będzie skorygować lata przestępne ręcznie))

    Automatyczna rejestracja temperatury do pamięci- co godzina (o okrągłych godzinach) i wpis ostatniej skrajnie niskiej lub wysokiej temperatury.

    Pojemność pamięci. Przy zastosowaniu 24C64 = 255/5*32 =1632 wpisy. Co powinno wystarczyć na około 1.5 miesiąca rejestru. Można zastosować inną (mniejszą lub większą) pojemnościowo pamięć EEPROM (byle zachowywała kompatybilność formatu danych /chyba od 24C16 –24C128 |(w razie błędu popraw)|bez korygowania programu sterującego procesor.

    Jeden wpis zajmuje 5 bajtów 1-temperatura, 2 i 3 - godzina, 4 i 5 - data.

    Jak to się obsługuje?

    Dwa przyciski (P3.4, P3.5) – nazwijmy je umownie „+” i „-” służą do przeglądania rejestru z zapisanymi temperaturami oraz ustawiania zegara i daty. Trzeci (P3.3) – „A” –wychodzi z trybu rejestr i automatycznie wyświetla na krótki czas datę. Oprócz tego w tym momencie dokonywany jest pomiar temperatury (komunikacja z DS-em). Czwarty - „reset” –Bardzo potrzebny jeśli chcemy ustawić zegar lub datę.

    Ustawianie zegara:

    Przytrzymać przycisk „reset” i równocześnie „A”, po czym zwolnić "reset" – powinna pojawić się aktualnie ustawiona godzina. Wyjście z tego trybu - "reset".

    Ustawianie daty:

    Jak powyżej jednak dodatkowo należy przytrzymać jeden z przycisków „+” „-” . Uwaga. Podczas wejścia w tryb ustawianie daty, resetowany jest jeden z liczników rejestru, kolejne wpisy mogą wystąpić w innym miejscu pamięci. (Zerowanie to jest zastosowane ze względu na to że po pierwszym włączeniu urządzenia bajty pamięci są ustawiane przypadkowo. Wymusza to wpisywanie pierwszej danej od komórki o adresie 0. „Strona” pamięci natomiast nie jest zerowana i po włączeniu zasilania może zostać tam wpisana dowolna wartość od0-255. Po każdym zresetowaniu z lewej strony LCD powinna pojawić się małpa .Znika po naciśnięciu któregoś z przycisków. W przypadku wadliwego działania czujnika (np. brak dobrego styku (ERR=1) na LCD powinna się pojawić mała gwiazdka informująca, że coś było nie w porządku z komunikacją po 1Wire .

    Dodatkowe informacje:

    Program został napisany pod wyświetlacz typu 16*1a jednak w programie ze względu na mniejszy kod wynikowy jest zainicjowany wyświetlacz 16*1.
    Do współpracy z wyświetlaczem 16*1 należy przerobić program (kilka bajtów informujących o miejscu wyświetlania).

    Uwaga. Wartość rezystora R4 podciągający szyna 1 wire do plusa ma wpływ na mierzoną temperaturę (pośrednio zmienia się napięcie zasilające DS2436 podczas odczytu) , które powinno wynosić najlepiej 5V.
    Podobnie jest z kondensatorem C6. Powinien on być Jak największej pojemności. Najlepiej tantalowy lub lepszy (ze względu na skrajne temperatury otoczenia (chyba że ktoś poprowadzi do czujnika 3 kable i kondensator umieści w układzie macierzystym lecz w tedy już lepiej bezpośrednio podać zasilanie na czujnik –nogę nr.3)).

    Kwarc przy procesorze w układzie testowym ma f. = 10.7MHz. Nie zastosowano do niego kondensatorów. Jednak kilkakrotnie generator wzbudził się na 32MHz przez co układ oprócz tego że działał 3 razy szybciej nie rozpoznawał czujnika DS. Radzę więc nie oszczędzając dołączyć jakieś dwa kondensatory (np. 33p) pod wyprowadzenia kwarcu (nie musi być dokładnie 10.7).

    Z cewek można zrezygnować jeśli komuś nie przeszkadza co minutę trochę śmieci w eterze.

    Przy braku zasilania procek (P3.7) przez Q1 jest informowany o tym fakcie i nie mierzy temperatury. Temperatura zmierzona przy tak niskim zasilaniu byłaby co najmniej błędna.

    W razie Bug-ów lub pytań mail do mnie Bobeer (at) poczta.fm

    Dołączam nowszą wersje programu (kilka małych błędów zostało poprawionych)

    Wszystkie prawa zastrzeżone. Wykorzystywanie urządzenia do celów komercyjnych wyłącznie za zgodą autora.

    nadesłał: Bober
    Bobeer (at) poczta.fm

    Cool? Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    Gordios
    Level 18  
    Offline 
    Gordios wrote 395 posts with rating 234, helped 0 times. Been with us since 2010 year.
  • Tespol