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.

DS1820 + PIC871 PROSZĘ o pomoc

_Vex_ 27 Gru 2010 15:15 792 3
  • #1 27 Gru 2010 15:15
    _Vex_
    Poziom 9  

    Witajcie,

    przejrzałem już bardzo wiele stron, próbowałem różnego kodu i nadal mam problem z czujnikiem DS1820. Skupiłem się póki co na tym czy kontroler wykrywa czujnik i niestety wciąż mam negatywne wyniki. Program wyświetla 0 gdy nic nie jest podłączone do portu i 1 jak podłącze czujnik, a chyba powinno być na odwrót? Spójrzcie proszę na kod i podpowiedzcie co jest nie tak? Kontroler PIC 16F871, kwarc 4 MHz, do DS1820 podłączone +, GND, linia danych i rezystor 4,7 kohma między + i linią danych. Będę niezmiernie wdzięczny za pomoc.

    Code:
    short ow_ret;
    
    char* text;

    void main()
    {

      Lcd8_Init();
      Lcd8_Cmd(_LCD_CURSOR_OFF);
      Lcd8_Out(1, 1, "OW_Reset return:");

        while (1)
        {
          ow_ret = Ow_Reset(&PORTC,0);
          shorttostr(ow_ret, text);
          Lcd8_Out(2, 1, text);
          delay_ms(1000);
        }
    }

    0 3
  • #2 27 Gru 2010 15:19
    gpql
    Poziom 17  

    nie za bardzo widzę obsługę ds18b20 ?

    0
  • #3 27 Gru 2010 15:24
    _Vex_
    Poziom 9  

    W układzie zastosowany jest DS18S20, a program wykorzystuje bibliotekę do 1-wire z mikroC. Jako, że jestem początkujący to wydaje mi się, że może sprzętowo czegoś nie dopatrzyłem (??)

    0
  • #4 28 Gru 2010 13:29
    _Vex_
    Poziom 9  

    Problem rozwiązany. Klasyczny przykład niedopatrzenia i elektronicznego niechlujstwa - podłączyłem oczywiście odwrotnie GND i +. Po podłączeniu prawidłowym czujnik odpowiadał na sygnał resetu, ale wyświetlał 85, lub 127.5. Jak się dzisiaj okazało, odwrotna polaryzacja załatwiła czujnik. Z nowym, podłączonym prawidłowo wszystko śmiga jak należy. Palę się ze wstydu ;)

    0