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.

mega32 bascom - układ Pcf 8574a

nouki 27 Lis 2012 19:49 1254 6
  • #1 27 Lis 2012 19:49
    nouki
    Poziom 25  

    Witam.

    Mam problem z w/w układem znajduje go pod adresem 126
    kod wygląda tak:

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    Wysyła prawidłowo zmieniając stany odczytuje 255 ciągle.

    diody pod porty 4,5,6 przycisk port.7

    Czy ktoś ma sprawdzoną procedurę wysyłania i odczytywania portów pojedyńczo.
    Che by 3 porty były wyjściami a pod jednym jest podpięty klawisz zwierający do + i odczytywać jego stan
    |Pozdrawiam Nouki

    0 6
  • #2 27 Lis 2012 20:53
    Mundi1970
    Poziom 24  

    Dwa pytania, jesteś pewny że posiadasz PCF8574A, a nie PCF8574? PCF8574 ma inny adres. Nogi układu A0, A1 i A2 są podłączone do GND czy do +5V?

    0
  • #3 27 Lis 2012 21:23
    zumek
    Poziom 39  

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod

    Brak sekwencji START, przed wysłaniem adresu do odczytu.
    Poza tym, po wysłaniu adresu układu warto sprawdzić bit Err, którego stan poinformuje nas o tym, czy układ odpowiedział(zgłosił się).

    0
  • #4 27 Lis 2012 21:47
    nouki
    Poziom 25  

    Witam.

    Program który pokazał mi taki adres jest na elektrodzie

    Code:

    For Adres = 100 To 200
    I2cstart
    I2cwbyte Adres
    I2cstop
    If Err = 0 Then
    Err = 1
    Cls
    Locate 1 , 1
    Lcd "Adres: " ; Adres
    Wait 2
    End If
    Next Adres


    Adres musi być dobry skoro zapala diody i gasi lecz odczyt daje wynik 255

    Układ ma oznaczenie PCF8574AP.

    Układ posiada na jednej lini 3 układy PCF8574ap , PCF8591, Mcp3221
    jutro zobacze pojedyńczo co się zgłasza pod jakim adresem.
    PCF8591 działa ok

    0
  • Pomocny post
    #5 28 Lis 2012 05:21
    zumek
    Poziom 39  

    nouki napisał:
    ...
    Adres musi być dobry skoro zapala diody i gasi lecz odczyt daje wynik 255

    A czy ja napisałem, że masz zły adres :?:
    Powtarzam, przed wysłaniem adresu do odczytu, użyj sekwencji START lub REPEAT START.

    0
  • #6 28 Lis 2012 13:17
    nouki
    Poziom 25  

    Witam. Pisałem do Kolegi Mundi1970.

    Więc zmieniłem adresy i teraz jest tak

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    Działa ok coś mi się ubzdurało że powinno byc 256 a jest 128 wartość po podaniu +5v.

    0
  • Pomocny post
    #7 28 Lis 2012 13:47
    Mundi1970
    Poziom 24  

    Do komunikacji z układem można wykorzystać instrukcje I2csend i I2creceive, po wykonaniu w zmiennej Err jest kod błędu:

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod

    0
  Szukaj w 5mln produktów