Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

konwersja parzystości sygnału RS232

lopez
konwersja parzystości sygnału RS232

Postautor: lopez » 30 maja 2003, o 13:14

W jaki sposób dokonać konwersji sygnału szeregowego RS232 z sygnału z brakiem parzystości na sygnał z parzystością? Z jednej strony mam urządzenie, które mogę otworzyć jedynie z NOPARITY, a z drugiej urządzenie działające tylko z EVENPARITY.

Gość

Postautor: Gość » 31 maja 2003, o 08:37

Jakiegos specjalizowanego układu to chyba nie ma. Mozna to zrealizować na jakimś prostym mikrokontrolerze z dwoma portami UART lub na dwuch zwykłych mikrokontrolerach obslugujacych truym pzrzystosci i nieparzystosci. Musisz jednak pamietac o predkosciach, najprosciej zrobic je rozne a dane buforowac (na w pamieci mikrokontrolera). W razie pytan chcetnie pomoge.

katarcza
-
-
Posty:158
Rejestracja:29 kwie 2003, o 12:48

Postautor: katarcza » 31 maja 2003, o 09:18

Sorki za anonim, ale zapomniałem się zalogować.

lopez

Postautor: lopez » 2 cze 2003, o 14:23

Dzięki za info. Generalnie chcemy właśnie zrobić coś w tym stylu. Znaleźliśmy dwa układy zawierające w sobie po dwa UART-y, w tym jeden o d razu z flashem. Co do prędkości to po obu stronach będzie 9600 więc odpada problem z synchronizacją. Mam nadzieję, że wystarczy tylko odczytać z jednej strony, zbuforować i wysłać drugą stroną. W międzyczasie pojawił się problem z poborem prądu. Rozważamy też użycie jednego UART-a i użycie portów mikrokontrolera jako wy-we zamiast drugiego. Jeżeli znasz jakieś układy, które można by było zastosować, byłbym wdzięczny. Dam Ci znać jak coś ruszy.

katarcza
-
-
Posty:158
Rejestracja:29 kwie 2003, o 12:48

Postautor: katarcza » 2 cze 2003, o 15:11

9600 oznacza że jest to tyle właśnie bitów na sek. Defakto w jednym przypadku masz ich 10 a w drugim 11, przy czym ten jeden chcesz odrzucic, a więc problem synchronizacji jest istotny.

lopez

Postautor: lopez » 3 cze 2003, o 15:04

Zgadza się, ale gdyby, powiedzmy, jeden UART odczytuje daną (1 bajt) na swoich ustawieniach, zapisuje go do bufora i generuje przerwanie 'jest bajt', to wówczas drugi UART mógłby odczytać 'czystą' daną, i przesłać go na swoich ustawieniach. Zresztą, masz rację, sprowadza się to, jakby nie było, do czekania na ten bajt, czyli synchronizacji. Myślisz, że mogłoby to zadziałać?

katarcza
-
-
Posty:158
Rejestracja:29 kwie 2003, o 12:48

Postautor: katarcza » 4 cze 2003, o 07:55

Jezeli Twój procek będzie odbierał od jakiegos urządzenia sygnał uart wraz z sygnałem parzystości, a wysyłał bez to pracując na tej samej prędkości bedzie nadążał i wszystko będzie OK. problem jest w druga strona, gdy procek odbiera dane 10 bit a wysyła 11 bit. Po prostu nie nadąży w przypadku gdy bedziesz mu wysyłał większą ilosc danych. Musisz to sztucznie spowolnić robiac odstępy czasowe pomiędzy poszczególnymi "bajtami". pamiętaj o tym a będzie działać.

Wróć do „Elektronika - tematy dowolne”

Kto jest online

Użytkownicy przeglądający to forum: Google [Bot] i 38 gości