Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Atmega32 - RS232 i RS485 na jednym USART ATmegi

25 Cze 2016 19:36 882 11
  • Poziom 23  
    Zastanawiam się czy na jednym porcie sprzętowym USART ATMegi 32 można fizycznie podłączyć 2 interfejsy PHY wspomnianych protokołów w postaci MAX3232 i SP485 równolegle, bez konfliktów?

    Potrzebuję mieć RS-232 do programowania sterownika przez bootloadera, czyli okazjonalnie, na nie działającym urządzeniu. RS485 by działał normalnie podczas pracy. Więc konflikt "softwerowy" praktycznie nie występuje (albo podpięty jest jeden interfejs, albo drugi). Pytanie tylko czy oba "PHY" nie będą na siebie błędnie oddziaływały z podłączonymi liniami Rx i Tx.
  • Użytkownik usunął konto  
  • Poziom 23  
    Piotrus_999 napisał:
    problem ze SP 485 nie ma zadnej formy "chip select" w odróznieniu do max-a


    Dzięki, ale to niejednoznaczna odpowiedź na postawione pytanie. Zresztą MAX3232 nie ma "chip select" więc nie do końca rozumiem.
  • Użytkownik usunął konto  
  • Poziom 23  
    No tak, ale MAX3232 nie ma nic w stylu CS :-) Nie ma żadnego pinu odpowiedzialnego za podobne działanie. Chyba pomyliło się z innymi MAXami (np 3222), gdzie jest EN. Ja mam takiego bez.
  • Użytkownik usunął konto  
  • Użytkownik usunął konto  
  • Poziom 23  
    Szukam prostszego rozwiązania i sobie jedno obmyśliłem.
    Problemem jest MAX3232, a konkretnie jego linia Rx, nie da się jej przełączyć w stan wysokiej impedancji. Z kolei SP485 da się. Więc łącząc je równolegle zastosuje rezystor np 15k przy samym MAX3232, na linii Rx. Nieużywany Pin Rx będzie wymuszał 0, ale za rezystorem SP485 będzie mógł sobie podawać co chce.

    Mam nadzieje, że to pomoże.
  • Poziom 23  
    A nie możesz programować przez RS485 ? Modyfikujesz bootloader tak aby obsługiwał halfduplex i przełączał RS485. Odpada zabawa z hardware.
  • Poziom 23  
    Nie, nie mogę. Nie każdy ma interfejs RS485, a użytkownik ma mieć możliwość łatwej zmiany softu
  • Poziom 34  
    Możesz użyć programowego uarta do komunikacji z bootloaderem i sprzętowego do obsługi rs485 , można też tak napisać bootloader żeby przy starcie systemu czekał na jakiś znak po rs232 a po chwili przełączał się na rs485 . taką funkcję można zrealizować na układach ttl . Minimalnie wystarczy nawet jedna zworka do przełączania wejścia rx mikrokontrolera raz na rs485 a przy programowaniu na rs232 tu możliwości nasz w zasadzie ograniczone tylko inwencją autora .