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.

RS232 - szybkie pytanie - TXD, RXD

16 Maj 2005 19:55 12824 21
  • Poziom 36  
    Wiem, że temat jest banalny. Ale ja chcę się upewnić. Urządzenia, w zależności od funkcji, (Master/Slave) będą miały skrosowane bądź nie linie TXD, RXD. Mam rację? Urządzenie, które było slave, nie może nagle stac sie masterem, bez przekrosowania tych linii? Pytam, by się upewnić.

    Pozdrawiam.
  • VIP Zasłużony dla elektroda
    Tx nadaje Rx odbiera, w RS232 nie ma mastera i slave od strony sprzętu, jedynie programowo, a jeśli chodzi o urządzenia do komputera, to z regóły jest to tak zrobione że kabel skrosowany ma wejścia męskie i żeńskie.

    Krosowanie musi być stosowane zawsze, bo bez krosa transmisja nie zadziała
  • Poziom 28  
    Przez RS232 mozna polaczyc tylko 2 urzadzenia wiec jak wspomnial poprzednik tu nie ma master/slave typowego dla sieci gdzie jest wiecej urzadzen na jednej lini transmisyjnej i jest potrzebne zapanowanie nad tym. W RS za to jest rozroznienie pomiedzy half duplex i full duplex. Typowy kabel null modem ze skrosowanymi liniami jest typu full duplex i jezeli oba urzadzenia moga jednoczesnie nadawac i odbierac (uzywaja osobnych rejestrow do odbioru i nadawania) to nie musisz na nic czekac. "Master" moze nadawac do "slave'a" a ten moze jednoczesnie nadawac do "master'a"
    Pozdro
    Dexter
  • Poziom 36  
    Dexter77 napisał:
    Przez RS232 mozna polaczyc tylko 2 urzadzenia wiec


    Kiedyś w jakiejś EP czy Elektorze wyrysowali układ, w którym na RS232 (wyjście z MAX232) była podwieszona dioda i układy tworzyły iloczyn na szynie (takie pseudo 485, zresztą tak to było opisane). Oczywiście sztuczka poza standardem.
  • Specjalista PLD
    @ele mid,
    Sadze, ze wiem skad wzielo sie Twoje pytanie.
    Rzeczywiscie, przez niezrozumienie czasem urzadzenia DCE ( Data Communication Equipment ) nazywane sa Slave a urzadzenia typu DTE ( Data Terminal Equipment ) nazywane sa Master. W odniesieniu do linii RS232 DCE to inaczej modemy, a DTE to PC-ty.
    i rzeczywiscie mimo, ze oba te urzadzenia sa typu RS232 to posiadaja odmienne definicje sygnalow w swoich interfejsach.
    Ogolnie mozna powiedziec ze polaczenie miedzy urzadzeniami DTE<-->DCE odbywa sie nieskrosowanym kablem, podczas gdy miedzy urzadzeniami tego samego rodzaju musimy uzyc kabli skrosowanych. jesli chcesz wiecej sie dowiedziec na ten temat, zerknij tu : http://www.telenovela-world.com/~spade/linux/howto/Serial-HOWTO-19.html .

    Pozdrawiam, yego
  • VIP Zasłużony dla elektroda
    Mam książke z roku 1994, gdzie piszą DCE i DTE, oraz o tym że producenci sami tego za bardzo nie przestrzegają, a kable czasem mają tylko niektóre linie skrosowane, przy czym są to specyficzne kable do konkretnych urządzeń, kumpel miał modem który miał skrosowane RTS z CTS ??!! i po podłączeniu zwykłego kabla wieszał się co chwila.

    Bajzel na tym świecie z tymi kablami :)
  • Poziom 13  
    yego666 napisał:
    ... przez niezrozumienie czasem urzadzenia DCE ( Data Communication Equipment ) nazywane sa Slave a urzadzenia typu DTE ( Data Terminal Equipment ) nazywane sa Master.


    No i w pewnej pokretnej logice nazewnictwo takie ma pewien sens. Gdyz to DCE "swiadczy" uslugi na rzecz DTE. A ze tu jest "tylko" 1:1, i mistrz nie wybiera sobie z grona swoich niewolnikow, to juz inna bajka.


    Ps. DCE -> data circuit-terminating equipment
  • Poziom 19  
    Witam,

    w uzupelnieniu yego6666666 (piekny, krotki wyklad o RS) mozna dodac, ze z moich doswiadczen wynika, ze urzadzenia typu DTE (czyli np komputer) maja wyprowadzenie RS typu męskiego, a DCE (modem) żenskiego. W takich przypadkach kabel jest 'na wprost'. Gdy natomiast łączymy ze soba 2 komputery, musimy 'skrzyżować' linie TX i RX.

    Jesli dokladniej przeanalizowac temat, to jednak nie ma az tak duzego balaganu w tym, zresztą w sieci jest b. duzo informacji na ten temat, takze duzo jest literatury papierowej.
  • Poziom 36  
    Wracając do tematu... :-)

    1. Jeżeli chcę mieć połączone urządzenia o równorzędnym statusie, DTE <-> DTE używam skrosowanego kabelka o żeńskich wtyczkach. Teraz problem... jak to oprogramować :-) Może jakiś króciutki programik w BASCOMie?
    Np. niech DTE2 czeka na daną spod DTE1, a jeśli ta dana ma wartość 100, to niech DTE2 odeśle do DTE1 wartość 200 :-) Będę bardzo zobowiązany.

    2. RS232 to połączenie tylko dwóch urządzeń. Przynajmniej z założenia. A jeśli się uprę, i podepnę pod DTE (komputer) 16 urządzeń (DCE)? Na wysłaną daną oczywiście zareaguje tylko jedno DCE, które dokona programowej identyfikacji adresu, ukrytego, na 4 pierwszych bitach otrzymanej danej?

    3. Jak wykonać zadanie z pkt. pierwszego dla RS485? (schemacik+programik)?

    Temat zaciekawił mnie. No i najwyższa pora okiełznać RS232!
  • Poziom 21  
    McRancor napisał:
    Mam książke z roku 1994, gdzie piszą DCE i DTE, oraz o tym że producenci sami tego za bardzo nie przestrzegają, a kable czasem mają tylko niektóre linie skrosowane, przy czym są to specyficzne kable do konkretnych urządzeń, kumpel miał modem który miał skrosowane RTS z CTS ??!! i po podłączeniu zwykłego kabla wieszał się co chwila.

    Bajzel na tym świecie z tymi kablami :)


    Ten "standard" został przez lata tak zmasakrowany przez róznych producentów, ze już trudno tu mówić o jakimś standardzie :). To jest fajny przykład na to co powinien miec dobry protokół transmisji, a czego raczej nie. Mysle, ze najbardziej przypadła ludziom idea asynchronicznego przesyłania danych zastosowana w RS232 i wykorzystywali ja nie tylko do komunikacji modem-pc. Natomiast wszystkie te pozostałe linie, które tam są były za bardzo związane własnie z pracą modemów i przy innych zastosowaniach nie są stosowane lub sa wykorzystywane w inny sposób niż przewiduje RS232. (np uzywanie linni CTS do wstrzymywania nadawania danych z DTE do DCE gdy np DCE nie wyrabia tez jest wykroczeniem poza pierwotny standard v.24)
  • Poziom 14  
    ele mid napisał:
    Wracając do tematu... :-)

    1. Jeżeli chcę mieć połączone urządzenia o równorzędnym statusie, DTE <-> DTE używam skrosowanego kabelka o żeńskich wtyczkach. Teraz problem... jak to oprogramować :-) Może jakiś króciutki programik w BASCOMie?
    Np. niech DTE2 czeka na daną spod DTE1, a jeśli ta dana ma wartość 100, to niech DTE2 odeśle do DTE1 wartość 200 :-) Będę bardzo zobowiązany.


    DTE1

    print zmienna
    input zmienna1

    DTE2

    :odczyt
    input zmienna
    if zmienna<>100 then goto odczyt
    print 200

    Zajrzyj do helpa w bascomie tam masz wszystko (nie pamiętam czy input czaka na zmienną).
    A podłączenie: Tx jednego z Rx drugiego.

    Pozdr
  • Poziom 11  
    A ja chcialbym Atmege8 podlaczyc do PCta. Komunikacja obustronna przez COM1.
    Czy moge do tego wykorzystac piny RxD i TxD z Atmegi? Czy warto korzystac z nich w trybie UART/USART? Czy bedzie to full duplex?
    Oczywiscie po drodze musze wstawic MAX232 albo cos podobnego? Czy wtedy z calego RS232 PCtowego, wykorzystuje jedynie 2 piny?
  • Poziom 21  
    yrrhedes napisał:
    A ja chcialbym Atmege8 podlaczyc do PCta. Komunikacja obustronna przez COM1.
    Czy moge do tego wykorzystac piny RxD i TxD z Atmegi? Czy warto korzystac z nich w trybie UART/USART? Czy bedzie to full duplex?
    Oczywiscie po drodze musze wstawic MAX232 albo cos podobnego? Czy wtedy z calego RS232 PCtowego, wykorzystuje jedynie 2 piny?


    Tak, RXD i TXD

    Warto, w UART

    Będzie to full duplex

    Tak potzrebujesz max'a albo konwerter na tranzystorach

    Wykorzystujesz 3 piny : rx,tx i gnd
  • Poziom 36  
    A w związku z tym:

    ele mied napisał:
    2. RS232 to połączenie tylko dwóch urządzeń. Przynajmniej z założenia. A jeśli się uprę, i podepnę pod DTE (komputer) 16 urządzeń (DCE)? Na wysłaną daną oczywiście zareaguje tylko jedno DCE, które dokona programowej identyfikacji adresu, ukrytego, na 4 pierwszych bitach otrzymanej danej?

    3. Jak wykonać zadanie z pkt. pierwszego dla RS485? (schemacik+programik)?

    Nikt się nie wypowie?
  • Pomocny post
    Poziom 28  
    Jezeli uzyjesz 8 maxow 232 to wejscia wszystkich nadajnikow (nozki 10,11) laczysz razem do nozki TxD procesora. W ten sposob wysylasz komende z adresem do wszystkich urzadzen. Z odbiornikiem troche gorzej. Musisz uzyc 3 kosci z szesciokrotnym buforem z wyjsciem typu otwarty kolektor np. LS07. Wejscia kazdego bufora laczysz z wyjsciami max-a (nozki9,12) a wyjscia buforow laczysz do kupy i podciagasz rezystorem np. 2k2 do plusa zasilania i to oczywiscie do nozki RxD procesora. Oczywiscie ten opis tyczy sie mastera, slave-y maja tylko 1 max-a i sa podlaczone normalnie. Teraz tylko wystarczy zadbac o to zeby odpowiadal tylko jeden procesor naraz bo w przeciwnym przypadku beda przeklamania. Mozesz pomyslec o wykorzystaniu trybu 9cio bitowego i funkcji USART w Atmedze ktora nazywaja komunikacja wieloprocesorowa (multi-processor communication, szczegoly w datasheecie)
    Pozdro
    Dexter
  • Pomocny post
    Poziom 36  
    ele mid napisał:
    2. RS232 to połączenie tylko dwóch urządzeń. Przynajmniej z założenia. A jeśli się uprę, i podepnę pod DTE (komputer) 16 urządzeń (DCE)? Na wysłaną daną oczywiście zareaguje tylko jedno DCE, które dokona programowej identyfikacji adresu, ukrytego, na 4 pierwszych bitach otrzymanej danej?


    Kierunek PC>>Odbiorniki OK pod warunkiem, że obciążalność RS232 jest wystarczająca dla wysterowania takiej ilości urządzeń. W drugą stronę musisz zapewnić elektryczne odłączenie układów nieaktywnych żeby nie blokowały transmisji "wybrańca". Najprostszym sposobem jest użycie tych diod, o których pisałem wcześniej łączących nadajniki wszystkich "SLEJWÓW" do wspólnej szyny odbiornika PC (chyba w spoczynku na RS mamy minus, więc diody łączymy anodami do wyjść nadajników MAX232 katody dajemy na wspólną szynę i dajemy opornik podciągający do minusa ciągniętego z MAXa albo z linii sterujących RSa w PC).

    Inny "patent", który zresztą ostatnio sprawdziłem w urządzeniu pomiarowym to połączenie tylko jednego MAXa i dołączenie do jego linii kilku procesorów. Odbiorniki ATMega łąpią jednocześnie, problem obciążalności przenosi się na MAXa (musi się wyrobić). Nadajnik SLAVE wywołany do odpowiedzi przechodzi w tryb nadawania UART, natomiast pozostałe pracują w trybie wysokiej impedancji (jako wejścia) i dzięki temu nie zakłócają transmisji.

    Code:

    .equ   DFTX_PORT   = PORTD
    .equ   DFTX_DIR        = DDRD
    .equ   DFTX            = 1

    .macro LockTX
       cbi   UCSRB,TXEN             ;disable TX
       cbi   DFTX_DIR,DFTX        ;line as input
    .endm

    .macro UnLockTX
       sbi   DFTX_DIR,DFTX        ;as output (po co???)
       sbi   UCSRB,TXEN             ;enable TX
    .endm
  • Pomocny post
    VIP Zasłużony dla elektroda
    Patentów jest wiele, ale chyba najleprzy to zastosowanie RS485, który z założenia jest zrobiony dla sieci do 32 urządzeń.

    RS485 opisuje elektryczną stronę komunikacji, a nie protokół, który jest z regóły identyczny z RS232, jedyne czym się całość różni z punktu widzenia procesora, to transmisja ma sterowany kierunek, czyli jest half-dupleksowa, procesor przełącza transceiver RS485 (np. max485) w tryb nadawania bądź odbioru.

    Na raz nadawać może tylko jedno urządzenie i sieć musi być spolaryzowana specjalnymi rezystorami, ponadto powinna mieć impedancję rzędu kilkudziesięciu Ohm.

    W transceiverach nóżki włączenia nadajnika i odbiornika są wyprowadzone osobno, ale jedna jest zanegowana, także w typowej aplikacji się je łączy i steruje jedną nogą procesora.

    Transmisja śmiga na dwuprzewodowej magistrali z liniami A i B, jest odporna na zakłócenia i ma dość duży zasięg.

    Innymi słowy żeby przesiąść się na RS485 należy dodać tranceivery RS485 zamiast transceiverów RS232C i dodatkowo dodać jeszcze jedno połączenie między prockiem a w/w nóżkami sterowania kierunku transceivera. W programie dodajemy ustawianie lini kierunkowej przed nadawaniem i zerujemy ją zaraz po nadaniu. No i oczywiście pilnujemy żeby nie nadawać i odbierać w tym samym momencie. Bascom i tak nie korzysta z full dupleks... Jednak polecenie

    input "wyświetlany", pobierany

    trzeba zamienić na

    Kierunek alias Portproca.Noga

    Kierunek = 1
    Print "wyświetlany"
    Kierunek = 0
    Input pobierany

    Chyba starczy taka odpowiedź ;)
  • Poziom 36  
    Witam. Mam kolejne pytanie. Załóżmy, że opracowane przeze mnie urządzenie (lub szereg takich urządzeń) komunikuje się w standardzie RS485. Niech każde z takich urządzeń wyposarzone jest w dwa złącza DB9M (no właśnie - jakie złącza przyjęło się stosować dla RS485?) i połączone w szereg z innymi.

    Chciałbym teraz móc wpiąć się w "to" z komputerem PC. A do tego potrzebowałbym kabelka - konwertera, z RS232C na RS485. Przydałoby się, aby takie coś zmieściło się wewnątrz obudowy gniazda nakablowego DB9F. Czy to jest możliwe? A może lepiej w docelowym urządzeniu zastosować dwa wyprowadzenia: RS232C do komunikacji z komputerem PC, a RS485, do komunikacji z resztą świata?

    Pytanie teraz, jak zrealizować niezawodność komunikacji PC <-> układ. Pewnie tylko oczekiwanie na zwrotną odpowiedź potwierdzającą i próby ponawiania wysłania ramki, w przypadku braku odpowiedzi.

    A niezawodność komunikacji (obsługa kolizji) dla RS485, przy zachowaniu równouprawnienia urządzeń do magistrali? Coś słyszałem o nasłuchiwaniu własnego echa... Ale zaraz, chwila, jeśli to idzie na jednej parze przewodów, i urządzenie może tylko nadawać LUB odbierać (RS485), to w jaki sposób miałby się obbywać nasłuch...? Nasłuch chyba odpada?
  • Poziom 36  
    ele mid napisał:
    Witam. Mam kolejne pytanie. Załóżmy, że opracowane przeze mnie urządzenie (lub szereg takich urządzeń) komunikuje się w standardzie RS485. Niech każde z takich urządzeń wyposarzone jest w dwa złącza DB9M (no właśnie - jakie złącza przyjęło się stosować dla RS485?) i połączone w szereg z innymi.


    Advantech w swoich ADAMach stosuje zwykłe złącza na śrubki, podobnie jak w zasilaniu i kanałach pomiarowych...chyba nie w szereg, tylko równolegle.

    ele mid napisał:
    Chciałbym teraz móc wpiąć się w "to" z komputerem PC. A do tego potrzebowałbym kabelka - konwertera, z RS232C na RS485. Przydałoby się, aby takie coś zmieściło się wewnątrz obudowy gniazda nakablowego DB9F. Czy to jest możliwe? A może lepiej w docelowym urządzeniu zastosować dwa wyprowadzenia: RS232C do komunikacji z komputerem PC, a RS485, do komunikacji z resztą świata


    Połączone ze sobą MAX485 i MAX232 linie transmisji w obu kierunkach + sygnał ustawiania kierunku na 485 (można podać z sygnałów sterowania modemem złącza PC przez kanał MAX232 albo dokłada się dodatkowy monowibrator np.555 wykrywający wystąpienie transmisji). Schematy można znaleźć na elektroda.pl
    https://www.elektroda.pl/rtvforum/viewtopic.php?t=178422&highlight=max232+max485...było jeszcze kilka innych

    ele mid napisał:
    Pytanie teraz, jak zrealizować niezawodność komunikacji PC <-> układ. Pewnie tylko oczekiwanie na zwrotną odpowiedź potwierdzającą i próby ponawiania wysłania ramki, w przypadku braku odpowiedzi.

    A niezawodność komunikacji (obsługa kolizji) dla RS485, przy zachowaniu równouprawnienia urządzeń do magistrali? Coś słyszałem o nasłuchiwaniu własnego echa... Ale zaraz, chwila, jeśli to idzie na jednej parze przewodów, i urządzenie może tylko nadawać LUB odbierać (RS485), to w jaki sposób miałby się obbywać nasłuch...? Nasłuch chyba odpada?

    Gdybyś miał możliwość odsłuchu własnych sygnałów, kolizję można wykryć w trakcie transmisji bitu i w tym momencie oddać szynę "silniejszemu" w przypadku przełączanych kierunków każdy transfer musi być potwierdzany, a brak potwierdzenia powinien spowodować odczekanie i wznowienie zadania, przy czym czasy tych odczekań powinny być różne dla różnych modułów, żeby nie doszło do kolejnej kolizji. Oczywiście w chwili gdy coś się dzieje w sieci, moduł musi się powstrzymać z przejściem na nadawanie.

    Większy "porządek" panuje w sieciach z przesyłaniem znacznika Token Passing, gdzie poszczególne moduły dostają kolejno swoje wejścia do sieci (taki hulający MASTER). Oczywiście na wyższym poziomie taka sieć może działać dokładnie wg tej samej logiki co sieć z detekcją kolizji. Był niedawno taki temat na elektrodzie.
    https://www.elektroda.pl/rtvforum/viewtopic.php?t=306411&highlight=

    Trzeci wariant to sieć z jednym MASTEREM odsłuchującym pozostałych

    To tylko trzy warianty z wielu.
  • VIP Zasłużony dla elektroda
    Z doświadczenia odradzałbym tryb pierwszy, może się zdażyć że dwa urządzenia wejdą w tryb nadawania na raz, a to kompletnie rozwala transmisję! Kolizja w RS485 jest niedopuszczalna, kombinowałem kiedyś ze sporą siecią i po kolizji żaden moduł nie wiedział co się dzieje i próbował coś nadawać, co tylko pogarszało sytuację. Master odpytujący to dobre rozwiązanie, takim masterem mógłby być np. komputer, ale bez niego nic działać nie będzie! Token Ring (czy raczej system oparty o jego zasadę) działa doskonale.
  • Poziom 36  
    marek_Łódź napisał:
    chyba nie w szereg, tylko równolegle.

    Jasne :) Technicznie mówiąc - równolegle, ale z wyglądu przypomina to szereg (w każdym urządzeniu dwa porty, które fizycznie są jednym portem, tylko umożliwia to podłączenie dwóch kabelków). Ale może to nie jest najlepszy pomysł, dlatego zapytałem o stosowane rozwiązania :-)

    marek_Łódź napisał:
    Połączone ze sobą MAX485 i MAX232 linie transmisji w obu kierunkach + sygnał ustawiania kierunku na 485 (można podać z sygnałów sterowania modemem złącza PC przez kanał MAX232 albo dokłada się dodatkowy monowibrator np.555 wykrywający wystąpienie transmisji). Schematy można znaleźć na elektroda.pl
    https://www.elektroda.pl/rtvforum/viewtopic.php?t=178422&highlight=max232+max485...było jeszcze kilka innych

    Oki, dzięki :-)

    marek_Łódź napisał:
    Gdybyś miał możliwość odsłuchu własnych sygnałów, kolizję można wykryć w trakcie transmisji bitu i w tym momencie oddać szynę "silniejszemu" w przypadku przełączanych kierunków każdy transfer musi być potwierdzany, a brak potwierdzenia powinien spowodować odczekanie i wznowienie zadania, przy czym czasy tych odczekań powinny być różne dla różnych modułów, żeby nie doszło do kolejnej kolizji. Oczywiście w chwili gdy coś się dzieje w sieci, moduł musi się powstrzymać z przejściem na nadawanie.

    Oki.

    marek_Łódź napisał:
    Większy "porządek" panuje w sieciach z przesyłaniem znacznika Token Passing, gdzie poszczególne moduły dostają kolejno swoje wejścia do sieci (taki hulający MASTER). Oczywiście na wyższym poziomie taka sieć może działać dokładnie wg tej samej logiki co sieć z detekcją kolizji. Był niedawno taki temat na elektrodzie.
    https://www.elektroda.pl/rtvforum/viewtopic.php?t=306411&highlight=


    Tylko, że Token Ring podobno bywa zawodny...: http://forum.ep.com.pl/viewtopic.php?p=52250#52250

    http://forum.ep.com.pl/viewtopic.php?p=52250#52250 napisał:
    Rozważasz rozwiązanie z token-ring. Rozwiązanie jak rozwiązanie ma wady i zalety. Sprawia to trochę problemów, bo przy "krążącym żetonie" ma on ochotę czasami zaginąć i wtedy powstaje problem rekonfiguracji (identycznie jak na starcie). W ten sposób można wdepnąć w całkiem spory temt, bo trzeba rozstrzygnąć kto ma zacząć, ilu jest "dyskutantów" itp. Prędzej proponowałbym zastosowanie jednego procka specjalnie do nadzoru transmisji, takiego "krupiera, co rozdaje karty". Problemy będą podobne, ale przynajmniej jest wiadomo kto zaczyna zabawę. Jeżeli do tego chcesz jeszcze uzyskać możliwość dynamicznej rekonfiguracji (wpiąć lub wypiąć z takiej sieci urządzenie) to robi się całkiem spory temat.
    Ewentualnie można rozważyć transmisję ze słuchaniem własnego echa i nie bawić się w żadne żetony. Jak nie dało się nadać, a o tym jest łatwo się przekonać, to po losowej długości opóźnienia spróbować jeszcze raz.


    marek_Łódź napisał:
    Trzeci wariant to sieć z jednym MASTEREM odsłuchującym pozostałych

    No, jest taka możliwość, ale ona mi się nie za bardzo podoba...
  • Poziom 36  
    ele mid napisał:
    Tylko, że Token Ring podobno bywa zawodny...:


    Co to znaczy "zawodny"? Sytuacja zaginięcia i odtwarzania znacznika jest jednym z głównych wyjatków obsługiwanych w tego typu sieci i nie jest to AWARIA. Tak, jak w powyższej krytyce "żetonu" powiedziano algorytmy odtwarzania struktury komunikacyjnej po zgubieniu znacznika są zbliżone lub identyczne z konfigurowaniem sieci przy starcie, więc gdzie problem?

    W temacie Token ring na elektrodzie masz jakiś zarys algorytmów tego typu działań. Sieć token ring ma wszystkie zalety sieci kontrolowanej masterem zapewniając dodatkowo wysokie bezpieczeństwo rozproszonego zarządzania. Płaci się za to większą złożonoscią algorytmów obsługi (trzeba dobrze pogłówkować, zeby transfer i obsługa wyjatków były sprawne).

    Aktualnie dłubię sobie przy uniwersalnym sieciowym środowisku operacyjnym dla 8-bitowców ("system operacyjny" to już by było naduzycie) i z w/w względów postawiłem właśnie na token ring, a dokładniej mówiąc na multitokenowe combo z priorytetami. No ale tak naprawdę wybór jest kwestią gustu. Ważne, żeby algorytmy zapewniały bezawaryjną pracę i obsługę wyjątków, czego zyczę sobie i innym.

    Dodano po 2 [godziny] 55 [minuty]:

    McRancor napisał:
    Z doświadczenia odradzałbym tryb pierwszy, może się zdażyć że dwa urządzenia wejdą w tryb nadawania na raz, a to kompletnie rozwala transmisję! Kolizja w RS485 jest niedopuszczalna, kombinowałem kiedyś ze sporą siecią i po kolizji żaden moduł nie wiedział co się dzieje i próbował coś nadawać, co tylko pogarszało sytuację.


    Czy przypadkiem nie opisałeś tu błędnego działania procedur detekcji błędów i ratunkowych. Tak naprawdę to diabeł zawsze siedzi w sofcie.