Strona główna

Standard RS232 w mikrokontrolerach

Standard RS-232 opisuje sposób połączenia urządzeń DTE (ang. Data Terminal Equipment) tj. urządzeń końcowych danych (np. komputer) oraz urządzeń DCE (ang. Data Communication Equipment), czyli urządzeń komunikacji danych (np. modem). Standard określa nazwy styków złącza oraz przypisane im sygnały a także specyfikację elektryczną obwodów wewnętrznych. Standard ten definiuje normy wtyczek i kabli portów szeregowych typu COM. Standard RS-232 (ang. Recommended Standard) opracowano w 1962 roku na zlecenie amerykańskiego stowarzyszenia producentów urządzeń elektronicznych w celu ujednolicenia parametrów sygnałów i konstrukcji urządzeń zdolnych do wymiany danych cyfrowych za pomocą sieci telefonicznej.

RS-232 jest magistralą komunikacyjną przeznaczoną do szeregowej transmisji danych. Najbardziej popularna wersja tego standardu, RS-232C pozwala na transfer na odległość nie przekraczającą 15 m z szybkością maksymalną 20 kbit/s.

W architekturze PC standardowo przewidziano istnienie 4 portów COM oznaczanych odpowiednio COM1-COM4. Specjalizowane karty rozszerzeń pozwalały na podłączenie znacznie większej ilości portów RS-232, jednak nie były one standardowo obsługiwane przez MS-DOS i wymagały specjalistycznego oprogramowania.

W przypadku komputerów PC porty RS-232 początkowo obsługiwane były przez układy 8250 (PC, XT), później 16450 (AT, 80386, pierwsze i486), następnie przez zintegrowane z płytą główną 16550A. Układy te są ze sobą wstecznie zgodne, jednak kolejne wersje posiadają coraz większy bufor FIFO. Kość 16550A posiada standardowo bufor 2x 16b. Zwiększenie długości kolejki FIFO skutkowało obniżeniem częstotliwości przerwań generowanych przez port przy przesyłaniu danych. Na potrzeby zastosowań profesjonalnych (np. równoczesna obsługa wielu szybkich modemów w systemach typu BBS) stosowano często specjalizowane karty RS-232 z jeszcze większymi buforami (np. 16650 czy karty procesorowe). Znane były rozwiązania pozwalające na podłączenie do 1024 urządzeń RS-232, przy zachowaniu pełnej prędkości per port i buforami rzędu 1024 bajty na port. Część kart tego typu pozwalała także na ustawianie wyższego zegara wskutek czego bitrate na wyjściu układu był wyższy niż ustawienia programowe – przy dużej wielkości kolejki FIFO pozwalało to na uzyskiwanie wysokich (często niestandardowych – jak w przypadku modemów ZyXel 76800 bps) prędkości. Spotkać można było na rynku modemy komunikujące się z portem RS-232 z prędkościami do 421 kbit, a nawet 921,6 kbit (np. Yuko, Goramo).

Specyfikacja napięcia definiuje "1" logiczną jako napięcie -3V do -15V, zaś "0" to napięcie +3V do +15V. Poziom napięcia wyjściowego natomiast może przyjmować wartości -12V, -10V, +10V, +12V, zaś napięcie na dowolnym styku nie może być większe niż +25V i mniejsze niż -25V. Należy zaznaczyć przy tym, że zwarcie dwóch styków RS-232 teoretycznie nie powoduje jego uszkodzenia. W praktyce ten zapis w specyfikacji nie zawsze jest przestrzegany.

Źródło: Wikipedia.

Na temat obsługi sprzętowego modułu RS232 w mikrokontrolerach AVR przeczytasz w artykułach:

Komentarze (0) dodane przez admin April 16, 2010 (6:29PM)

Mikrokontrolery AVR ATA8741/42/43

AVR RF Mikrokontrolery ATA8741/42/43 należą do rodziny układów zaprojektowanych do zastosowań w obszarze komunikacji bezprzewodowej.

Rdzeń tych układów stanowi dobrze znany mikrokontroler AVR ATtiny44V, dzięki któremu projektant ma do swojej dyspozycji naprawdę solidną jednostkę. Mikrokontroler wraz z układem transmitera, mieści się w małej obudowie typu QFN24 o wymiarach 5 mm x 5 mm. Dzięki temu układy ATA8741/42/43 mogą być stosowane wszędzie tam, gdzie miniaturyzacja ma zasadnicze znaczenie. Nowe układy pracują w najpopularniejszych pasmach ISM (ATA8741: od 868 do 928 MHz, ATA8742: 433 MHz, ATA8743: 315 MHz) z prędkością transmisji sięgającą 32 kBit/s.

Główne zastosowania: systemy zdalnego dostępu, systemy alarmowe, telemetria, systemy pomiaru energii oraz automatyka domowa.

W Polsce układy te nie są jeszcze dostępne. Mam nadzieję, że ta sytuacja szybko się zmieni.

Komentarze (0) dodane przez admin October 11, 2009 (10:00PM)

uCtools 1.3

Open uCtools O uCtools pisałem już jakiś czas temu. Dla przypomnienia, jest to zestaw narzędzi, do komunikacji komputera z mikrokontrolerem.
W nowej wersji (1.3), w skład pakietu wchodzą obecnie trzy programy. Oprogramowanie udostępniane jest na licencji GPL i działa w systemie Windows oraz Linux.

W najnowszej wersji pakietu, pojawił się program pełniący rolę serwera pośredniczącego. Zadaniem serwera jest pośredniczenie w komunikacji pomiędzy aplikacjami pakietu uCtools, a fizycznymi urządzeniami.

Aplikacja serwera może być:
  • uruchomiona jako program pracujący na komputerze (działa jak serwer pośredniczący w transmisji),
  • wbudowana w urządzenie lub uruchomiona na jego systemie operacyjnym (działa jak dedykowany interfejs).
Standardowo w pakiecie uCtools dostarczana jest aplikacja serwera przeznaczona na systemy operacyjne Windows i Linux, które działają na procesorach x86. Protokół komunikacyjny serwera jest otwarty, a szczegóły na jego temat dostępne są w dokumentacji.

Wraz z pojawieniem się nowej wersji, na stronie projektu udostępnione zostały także przykładowe projekty. Jest to np. program realizujący komunikację pomiędzy telefonem komórkowym, a mikrokontrolerem AVR za pośrednictwem serwera wchodzącego w skład pakietu.

Ja jednak nadal pozostaję przy Terminal by Br@y++, a prezentowany projekt traktuję jako ciekawostkę.

Projekt dostępny jest pod adresem:
http://uctools.cmmsigma.eu/index.html

Komentarze (0) dodane przez admin September 26, 2009 (12:29PM)

<< Pierwsza < Poprzednia [1 / 15] Następna > Ostatnia >>