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

ATmega + ds18b20 + nagła padaka - działo, ale przestało

11 Wrz 2007 14:15 1245 3
  • Poziom 2  
    Witam!

    Wykonałem płytkę z Atmegą16, kwarc 12MHz, lcd, ds18b20, kilka kondensatorów, ledów i przycisków na pokładzie. Taka sobie płytka testowa do małych projektów uC. Skorzystałem z wątków umieszczonych na forum.elektroda.pl oraz mikrokontrolery.net i udało się odczytać temperaurę z ds-a. Wszystko pięknie działało 3 dni. Wczoraj wieczorem źle podłączyłem przetwornik obrotowo impulsowy i zamiast na jeden z pinów portu C mikrokontrolera podawać na przemian logiczne 0 i 1 spowodowałem kilkukrotne (5 do 8 razy) zwarcie sygnałów GND z VCC. Oczywiście poprawiłem połączenia i układ uruchomił się chyba ok (chyba, gdzyż nie zwracałem uwagi na odczyt temperatury za bardzo - patrzałem na to czy dobrze zlicza impulsy Myślę jednak, że zauważyłbym jakaś mega głupotę zamiast temperatury). Po dwóch godzinach gdy podłaczyłem znowu układ - odczyt temperatury wskazywał 85 stopni. Sprawdzałem już na 5 ds-ach - niektóre pokazują 85 stopni a niektóre 127,9375. Te które wskazują 85 stopni po przytrzymaniu ręką (nagrzaniu) też zmieniają temperaturę na 127,9375, po puszczeniu ręki po chwili wracają do 85 stopni. Dodam, że w międzyczasie nie zmieniałem nic w oprogramowaniu. Sprawdziłem nawet starsze wersje oprogramowania które na 100% działały i ściągnąłem z internetu czyjś program do obsługi ds-a. Temperatura przy odczycie obojętnie jakim programem zawsze ma tą samą wartość (85 lub 127,9375).

    Co zrobiłem:
    - tak jak napisałem sprawdziłem już 5 dsów,
    - wymieniłem uC - miałem w domu drugą Atmegę - to samo.
    - sprawdziłem kilka wcześniejszych wersji mojego oprogramowania, które na pewno działały,

    Co mogę jeszcze zrobić? co sprawdzić, gdzie szukać? Czy możliwe by kwarc się jakoś... rozkalibrował? Wiem, że dsy są bardzo czułe na czasy transmisji - ale skoro coś przez 3 dni działało bez zarzutów? Poza tym coś z niego czyta... te 85 stopni to temperatura które zapisana jest w eepromie zaraz po podłączeniu do prądu - i dopiero po wykonaniu pierwszego pomiaru zamieniana jest na faktyczną. Czyli tak jakby czujnik... ale przecież sprawdzałem 5 sztuk! I w sumie tak jakby coś liczył - nagrzewam palcami czujnik i niektóre wskakują na 127 stopni... No i reszta działa nadal - wyświetlacz lcd, odczyt stanu portów sterowanie ledami, itd. Wszystko działa jak działo, tylko nagle brak odczytu z dsów.

    Nie wiem czego szukać... gdyby jakaś dobra dusza zapodała pomysł będę zobowiązany. Jest to moje pierwsze starcie z uC i w sumie elektroniką a więc bedę wdzięczny za każdą radę.

    Rafał
  • Osprzęt kablowy
  • Poziom 24  
    Z tego co pamiętam w przypadku odwrotnej polaryzacji DS blokuje się właśnie na 85 lub max. Sam uwaliłem kilka na żle zaprojektowanej płytce.
  • Osprzęt kablowy
  • Poziom 33  
    :arrow: R.R.R. - sprawdź zasilacz. Skoro robiłeś zwarcia zasilania to
    możliwe że z nim coś nie tak. W dodatku to jedna z rzeczy której
    jeszcze nie sprawdzałeś, a przynajmniej o tym nie pisałeś.
    Posprawdzaj też jakość lutów i połączeń.
  • Poziom 2  
    ok, nowy czujnik i wszystko działa - na pozostałych nie. Istnieje możliwość, że montując układ w obudowie i wyprowadzając złącza na zewnątrz źle przylutowałem przewody do gniazda canon i się poblokowały na tych 85 stopniach. Pewności nie mam, bo wczoraj wszystko rozłączyłem i od początku lutowałem. Co do zasilacza to sprawdzałem napięcie za stabilizatorem 4,99V.
    Dziękuję za zainteresowanie i pomoc.
    Rafał