logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Wykorzystanie AVR w interfejsie ALDL (samochodowych)

mpo 20 Sty 2012 11:36 1867 6
REKLAMA
  • #1 10422709
    mpo
    Poziom 12  
    Chcę (w celach treningowo-eduakcyjnych) podłączyć się do samochodowego ECU jakimś układem opartym na AVR.

    ECU pracuje w standardzie ALDL, czyli jednoprzewodowa szyna szeregowa.
    Poziom sygnałów TTL, 7812 baud.
    Komunikacja typu:
    - zewnętrzne urządzenie wysyła kilka bajtów jako zapytanie
    - ECU odsyła kilka bajtów jako odpowiedź

    Czy jeżeli do tej linii interfejsu podepnę avr (np atmega8) ze zwartymi liniami Rx i Tx, to nie powstanie jakiś konflikt sprzętowy dla kontrolera?
    No bo niby wyprowadzeń nie powinno się ze sobą zwierać, ale z drugiej strony albo nadaję albo odbieram i nie powinno się "gryźć"???
  • REKLAMA
  • #2 10422770
    y0yster
    Poziom 19  
    Jeśli zewrzesz linie RxD i TxD to dostanie echo, czyli to co wyślesz z powrotem do Ciebie wróci.

    Jeżeli oba sygnały są kompatybilne napięciowo to powinno być w porządku.

    Jednakże do końca nie rozumiem co masz na myśli pisząc:

    mpo napisał:

    Czy jeżeli do tej linii interfejsu podepnę avr (np atmega8) ze zwartymi liniami Rx i Tx, to nie powstanie jakiś konflikt sprzętowy dla kontrolera?
    No bo niby wyprowadzeń nie powinno się ze sobą zwierać, ale z drugiej strony albo nadaję albo odbieram i nie powinno się "gryźć"???


    W jaki sposób chcesz to podpiąć? W AVR'ku chcesz zewrzeć RxD i TxD oraz to wszystko podłączyć do urządzenia?
    Na urządzeniu powinieneś mieć także dwa kable transmisyjne. RxD Atmegi łączysz z TxD urządzenia i vice versa.
  • REKLAMA
  • #3 10422876
    mpo
    Poziom 12  
    Echo może sobie wrócić - udam, że nie słyszę :)

    Tak, koncepcja jest taka, żeby zewrzeć Rx, Tx i linię sygnałową ECU.
    Linia jest tylko jedna, ale za to dwukierunkowa...
  • REKLAMA
  • #5 10427094
    kamyczek
    Poziom 38  
    Można użyć programowego uarta i załatwić wszystko na jednym pinie zmieniając podczas transmisji port jako wyjście przy nadawaniu i wejście podczas odbioru danych ,lub użyć układu 14HC125 tak jak proponuje to motorola w przypadku układów serii 68HC08 . Należy tylko pamiętać o pozostawianiu TX w stanie w którym nie zwiera on linii komunikacyjnej.
  • #6 10428544
    Nawigator
    Poziom 33  
    Jesteś pewien że ALDL ma poziom napięć TTL a nie 0/+12V?

    N.
  • REKLAMA
  • #7 10430552
    mpo
    Poziom 12  
    Spróbuję po weekendzie z układem y0ystera.
    W sumie softwareowy UART też jest dobrym pomysłem - zaoszczędza się na częściach ;)

    Tak na prawdę nie jest to "prawdziwy" ALDL tylko SDL (Suzuki Data Link) - firmowa wariacja na temat. Poziom sygnału jest organoleptycznie zweryfikowany na TTL.

    A tak abstrahując od tego do czego ma to służyć, to co by się mogło stać gdybym po prostu zwarł Tx i Rx (przy założeniu, że nie manipuluję tymi wyprowadzeniami "ręcznie", tylko przełączam się z nadawania na odbiór i z powrotem)?
REKLAMA