Połączenie SCI 9S12 z komputerem PC
Transkrypt
Połączenie SCI 9S12 z komputerem PC
Pro jekt: Sterowniki robotów Materiaªy pomocnicze: Poª¡czenie SCI 9S12 z komuterem PC Marek Wnuk Mikrokontroler MC9S12A64 jest wyposa»ony w dwa asynchroniczne porty szeregowe SCI0 i SCI1 (SCI - Serial Communication Interface). Poª¡czenie sygnaªów TxD i RxD z komputerem wymaga zastosowania odpowiednich ukªadów interfejsowych, w zale»no±ci od wykorzystywanego w PC zª¡cza. Standardowo transmisja szeregowa odbywa si¦ przez urz¡dzenie COMx (windows) lub ttySx (linux), przy pomocy zª¡cza RS232. W przypadku braku takiego zª¡cza w komputerze (jest coraz rzadziej spotykane) mo»na wykorzysta¢ zª¡cze USB z odpowiednim konwerterem USB-RS232, widzianym jako wirtualny port szeregowy. Zª¡cze RS232 wymaga translacji napi¦¢ poziomów logicznych 0V i 5V do napi¦¢ odpowiednio: +(5..15V), -(5..15V). Typowym ukªadem pozwalaj¡cym zrealizowa¢ t¦ translacj¦ jest MAX232, produkowany przez wiele rm. Przy zasilaniu 5V, dzi¦ki przetwornicy pojemno±ciowej, zapewnia on odpowiednie poziomy napi¦¢ po stronie zª¡cza RS232. Na rys. 1 przedstawiono najprostszy sposób podª¡czenia tego ukªadu do moduªu MC9S12A64. Wyj±cie TxD SCI0 (L32 w M1) jest poª¡czone z T1IN ukªadu IC1, a wyj±cie R1OUT IC1 - z wej±ciem RxD (L31). Niewykorzystane wej±cie T2IN IC1 poª¡czono z mas¡, by unikn¡¢ zakªóce« zwi¡zanych z nieustalonymi poziomami sygnaªu wej±ciowego. Po stronie RS232 zastosowa- Rysunek 1: Najprostsze przyª¡czenie MAX232 do moduªu no zª¡cze typu DCE - Data Communication Equipmet (X1, DB9F, »e«skie), które ª¡czy si¦ z m¦skim zª¡czem portu szeregowego w PC (lub konwertera USB-RS232) typu DTE - Data Terminal Equipment bezpo±rednio, lub przez prosty przedªu»acz. Wyj±cie T1OUT IC1 traa na styk RXD (2) zª¡cza RS232, a TXD (3) z RS232 poª¡czone jest z R1IN IC1. Takie krzy»owe poª¡czenie jest najprostsz¡ 1 form¡ ukªadu zwanego Null Modem. Wej±cie R2IN IC1 poª¡czono z ujemnym napi¦ciem przetwornicy (V-) z powodów podobnych do podanych wcze±niej. Alternatywnym sposobem zrealizowania transmisji szeregowej z PC przy u»yciu bloku SCI w MC9S12 jest wykorzystanie konwertera UART-USB, np. typu FT232R. Odpowiedni (minimalny) ukªad aplikacyjny przedstawiono na rys. 2. Rysunek 2: Najprostsze przyª¡czenie FT232 do moduªu Ukªad IC1 (FT232R) zapewnia obsªug¦ transmisji szeregowej, z jednej strony daj¡c sygnaªy typu UART (linie danych: RxD, TxD i linie steruj¡ce: RTS, CTS, DTR, DSR, DCD, RI), a z drugiej - sygnaªy USB (D+, D-). Pracuje jako urz¡dzenie USB klasy DCD - Data Communication Device, widoczne dla systemu operacyjnego na PC jako wirtualny port szeregowy. Na rys. 2 przedstawiono równie» sposób doprowadzenia zasilania +5V z VBUS na zª¡czu USB do ukªadu konwertera i moduªu MC9S12A64. Oprócz standardowego odsprz¦gania zasilania, zastosowano koralik ferrytowy FB1 i kondensator C1, w celu lepszego odltrowania szybkozmiennych zakªóce« z kabla USB. UWAGA: Maksymalna wydajno±¢ pr¡dowa portu USB wynosi (w zale»no±ci od wersji) 100mA, lub 500mA. Przed przyª¡czeniem tak skongurowanego ukªadu nale»y sprawdzi¢, czy pobierany pr¡d jej nie przekroczy, zwªaszcza w przypadku doª¡czania do moduªu dodatkowych urz¡dze« (np. czujników). W materiaªach pomocniczych zamieszczonych na stronie projektu mo»na znale¹¢ wi¦cej informacji o standardzie RS232 i o ukªadach MAX232, FT232. 2