Witam,
Mam na linii kontrolera słynny DS18B20. Jeżeli czujnik jest podłączony to wszystko jest ok. Problem pojawia się wtedy jeżeli odepnę na chwilę czujnik. Funkcja zwraca mi wartość -1, a ponowne podłączenie czujnika nie powoduje ponowienia prawidłowych odczytów. Trzeba wtedy po podłączeniu zresetować cały układ.
Jeżeli przed komendą return wstawię formułę:
wszystko jest prawidłowo (czujnik wznawia normalnie pracę po podłączeniu). Dodam jeszcze że użycie tutaj zamiast 0 dowolnej ujemnej liczby powoduje ponowienie problemów.
Wydaje mi się, że niezależnie od odebranych danych czujnik po ponownym podłączeniu powinien normalnie wznowić pracę. Wartość zwracana przez funkcję przekazana jest bezpośrednio do wyświetlenia. Funkcja wyświetlania działa prawidłowo i nie robi problemów z żadną wielkością.
Co może być tego przyczyną?
Mam na linii kontrolera słynny DS18B20. Jeżeli czujnik jest podłączony to wszystko jest ok. Problem pojawia się wtedy jeżeli odepnę na chwilę czujnik. Funkcja zwraca mi wartość -1, a ponowne podłączenie czujnika nie powoduje ponowienia prawidłowych odczytów. Trzeba wtedy po podłączeniu zresetować cały układ.
Kod: C / C++
Jeżeli przed komendą return wstawię formułę:
Kod: C / C++
wszystko jest prawidłowo (czujnik wznawia normalnie pracę po podłączeniu). Dodam jeszcze że użycie tutaj zamiast 0 dowolnej ujemnej liczby powoduje ponowienie problemów.
Wydaje mi się, że niezależnie od odebranych danych czujnik po ponownym podłączeniu powinien normalnie wznowić pracę. Wartość zwracana przez funkcję przekazana jest bezpośrednio do wyświetlenia. Funkcja wyświetlania działa prawidłowo i nie robi problemów z żadną wielkością.
Co może być tego przyczyną?