INTERFEJSY SZEREGOWE UART 1 WIRE SPI IC RS232

  • Slides: 21
Download presentation
INTERFEJSY SZEREGOWE UART 1 -WIRE SPI I²C RS-232

INTERFEJSY SZEREGOWE UART 1 -WIRE SPI I²C RS-232

UART (Universal Asynchronous Receiver and Transmitter) W skrócie jest to obwód zintegrowany używany do

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.

A co to znaczy asynchronicznie lub synchronicznie?

A co to znaczy asynchronicznie lub synchronicznie?

Odbieranie i wysyłanie danych przez port szeregowy Port szeregowy wysyła i odbiera dane w

Odbieranie i wysyłanie danych przez port szeregowy Port szeregowy wysyła i odbiera dane w postaci bajtów (8−bitowych słów danych). Konwersja danej wysłanej lub odebranej przez procesor z postaci bajtu do postaci szeregowej lub odwrotnie, odbywa się automatycznie. Dzięki temu wystarczy wskazać tylko dana którą chcemy wysłać lub czekać na odbiór jej z zewnętrznego urządzenia, także wyposażonego w port szeregowy.

Schemat dla UART

Schemat dla UART

1 -WIRE Interfejs elektroniczny jak również i protokołu komunikacyjny pomiędzy dwoma (lub więcej) urządzeniami.

1 -WIRE Interfejs elektroniczny jak również i protokołu komunikacyjny 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 p. F, 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. .

Zasada transmisji danych w 1 -WIRE 1. Wysyłanie informacji przez master Uz=5[V] R masters

Zasada transmisji danych w 1 -WIRE 1. Wysyłanie informacji przez master Uz=5[V] R masters Rozpoczęcie nadawania Reset o czasie 480[µs] po przez zwarcie l. danych do masy, slave zeruje się linia danych slave Impuls obecności o czasie 60[µs] po przez zwarcie l. danych do masy Przesłanie logicznej jedynki na magistralę oznacza wystawienie przez mastera krótkiego (od 1 do 15μs) impulsu niskiego (zwarcie linii) oraz następnie wysokiego o długości 60 μs. Logiczne zero odpowiada niskiemu impulsowi o długości 60 μs. Opadające zbocze impulsu aktywuje przerzutnik astabilny w urządzeniu slave. Przerzutnik ten taktuje wewnętrzny mikroprocesor, co powoduje odczyt danych z linii po ok. 30 μs od momentu pojawienia się zbocza rosnącego. Z uwagi na wewnętrzne opóźnienia urządzenia slave czas trwania pojedynczego impulsu musi wynosić właśnie 60 μs (a impuls startujący nie może być dłuższy niż 15 μs) - zapewnia to poprawny odczyt danych w każdej sytuacji.

Zasada transmisji danych w 1 -WIRE 2. Odbieranie informacji przez master Uz=5[V] R masters

Zasada transmisji danych w 1 -WIRE 2. Odbieranie informacji przez master Uz=5[V] R masters Rozpoczęcie odbierania Przed odbiorem każdego bitu danych master wysyła niski impuls startu (od 1 μs do 15 μs), po czym wraca do stanu wysokiego na linii danych linia danych slave Jeśli slave chce wysłać logiczną jedynkę – nie robi nic, pozostawiając linię w stanie wysokim. Jeśli slave chce wysłać zero, wówczas zwiera linię danych do masy na 60 μs. Po przesłaniu 8 bitów następuje wysłanie komendy (rozkazu) (również ośmiobitowej).

SPI (Serial Peripheral Interface) Interfejs ten jest przeznaczony do komunikacji pomiedzy mikrokontrolerami i urzadzeniami

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 Cloc. K) - 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.

Działanie SPI Połączenie Master z Slave Możliwość połączenia kilku Slave Dane wysyłane są z

Działanie SPI Połączenie Master z Slave Możliwość połączenia kilku Slave 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 zewnetrznymi przyłączanymi przez intrfejs SPI sa najcześciej przetworniki analogowocyfrowe i cyfrowo–analogowe, Sterowniki wyświetlaczy alfanumerycznych, pamięci EEPROM, zegary czasu rzeczywistego, układy wejść i wyjść bitowych.

Połączenie SPI z μC

Połączenie SPI z μC

QSPI (Queued Serial Peripheral Interface) W tej wersji można wstępnie ustawić do 16 zadań

QSPI (Queued Serial Peripheral Interface) W tej wersji można wstępnie ustawić do 16 zadań i zainicjować ich wykonanie (również w trybie cyklicznego powtarzania), co uwalnia procesor od konieczności sledzenia przebiegu transmisji pojedynczych słów. Oprócz wymienionych sygnałow QSPI zawiera cztery linie o charakterze adresów, które w jednostce nadrzednej (Master) moga być ustawiane niezaleznie dla każdego zadania w kolejce. Pozwala to na cykliczną obsługę kilku jednostek podporzadkowanych (do 15 w przypadku zastosowania dekoderów adresowych, lub do 4 w przypadku wybierania liniowego). Jednostka podporzadkowana jest wyposażona w wejscie wybierajace (CS - Chip Select), zazwyczaj aktywne w stanie niskim, choć nie jest to regulowane standardem. Trójstanowe wyjście danych jednostki podporzadkowanej (MISO) jest włączane tylko przy atywnym stanie linii wyboru (CS), co pozwala na równoczesna prace wielu układów na magistrali QSPI.

I²C R +Uz SDA Master SCL Slave Inna nazwa TWI (Two Wire Interface), stosowane

I²C R +Uz SDA Master SCL Slave 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ę I 2 C 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 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 I 2 C mogą być przesyłane z prędkością do 100 kb/s w trybie standardowym (ang. Standard-mode) lub do 400 kb/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 400 p. F.

Transmisja w I²C Każdy układ podłączony do szyny I 2 C rozpoznawany jest przez

Transmisja w I²C Każdy układ podłączony do szyny I 2 C rozpoznawany jest przez swój adres i może pracować zarówno, jako nadajnik, jak i odbiornik. Oczywiście sterownik wyświetlacza LCD jest tylko odbiornikiem, ale np. pamięć może być jednym i drugim. Transmisja na szynie I 2 C jest transmisją start-stopową, tzn. każdy transfer rozpoczyna się od bitu START, po którym przesyłane są informacje i kończy się bitem STOP.

START i STOP w I²C Gdy na linii SDA stan logiczny zmienia się z

START i STOP w I²C Gdy na linii SDA stan logiczny zmienia się z '1' na '0', podczas gdy na linii SCL jest stan '1', to sytuacja taka nazywa się START. Natomiast, gdy na linii SDA stan logiczny zmienia się z '0' na '1', podczas wysokiego poziomu na linii SCL, to sytuacja taka nazywa się STOP.

Zastosowania I²C stosuje się w przypadkach, gdy prostota i niski koszt są ważniejsze od

Zastosowania I²C stosuje się w przypadkach, gdy prostota i niski koszt są ważniejsze od wysokich prędkości transmisji. Znalazło ono zastosowanie m. in. w: • Odczytywaniu zegarów czasu rzeczywistego (RTC) w komputerach i urządzeniach wbudowanych • Komunikacji z prostymi i wolnymi przetwornikami cyfrowo-analogowymi i analogowo-cyfrowymi • Odczycie czujników diagnostycznych w komputerze (prędkość obrotu wentylatorów, temperatury procesora i ważniejszych układów na płycie głównej) • Komunikacja z czujnikami i elementami wykonawczymi w małych systemach wbudowanych • Dostępie do pamięci NVRAM komputera • Sterowanie diodami LED w urządzeniach przenośnych (np. komórkach) • Komunikacji pomiędzy układami w telewizorach i innym sprzęcie RTV (jest to pierwotne miejsce zastosowania magistrali I²C)

Połączenie dla I²C

Połączenie dla I²C

RS-232 C Widok gniazda PC (męskiego) typu DB-9 od strony wtyczki RS-232 jest magistralą

RS-232 C Widok gniazda PC (męskiego) typu DB-9 od strony wtyczki RS-232 jest magistralą komunikacyjną przeznaczoną do szeregowej transmisji danych. Najbardziej popularna wersja tego standardu, RS-232 C (przedstawiony na obrazku obok) pozwala na transfer na odległość nie przekraczającą 15 m 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.

Połączenie przez RS-232

Połączenie przez RS-232

Sposób połączenia podłączenia. RS-232 do doμC μC

Sposób połączenia podłączenia. RS-232 do doμC μC

Sposób podłączenia RS-232 do μC

Sposób podłączenia RS-232 do μC