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.

atemga 8 + dallas ds18b20 - nie sprawdza temperatury

adrian.wojdat 09 Lut 2015 16:33 699 10
  • #1 09 Lut 2015 16:33
    adrian.wojdat
    Poziom 6  

    Witam,
    Przeszukałem chyba wszystkie tematy na forum dotyczące atmegi + dallasa ds18b20
    i nie znalazłem odpowiedzi.
    Mianowicie posiadam:
    LCD 16x1 który jest tak naprawdę 2x8 tylko w jednym rzędzie.
    Czujnik temperatury dallas ds18b20
    i procesor atmega8a

    Pisząc kod najpierw zająłem się wyświetlaczem który działa już bez zarzutu
    potem wspierając się prezentacją znalezioną na forum https://www.elektroda.pl/rtvforum/download.php?id=454850
    napisałem taki kod [code]

    Kod: c
    Zaloguj się, aby zobaczyć kod


    po włączeniu wyświetlają się text czyli imie nazwisko nazwa aplikacji i temperatura która cały czas wynosi 0.0 nie zależnie od tego czy czujnik jest podłączony czy nie.
    ekran podłączony jest tak jak na obrazku a czujnik środkowa nóżka czyli DQ do PC5
    a GND do masy. A moja atmega pracuje na 1mhz (na 4 i 8 mhz też nie działało)
    wydaje mi się że przyczyną jest źle napisany kod ale mogę się mylić.

    0 10
  • #5 09 Lut 2015 18:58
    adrian.wojdat
    Poziom 6  

    Wszystkie nóżki układu osadzone są głęboko w płytce.

    0
  • #7 09 Lut 2015 19:12
    dondu
    Moderator Mikrokontrolery Projektowanie

    Ze zdjęcia można wnioskować, że ds18b20 jest podłączony nieprawidłowo, i nie dotyczy to tylko nóżki GND.
    Na schemacie i płytce brakuje także rezystora 4,7k, który powinien być zgodnie z dokumentacją ds18b20.

    0
  • #8 09 Lut 2015 20:37
    adrian.wojdat
    Poziom 6  

    Faktycznie podczas przepinania na potrzeby zdjęcia podpiąłem źle.
    Teraz podpięte jest prawidłowo i dodałem rezystor 4,7
    lecz dalej nic.

    0
  • #11 09 Lut 2015 21:10
    szczywronek
    Poziom 27  

    Sprawdź dokładnie i powoli wszystkie połączenia na płytce - Atmega jest źle zasilana.
    W przyszłości staraj się opierać na dokumentacji układów - schemat do Internetu może wrzucić każdy - a za ewentualnie spalone układy płacisz niestety Ty ;)

    Tak nieśmiało zasugeruję - poczytaj troszkę na temat operacji na portach w AVR'ach (np. o rejestrach PORTx i PINx); ewentualnie porównaj swoją bibliotekę z jakimś działającym przykładem z neta. Ta biblioteka nie ma szans działać w takim kształcie - już definicje na początku są źle.

    0