Interfejsy szeregowe wykorzystywane przy mikrokontrolerach
UART (Universal Asynchronous Receiver and Transmitter)
W skrócie jest to obwód zintegrowany używany do asynchronicznego przekazywania i odbierania informacji poprzez port szeregowy, czyli wykorzystuje on szeregową transmisję danych tzn. „bit po bicie”. Zawiera on konwerter typu parallel-to-serial służący do konwersji danych przesyłanych z komputera i serial-to-parallel do konwersji danych przychodzących do komputera poprzez port szeregowy. UART zawiera także bufor do tymczasowego gromadzenia danych w przypadku szybkiej transmisji. Obok UART stworzony został również USART i różni się on tym, że transmisja może odbywać się w sposób asynchroniczny, jaki i synchroniczny. Port szeregowy w mikrokontrolerze 8051 może pracować asynchronicznie i synchronicznie.
1-WIRE
Interfejs elektroniczny jak również i protokołu komunikacyjnego pomiędzy dwoma (lub więcej) urządzeniami. Jego nazwa wywodzi się stąd, że do całkowitej komunikacji używana jest tylko jedna linia danych (i jedna linia masy). Dodatkowo, odbiornik może być zasilany bezpośrednio z linii danych, Wykorzystując zasilanie pasożytnicze, co jest ogromną zaletą tego interfejsu. Odbiornik wyposażony jest bowiem w kondensator o pojemności 800 pF, który jest ładowany bezpośrednio z linii danych - następnie energia w nim zgromadzona używana jest do zasilania odbiornika. Połączenie 1-Wire zostało opracowane przez Dallas Semiconductor. Umożliwia ono stosunkowo niewielką przepustowość transmisji danych - standardowo 16 kbps, ze względu na pojedynczą linię komunikacyjną, przez co jest tańszy. Zazwyczaj używany jest do komunikacji pomiędzy niewielkimi urządzeniami, takimi jak: termometry cyfrowe, instrumenty metrologiczne, sterowniki ładowania akumulatorów itp..
SPI (Serial Peripheral Interface)
Interfejs ten jest przeznaczony do komunikacji pomiedzy mikrokontrolerami i urzadzeniami zewnetrznymi w małych systemach mikrokomputerowych. Zaprojektowany po raz pierwszy przez Motorole w latach 80. Przesyłanie danych odbywa się przy pomocy szeregowej transmisji Synchronicznej wykorzystujacej trzy linie: - SCK (Serial ClocK) - zegar synchronizujacy transmisje, - MOSI (Master Out / Slave In) - dane od jednostki nadrzednej do podporzadkowanej, - MISO (Master In / Slave Out) - dane od jednostki podporzadkowanej do nadrzednej. Dane wysyłane są z Master do Slave przez linię MOSI i Slave czyta je również przez MOSI. Slave wysyła dane przez linie MISO i podobnie jak w przypadku wcześniejszym Masters czyta je przez tą samą linie czyli też MISO. W przypadku połączenia większej liczby urządzeń Slave wybór urządzenia odbywa się przez linie Chip Select. Urzadzeniami zewnętrznymi przyłączanymi przez intrfejs SPI są najcześciej przetworniki analogowo-cyfrowe i cyfrowo-analogowe, Sterowniki wyświetlaczy alfanumerycznych, pamięci EEPROM, zegary czasu rzeczywistego, układy wejść i wyjść bitowych.
I²C
Inna nazwa TWI (Two Wire Interface), stosowane w mikrosterownikach firmy Atmel wiąże się z tym, firma Philips opatentowała swoje połączenie z nazwą i w związku z tym Atmel stworzył inną nazwę. Na szynę I2C składają się tylko dwie linie: linia danych (oznaczana jako SDA, ang. serial data) i linia zegara taktującego transmisję (oznaczana jako SCL, ang. serial clock). Tymi dwiema liniami przesyłane są wszystkie informacje: dane, adresy i sygnały sterujące. Obie linie są liniami dwukierunkowymi i przez rezystor podciągający podłączone są do dodatniego napięcia zasilającego. Gdy na szynie nie odbywa się żadna transmisja to na obu liniach jest poziom wysoki. Obwody wyjściowe podłączonych układów muszą być typu otwarty-dren lub otwarty-kolektor, ze względu na konieczność realizacji funkcji galwaniczne-AND. Dane na szynie I2C mogą być przesyłane z prędkością do 100kb/s w trybie standardowym (ang. Standard-mode) lub do 400kb/s w trybie szybkim (ang. Fast-mode). Liczba układów podłączonych do szyny jest zależna od maksymalnej pojemności szyny wynoszącej 400pF.
RS-232
RS-232 jest magistralą komunikacyjną przeznaczoną do szeregowej transmisji danych. Najbardziej popularna wersja tego standardu, RS-232C (przedstawiony na obrazku obok) pozwala na transfer na odległość nieprzekraczającą 15m z szybkością maksymalną 20 kbit/s. Standard ten nie jest zasilany przez interfejs. Zastosowanie: modemy, telefony komórkowe, łączenie dwóch komputerów kablem nullmodem, starsze drukarki, tunery satelitarne, sprzęt specjalistyczny, programowanie układów logicznych.
Schemat dla UART Sposób połączenia RS-232 z Mikrokontrolerem
Połączenie dla I²C Połączenie dla SPI