Robbo
Guest
Sun Jul 22, 2007 11:23 am
Witam,
W urządzeniu jest mikrokontroler, który komunikuje się
ze światem zewnętrznym za pomocą UART (RS232).
Zastosowano układ MAX232N. Następnie, prewencyjnie
zamieniono go na MAX202ECPE, który posiada podwyższoną
odporność.
Okazało się, że komputer, do którego podłączone było
wspomniane urządzenie, zaczyna odbierać po RS232 śmieci,
mimo że mikrokontroler nic nie nadawał -- działo się to wtedy,
gdy działało inne urządzenie (podłączone do pinu niedalego UART
w mikrokontrolerze i podające cyklicznie na ten pin 0, 1, 0, 1, itd.)
i zakłócenia prawdopodobnie przenosiły się na jedną ze ścieżek
(na MAX232N było wszystko OK).
Po zmierzeniu omomierzem okazało się, że odpowiednie
wyjście na MAX232N ma conajmniej kilkakrotnie
mniejszą rezystancje, niż odpowiadające wyjście w MAX202ECPE.
Stąd pewnie większa podatność MAX202ECPE na zakłócenia.
Zastosowano rezystor na odpowiednim wejściu MAX202ECPE.
Niestety, ale po zastosowaniu rezystora, wysyłane przez
mikrokontroler (z MAX202ECPE) dane w większości przypadków
nie docierały do komputera (jedynie ten sam znak -- chyba znak
nowego wiersz; pomimo tego, że wysyłane były różne znaki).
Czy spotkali się Państwo z takim przypadkiem?
Jak sprawić, żeby MAX202ECPE nie był podatny na zakłócenia
we wspomnianej aplikacji, a jednocześnie działał poprawnie?
Z góry dziękuję za pomoc.
Robbo
Piotr
Guest
Sun Jul 22, 2007 2:17 pm
Robbo pisze:
Quote:
Witam,
Witam.
Quote:
...
Okazało się, że komputer, do którego podłączone było
wspomniane urządzenie, zaczyna odbierać po RS232 śmieci,
....
Jakiej długości jest przewód pomiędzy urządzeniem, a komputerem? Jest
ekranowany?
--
Piotr Piwko
http://piotr.piwko.googlepages.com/
Robbo
Guest
Sun Jul 22, 2007 2:25 pm
Quote:
Jakiej długości jest przewód pomiędzy urządzeniem, a komputerem? Jest
ekranowany?
Jest to zwykły kabel RS232, jaki można kupić w sklepie, o długości 1,5
metra.
Robbo
CosteC
Guest
Sun Jul 22, 2007 3:05 pm
Quote:
W urządzeniu jest mikrokontroler, który komunikuje się
ze światem zewnętrznym za pomocą UART (RS232).
Zastosowano układ MAX232N. Następnie, prewencyjnie
zamieniono go na MAX202ECPE, który posiada podwyższoną
odporność.
Okazało się, że komputer, do którego podłączone było
wspomniane urządzenie, zaczyna odbierać po RS232 śmieci,
mimo że mikrokontroler nic nie nadawał -- działo się to wtedy,
gdy działało inne urządzenie (podłączone do pinu niedalego UART
w mikrokontrolerze i podające cyklicznie na ten pin 0, 1, 0, 1, itd.)
i zakłócenia prawdopodobnie przenosiły się na jedną ze ścieżek
(na MAX232N było wszystko OK).
Po zmierzeniu omomierzem okazało się, że odpowiednie
wyjście na MAX232N ma conajmniej kilkakrotnie
mniejszą rezystancje, niż odpowiadające wyjście w MAX202ECPE.
Stąd pewnie większa podatność MAX202ECPE na zakłócenia.
Zastosowano rezystor na odpowiednim wejściu MAX202ECPE.
Niestety, ale po zastosowaniu rezystora, wysyłane przez
mikrokontroler (z MAX202ECPE) dane w większości przypadków
nie docierały do komputera (jedynie ten sam znak -- chyba znak
nowego wiersz; pomimo tego, że wysyłane były różne znaki).
Czy spotkali się Państwo z takim przypadkiem?
Jak sprawić, żeby MAX202ECPE nie był podatny na zakłócenia
we wspomnianej aplikacji, a jednocześnie działał poprawnie?
Z góry dziękuję za pomoc.
Może chociaż kawałek schematu? może PCB? może po prostu masz zwarcie na
płytce?
Pozdrawiam
CosteC