Strona 1 z 1

transmisja RS

: 14 sty 2012 02:38
autor: sovolex
Witam,
Mam problem ze znalezieniem rozwiązania do automatycznego rozpoznawania prędkości transmisji danych odbieranych przez RS.
Próbowałem prędkość ustalić po czasie trwania bitu START (logiczne 0), jednakże może wystąpić sytuacja, że zaraz po bicie START wystąpi zero w sekwencji danych i rozpoznanie długości trwania bitu nie będzie możliwe. :-?
Ma ktoś jakiś pomysł?

Re: transmisja RS

: 14 sty 2012 10:42
autor: milten
Zależy od tego co będziesz odbierał.
Jeżeli sam możesz sobie to ustalić, to spróbuj wysłać jeden bajt 10101010. I próbować każdego BaudRate dopóki nie rozpoznasz poprawnych danych.
Inny sposób, to sprawdzanie CRC lub innego mechanizmu kontroli bitów. Jeżeli wyślesz coś na odpowiednim BR do drugiego urządzenia to on odpowie jedynie jak wysyłasz to z dobrym BR. Jeżeli wiesz, że urządzenie wysyła coś cyklicznie, to Ty sprawdzasz odebrane i liczysz czy dane są poprawne, czy nie.

Ogólnie sposób z kontrolą bitów jest lepszy i pewniejszy, ale jednak trudniejszy w implementacji.

Re: transmisja RS

: 16 sty 2012 08:46
autor: Grzesiek080
Twój sposób wydaje mi się najlepszy. Mój kolega zajmujący sie hardware czesto bawi sie różnymi standardami trasmisji i robi to dokładnie w ten sam sposób jak ty to robisz z tą różnica że szuka najkrótszego stanu ( sprawdza to oscyloskopem) . Ale nie wiem w czy posiadasz jakąś karte analogową żeby można było zrobic akwizycje. Ogólnie z tego co mi mówił ( mój kolega) to zawsze udawało mu sie określic parametry predkości transmisji mierzac długość najkrótszego stanu, wiec trzymaj sie tego co wczesniej robiłes.