Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[AVR][Bascom]Dwa ds18b20 na jednej lini

pier 26 Paź 2012 16:42 2016 6
  • #1 26 Paź 2012 16:42
    pier
    Poziom 23  

    Witam.
    Koledzy nigdy nie podłączałem dwóch i więcej ds-ów do jednej linii ale kiedyś trzeba zacząć.

    Naskrobałem takie coś:

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    To jest urywek programu.

    Niby powinien pokazać dwa adresy dwóch ds-ów podłączonych do portu. I pokazuje ale dwa takie same: 40. Dlaczego?

    A może ma ktoś sprawdzony program do takiego odczytu cobym popatrzył i zrozumiał?

    0 6
  • #3 26 Paź 2012 17:33
    xury
    Poziom 38  

    Adresy są ośmio BAJTOWE, a ty je wrzucasz na pierwszy i drugi index tablicy ??

    0
  • Pomocny post
    #4 26 Paź 2012 20:41
    MArSTER_1
    Poziom 18  

    Instrukcja odczytuje 8 bajtów unikalnego numeru i zapisuje je w tablicy począwszy od wskazanego indeksu w stronę narastania indeksów. Czyli jeśli wskazuje się 1 to numer pierwszego czujnika jest w komórkach od 1 do 8. To znaczy, że powinieneś napisać:
    Z = 9
    Adres(z) = 1wsearchnext()

    0
  • #5 27 Paź 2012 05:33
    emarcus
    Poziom 35  

    pier napisał:
    Witam.

    A może ma ktoś sprawdzony program do takiego odczytu cobym popatrzył i zrozumiał?


    Przestudiuj Notę Applikacyjną AN#111 (mscelec.com)
    http://www.mcselec.com/index.php?option=com_content&task=view&id=75&Itemid=57

    Tam masz bardzo dobry edukacyjny przykład na dwa sensory DS z odczytem pełnego I.D., sprawdzaniem CRC, wyświetleniem pełnych I.D na LCD, oraz obliczaniem temperatur metodą z pominięciem liczb zmiennoprzecinkowych (floating point -SINGLE).
    Czyli praktycznie wszystko co potrzebujesz.

    e marcus

    0
  • #6 15 Gru 2012 16:46
    BartekWB
    Poziom 27  

    Mam problem, podłączyłem dwa czujniki i nie mogę odczytać temperatury.

    Czy schemat odczytu wygląda tak:

    1) Reset
    2) write H55 - aby powiedzieć kto ma słuchać poleceń
    3) Podaje adres czujnika
    4) write HBE dla odczytu scratchpad
    5) Odczyt scratchpad do zmienych
    6) Reset

    Mam jeszcze pytanie, co tak właściwie robi 1wverify, co on weryfikuje?
    Czy połączenie DS1820 i DS18B20 będzie działać prawidłowo?

    Poniżej wklejam jeszcze fragment odpowiadający za odczyt i konwersje temperatury:

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod

    0