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ę

Komunikacja mikrokontrolera z komputerem PC. RS-232 : Sprzęt

Moderatorzy: Jacek Bogusz, Moderatorzy

radzio
Moderator
Moderator
Posty: 965
Rejestracja: 13 maja 2003, o 10:33
Lokalizacja: Sosnowiec
Kontaktowanie:

Komunikacja mikrokontrolera z komputerem PC. RS-232 : Sprzęt

Postautor: radzio » 9 kwie 2007, o 12:50

Bardzo często zachodzi potrzeba skomunikowania mikrokontrolera z komputerem PC, w celu przesłania wyników pomiarów czy też konfiguracji układu itp. Najczęściej do tego celu jest wykorzystywane łącze RS-232. Prawie każdy mikrokontroler posiada wbudowany układ UART, który umożliwia proste zrealizowanie transmisji szeregowej pomiędzy mikrokontrolerem a komputerem PC. Konieczne jest jednak dostosowanie poziomów napięć systemu mikroprocesorowego (najczęściej pracującego z zasilaniem 5V) do poziomów napięć łącza RS-232 (-12V...+12V). Najpopularniejszym układem konwertera poziomów napięć jest układ MAX232, którego odpowiedniki produkowane są przez wiele firm. W tym wątku chciałbym przedstawić podstawowy układ pracy konwertera MAX232.

Zachęcam do zapoznania się ze stroną http://rs232.ep.com.pl/rs232/ na której przedstawione są podstawowe informacje na temat łącza RS-232.

Ogólny schemat układu konwertera wraz z wszystkimi niezbędnymi elementami
zewnętrznymi przedstawiony jest na poniższym rysunku :

Obrazek

Mikrokontroler może pracować w urządzeniach pełniących funcję DTE oraz DCE, stąd na schemacie występują dwie wersje gniazda DB9. W układzie docelowym należy oczywiście zastosować jedną z nich. Należy również pamiętać, że w przypadku zastosowania złącza DB9-F (DCE) urządzenie z komputerem należy łączyć kablem 1:1, natomiast w przypadku zastosowania łącza DB9-M (DTE) należy użyć kabla null-modem. Pamiętanie o tym pozwoli uniknąć sytuacji, że urządzenie nie komunikuje się z komputerem pomimo, że jest poprawnie zmontowane i oprogramowane.

Części niezbędne do wykonania konwertera pokazane są na poniższej fotografii :

Obrazek

Kondensatory elektrolityczne mają wartość 10uF. Niektóre wersje układu MAX232 mogą współpracować z kondensatorami o mniejszej pojemności, nawet 0,1uF. Należy sprawdzić w dokumentacji posiadanej wersji układu MAx232, jakie kondensatory są zalecane do współpracy z układem.

Zmontowany na płytce solderless-breadboard układ konwertera przedstawia poniższa fotografia :
Obrazek

Należy oczywiście pamiętać o podłączeniu gniazda :

Obrazek

Najprostszym sposobem sprawdzenia, czy zmontowany układ działa poprawnie jest zwarcie ze sobą wyprowadzeń 9 i 10 :
Obrazek

i nawiązaniu połączenia w programie terminalowym, np dostępnym w każdym systemie Windows Hyper Terminalu. Najlepiej test przeprowadzić z najwyższą prędkością obsługiwaną przez układ MAX232, czyli 115200bps. Należy również pamietać, że przy wykorzystaniu tylko trzech przewodów (RxD, TxD i przewodu masy) jakakolwiek sprzętowa kontrola przepływu uniemożliwi poprawną transmisję. Tak wiec konfigurujac połączenie należy wyłączyć kontrolę przepływu. Przykładowa konfiguracja programu Hyper Terminal przedstawiona jest na poniższym obrazku :

Obrazek

Teraz będąc w oknie programu Hyper Terminal próbujemy wpisać dowolny tekst. Jeśli układ konwertera został zmontowany poprawnie na ekranie powinien pojawić się wpisany tekst :

Obrazek

Jeśli tekst się nie pojawia, świadczy to o błędzie w montażu albo o niedziałającym układzie konwertera.

Na etapie uruchamiania układu warto zastosować "monitor" w postaci dwóch diod LED podłączonych do niskonapięciowych linii RxD i TxD. Diody te mają za zadanie odwzorowania stanu linii RxD i TxD. Jako że stanem niekatywnym (po stronie niskonapięciowej) jest stan wysoki, diody należy wpiąc tak, aby świeciły się przy niskim stanie na linii. Przedstawia to poniższy rysunek :

Obrazek

Rozwiązanie to pozwoli na jednoznaczne stwierdzenie czy na liniach pojawiają się jakiekolwiek przebiegi.

Obrazek

W tym miejscu "sprzętowa" część komunikacji mikrokontrolera z komputerem się kończy. Części programowej poświęcę oddzielne wątki.

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

Postautor: katarcza » 10 kwie 2007, o 14:15

Poczciwy, start RS232. Wszyscy go znają i uzywają, a może by tak ktos bardziej ambitnie opisał "krok po kroku" jak podłączyc się po USB??

Wróć do „PLD/FPGA i inne zagadnienia techniki cyfrowej”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 41 gości