Właśnie powalił mnie nieprzewidziany problem. Urządzenie zewnętrzne dostarcza impulsy które muszę liczyć. Dokładna ich ilość jest dla mnie krytyczna. W ekstremalnym przypadku będzie ich około 1.000 na sekundę. W układzie, tym kontrowersyjnym, mam kilka gratów na I2C i raczej transmisja będzie ok bo w innym układzie timer dostarcza ponad 4.000 przerwań na sekundę i jest OK. Niestety tytułowe termometry DS18B20 i DS18S20 kuleją i to strasznie. Sporadycznie dostaję jakieś dane. Nie wiem czy błędnie dostają polecenie inicjacji czy też odczyt danych jest nieprawidłowy a może i jedno i drugie. Czy miał ktos taki problem a moze macie pewną procedurę w asemblerze, która go rozwiąże.
Teraz trochę danych:
Bascom 8051 v.2.0.11.0, procesor 89s53, aktualnie 12MHz (docelowo 24MHz), dwa termometry na różnych pinach naprzemiennie co pół sekundy są inicjowane i odczytywane, zasilanie pasożytnicze (ale po podłączeniu Vcc do 5V bez zmian), rezystor podciągający linię Dq od 2k2 do 10k (bez różnicy).
Pozdrawiam i życzę szampańskiej zabawy
PC
Aktyw Forum
Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.
Sprawdź punkty Zarejestruj sięProblem z DS18X20 przy zewnętrznym sygnale 1kHz na INT0
Moderatorzy:Jacek Bogusz, robertw, k.pawliczak, Moderatorzy
Z mojego doswiadczenia wynika, że czas pomiędzy poleceniem konwersji temperatury a jej odczytem, dla pojedyńczego czujnika powinien wynosić, co najmniej 750ms. Jak napisałeś "czytasz" temperaturę co pół sekundy- to za szybko. Pewnie masz wiekszość odczytów jako 80st. C. Wydłuż czas pomiedzy odczytami. W ciągu sekundy temperatura nie zmieni się dużo bardziej niż w ciągu pół sekundy.
Dla temperatur zblizonych do otoczenia czas konwersji jest bardzo krótki. 0.1 max 0.2 sekundy wystarcza. Tu problemem jest przerwanie. W sumie nie wiem czemu. Ja w zasadzie zliczam tylko kolejne impulsy czyli odkładam kilka danych na stosie i inkrementuję jedną zmienną potem odtwarzam dane ze stosu. Sporadycznie obsługuję timer ale to nie ma znaczenia bo zdarza się na prawdę sporadycznie.
Nie wiem o co chodzi. Czyzby polecania 1wire korzystały z timerów albo innych elemetów systemowych procesora!!
PC
Nie wiem o co chodzi. Czyzby polecania 1wire korzystały z timerów albo innych elemetów systemowych procesora!!
PC
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 53 gości