Port USB – Jak to działa?

Zastanawiałeś się kiedyś jak działa port USB lub dlaczego urządzenia podłączone do komputera działają bez konieczności instalacji dodatkowego oprogramowania?

USB, inaczej nazywane uniwersalną magistralą szeregową (Universal Serial Bus) to obecnie najbardziej popularne złącze komputerowe, wykorzystywane m.in. do komunikacji. Na szeroką skalę wprowadziły je takie firmy jak Intel, Microsoft, DEC, IBM oraz Compaq, jednocześnie zastępując stare porty szeregowe, których wydajność przestała być wystarczająca. Jedną z najważniejszych zalet złącza USB jest prosta i intuicyjna obsługa, dzięki której każdy użytkownik może podłączyć do komputera różnego rodzaju urządzenia, takie jak kamery, telefony komórkowe, aparaty, tablety, drukarki, skanery, ksera, myszki, klawiatury, przenośne dyski oraz wiele więcej. W przypadku nowoczesnych portów, wystarczy włożyć wtyczkę, aby połączyć się z konkretnym urządzeniem. Instalacja niezbędnych sterowników w większości przypadków następuje automatycznie i trwa dosłownie chwilę. Zgodność ze standardem plug and play znacząco przyczyniła się do popularyzacji uniwersalnej magistrali szeregowej. Port USB jest kompatybilny ze wszystkimi najbardziej popularnymi systemami operacyjnymi, takimi jak Windows, MacOS, Linux oraz BSD, dzięki czemu mogą z niego korzystać praktycznie wszyscy użytkownicy komputerów stacjonarnych i przenośnych. Jak działa port USB? Jakie są jego rodzaje i wersje? Czym różnią się od siebie poszczególne gniazdka? To najczęściej zadawane pytania przez początkujących informatyków, elektroników, a także robotyków.

Port USB – podstawowe informacje

Początkowo magistrala USB miała być wykorzystywana wyłącznie jako interfejs urządzeń transmitujących dane, z wykorzystaniem telefonicznych, jednak z biegiem czasu jej możliwości znacznie się powiększyły. Do jednego portu USB można podłączyć aż 127 urządzeń. Oczywiście jest to możliwe wyłącznie poprzez stosowanie specjalnie zaprojektowanych hubów, wyposażonych we własne zasilanie. Początkowo port USB (wersja 2.0) charakteryzował się natężeniem prądu równym 500 mA i napięciem 5 V. Pierwotnie zakładano, że USB wyprze z rynku wszystkie inne porty, takie jak PS/2, MIDI, LPT i RS-232, w praktyce jednak tylko dwa pierwsze są obecnie bardzo rzadko spotykane. Do dziś komunikacja wielu urządzeń, takich jak sterowniki zarządzające systemami internowania azotem w branży morskiej, opiera się o interfejs RS-232.

W przypadku portu USB obowiązuje reguła jednego hosta. W praktyce oznacza to, że tylko jedno urządzenie może zarządzać innymi. Między innymi dlatego nie można połączyć przy pomocy kabla USB dwóch komputerów (aby to zrobić, trzeba posiadać inny rodzaj przewodu USB).

Port USB – zasada działania

Są różne rodzaje i wersje USB, jednak ich zasada działania pozostaje taka sama. W kablu łączącym wtyczki znajdują się przewody. W zależności od generacji, jest ich różna liczba, niemniej jednak zawsze występuje przewód odpowiadający za uziemienie, wysyłanie i odbieranie danych oraz napięcie. Gdy przewód zostanie podłączony pod jedno lub kilka urządzeń, przydziela im adresy. Następną czynnością jest sprawdzenie, w jaki sposób lub inaczej mówiąc w jakim trybie podłączone sprzęty chcą się komunikować, czyli wymieniać informacją.

  • Tryb izochroniczny, nazywany także przekazem izochronicznym, jest jednokierunkowy i charakteryzuje się niezmienną szybkością transmisji danych, nawet w przypadku dużego obciążenia magistrali. Tryb izochroniczny jest stosowany wszędzie tam, gdzie niezbędny jest stały, niezakłócony przepływ pakietów, które trafiają do odbiornika w określonym czasie. Opisywany przekaz jest wykorzystywanym m.in. w przypadku głośników, kamer i innych urządzeń audiowizualnych. W przypadku transmisji na żywo, opóźnienia wynikające z przesyłu danych trybem izochronicznym nie powinny przekraczać 150 ms w przypadku dźwięku i 50 ms w przypadku obrazu.
  • Tryby sterujące, jak sama nazwa wskazuje, są wykorzystywane do wydawania poleceń różnego rodzaju urządzeniom i akcesoriom podłączonym przez port USB. Ponadto, w trakcie przekazu sterującego odbierane są również informacje o stanie urządzenia oraz jego konfiguracji. W przypadku tego trybu maksymalna deklarowana długość pola roboczego wynosi 64 bajty. W sytuacji, gdy żądanie charakteryzuje się większą ilością danych jest automatycznie dzielone na pakiety.
  • Przekazy lub tryby przerwaniowe są wykorzystywane m.in. do obsługi klawiatury oraz myszy komputerowych. Ich zasada działania polega na tym, że łączą się z urządzeniem lub akcesorium w sposób przerywany, w równych odstępach czasowych. Długość i częstotliwość tych odstępów jest automatycznie ustalana podczas pierwszego podłączenia i różni się w zależności od konkretnego odbiornika.
  • Tryb masowy jest najczęściej wykorzystywany w przypadku danych charakteryzujących się dużą objętością. Przekaz masowy jest często stosowany w przypadku połączenia z drukarką lub skanerem.

Złącza USB – rodzaje i wersje wtyczek

Wraz z rozwojem technologii ewoluowały również zakończenia przewodów USB oraz porty. Ze względu na różny kształt, nie są ze sobą kompatybilne, jednak w przypadku gdy użytkownik potrzebuje zmienić standard, wystarczy użyć odpowiedniej przejściówki. Jak wygląda podział portów USB ze względu na kształt wtyczki?

  • USB typu A to najbardziej rozpowszechniona wersja, zarówno w przypadku komputerów stacjonarnych, jak i przenośnych. Jest również wykorzystywana w ładowarkach telefonów komórkowych, aparatów fotograficznych, kamer, odtwarzaczy muzyki oraz wielu innych urządzeniach. W obrębie portu USB typu A, rozróżnia się także wersję mini i micro, które były montowane w urządzeniach i peryferiach zbyt małych na zastosowanie standardowej wielkości portu.
  • USB typu B charakteryzuje się nieco innym, przypominającym kwadrat kształtem. Można znaleźć je w skanerach, drukarkach, a także popularnych urządzeniach typu All-in-One. W przypadku tej konstrukcji również mamy do czynienia z wersją mini i micro.
  • Popularne USB typu C jest stosowane m.in. w nowoczesnych smartfonach. Dzięki symetrycznej budowie, gwarantuje komfortowe użytkowanie. Zastosowanie dużej liczby pinów zapewnia wszechstronne zastosowanie tego standardu. USB typu C może być np. wykorzystywane do podłączenia monitora do komputera. Obecnie coraz więcej producentów korzysta z tego standardu, dzięki czemu jego popularność znacząco wzrasta.

Kształt gniazdka, a zarazem wtyczki, jest w dużej mierze uzależniony od sposobu wykorzystania portu, dlatego warto znać jego podział, aby w przyszłości uniknąć błędów i pomyłek zakupowych.

Port USB – podział ze względu na przepustowości

Na początku standard USB cieszył się bardzo małą, wręcz znikomą popularnością. Dopiero wersję 1.1 na masową skalę montowano na płytach głównych, jednak użyteczność tego portu nadal była znikoma. Wynikało to m.in. z bardzo ograniczonej ilości urządzeń i akcesoriów komunikujących się poprzez USB oraz ze słabej dostępności sterowników. Dzięki USB 1.1 można było przesyłać dane z prędkością 1,5 Mbps lub 12 Mbps. W 2000 roku światło dzienne ujrzał nowy, znacznie szybszy, a co za tym idzie wydajniejszy standard. Pod względem kształtu praktycznie nic się nie zmieniło. W tym okresie powstało mnóstwo akcesoriów i urządzeń wykorzystujących USB 2.0. Standard wprowadzony w 2000 roku pracuje w tak zwanym trybie half-duplex. W praktyce oznacza to, że dane mogą być przesyłane tylko w jednym kierunku, czyli z komputera do podłączonego urządzenia lub odwrotnie. Nie ma przesyłania danych w obu kierunkach w tym samym czasie. Długość kabla nie przekracza 5 m.

Po ośmiu latach od wprowadzenia standardu 2.0, na rynku pojawiła się nowa, szybsza i jeszcze bardziej wydajna wersja 3.0, która charakteryzowała się nie tylko większą prędkością przesyłu danych, ale również operowała prądem 900 mA. Dzięki temu, wszystkie ładowarki pracujące w standardzie 3.0 znacznie szybciej uzupełniały energię w ładowanych ogniwach. Ponadto, standard 3.0 pracuje w tak zwanym trybie full-duplex, czyli oferuje możliwość jednoczesnego wysyłania i odbierania danych zarówno przez hosta, jak i klienta. Nowy standard jest w pełni kompatybilny z poprzednią wersją. W przypadku gdy do portu USB 2.0 zostanie podłączone urządzenie obsługujące wersje 3.0, szybkość transmisji danych będzie zawsze dostosowywana do starszego złącza. Całkowita długość przewodu w przypadku wersji 3.0 nie powinna przekraczać 3 metrów.

Rok 2013 przyniósł kolejną rewolucję. Ze względu na to, że różnego rodzaju pliki stają się coraz bardziej obszerne, powstał nowy standard USB 3.1, który jest nie tylko w pełni kompatybilny z poprzednimi wersjami USB, ale również zapewnia prędkość przesyłania danych do 10 Gb/s. Warto również wiedzieć, że wersja 3.0 została przemianowana na 3.1 1 Gen, natomiast  3.1 na 3.1 Gen 2.

W 2017 roku ogłoszono standard USB 3.2, który charakteryzuje się jeszcze większą szybkością transmisji danych, sięgającą nawet 20 Gbit/s. Standard tego typu jest przeznaczony m.in. do bezpiecznego przesyłania plików charakteryzujących się bardzo dużą objętością. Cały czas trwają prace nie tylko nad zwiększeniem przepustowości interfejsu, ale również poszerzeniem jego możliwości wykorzystania.

W obrębie złącza 3.0 i jego nowszych wersji również mamy do czynienia z różnymi rodzajami wtyczek. W urządzeniach elektronicznych można znaleźć m.in. wersje USB A, B, micro-B, oraz C.

Protokół komunikacyjny USB

Wszystkie dane wysyłane lub odbierane przy pomocy USB są podzielone na tak zwane pakiety, w skład których wchodzą bity kontrolne, pole robocze oraz identyfikator. W przypadku pola roboczego, mamy do czynienia z sytuacją, w której może ono zawierać nie tylko informacje sterujące, ale również różnego rodzaju dane. Na początku każdego pakietu znajduje się pole identyfikatora, w skład którego wchodzi 4-bitowy kod, dzięki któremu jesteśmy w stanie precyzyjnie określić rodzaj pakietu. Identyfikator, zarówno w hoscie, jak i w kliencie, powinien być w pełni debugowany. W przeciwnym przypadku cały pakiet może zostać rozpoznany jako uszkodzony. Jakie wyróżniamy pakiety podczas transmisji danych?

  • Pakiety zapowiedzi są wysyłane przez hosta, którym może być np. komputer stacjonarny lub przenośny. Zapowiedzi trafiają do urządzenia lub akcesorium podłączonego do hosta z informacją o charakterze operacji ( SETUP, IN czy OUT). Adres punktu końcowego, przekazywany w ankietach zapowiedzi, to nic innego jak 7-bitowy adres akcesorium lub urządzenia podłączonego do portu USB. W przypadku zapowiedzi OUT i SETUP, zostaje przesłany adres końcowy, natomiast w przypadku IN, początkowy.
  • Liczba bajtów w polu pakietów danych różni m.in. ze względu na częstotliwość transmisji. Im jest wyższa, tym bajtów jest więcej, jednak w każdym przypadku liczba ta musi być całkowita. Wyróżniamy cztery rodzaje pakietów danych, czyli MDATA, DATA2, DATA1 oraz DATA0.
  • Pakiety odpowiedzi, jak sama nazwa wskazuje, służą do wysyłania informacji zwrotnych. Wyróżniamy cztery pakiety odpowiedzi. Pierwszym z nich jest akceptacja, czyli potwierdzenie prawidłowego odbioru danych. W tym przypadku nie występują żadne błędy lub odchylenia od normy. Wszystko działa poprawnie. Kolejnym rodzajem odpowiedzi jest brak akceptacji, który może oznaczać brak zezwolenia na odbieranie danych lub brak danych, które w danej chwili są gotowe do wysłania. Następną możliwą odpowiedzią jest punkt zablokowany. W takiej sytuacji urządzenia lub akcesorium podłączone przez port USB informują o blokadzie i konieczności podjęcia kroków przez host, czyli np. komputer stacjonarny. Warto wiedzieć, że tego rodzaju odpowiedzi są wysyłane wyłącznie przez sprzęt podłączony do jednostki sterującej, nigdy odwrotnie. Wyróżniamy także odpowiedź informującą o braku gotowości do przyjęcia kolejnego pakietu, oznaczającą akceptację danych, które są obecnie przesyłane, jednak brak wolnego miejsca na kolejne.
  • Wyróżniamy również tak zwane pakiety specjalne, w skład których wchodzi jeden pakiet odpowiedzi i aż 3 zapowiedzi. W przypadku odpowiedzi, mamy do czynienia z pakietem ERR, którego głównym zadaniem jest oznaczanie błędów i odchyleń od normy w trakcie operacji o charakterze dzielonym. W przypadku zapowiedzi typu PRE, komputer sterujący wysyła informacje do urządzenia lub akcesorium przesyłającego dane z niską częstotliwością. W takim przypadku ryzyko błędnego odczytu jest ograniczone do minimum. Zapowiedź PING służy m.in. do identyfikowania odbiornika w przypadku operacji typu OUT, które charakteryzują się dużą częstotliwością. Zapowiedź typu SPLIT jest wykorzystywana w przypadku operacji dzielonej.

W jaki sposób są identyfikowane błędy?

W sytuacji, gdy do komputera sterującego podłączymy przez port USB inne urządzenie lub akcesorium, następuje wymiana danych, której poprawność jest sprawdzana na kilka różnych sposobów. W przypadku klienta, kontroluje się poprawność zasady wstawiania bitów, sumy kontrolne, a także bity kontrolne identyfikatora typu PID. W sytuacji gdy zostanie wykryta jakakolwiek nieprawidłowość, cały przekaz jest ponawiany. W przypadku gdy odbiornik uznał prawdziwość przekazu danych, a podczas transmisji wystąpią błędy, całość może być uznana jako nieudana próba. Niejednokrotnie bywa tak, że dane są wysyłane ponownie. Jednak klient, zwany również odbiornikiem, jest wyposażony w system, który zapobiega ponownemu przesłaniu tych samych danych, czyli retransmisji. W takim przypadku są kontrolowane identyfikatory PID, a ściślej rzecz ujmując ich zgodność z 1-bitowymi przełącznikami, nie tylko w odbiorniku, ale również w nadajniku.

Rozwiązywanie problemów z USB

W przypadku gdy do portu podłączymy urządzenie lub akcesorium, które nie zostanie wykryte przez system operacyjny, warto poszukać sterowników na własną rękę. Jeżeli producent nie dodaje płyty z niezbędnym oprogramowaniem, warto wejść na jego stronę i poszukać sterowników przeznaczonych do naszego urządzenia. Po pobraniu i zainstalowaniu na komputerze, system powinien wykryć podłączony sprzęt. Kolejnym często spotykanym problemem jest wyłączony port USB w BIOS-ie. W przypadku instalowania dodatkowych sterowników, nic nie pomoże. Należy wejść w BIOS i oznaczyć konkretny port USB jako aktywny. Początkujący użytkownicy komputerów powinni poprosić o pomoc bardziej doświadczone osoby. Niejednokrotnie zdarza się, że gniazda, wtyczki lub przewody są uszkodzone w sposób mechaniczny. Nie należy korzystać z przetartych kabli, które z jednej strony mogą nie działać prawidłowo,  z drugiej zaś są niebezpieczne dla użytkowników, komputera oraz podłączonych urządzeń i akcesoriów. Uszkodzone przewody trzeba odpowiednio zutylizować i nabyć nowe. W przypadku gdy styki w porcie USB zostały zniszczone, nie należy ich samodzielnie naprawiać, zwłaszcza w przypadku gdy komputer lub inne urządzenie jest podłączone do zasilania. Najlepszym rozwiązaniem jest wymiana całego portu w specjalistycznym serwisie komputerowym. Kolejnym często spotykanym problemem jest brak kompatybilności. Warto pamiętać, że nie wszystkie urządzenia i akcesoria pracują z każdym systemem operacyjnym. Przed zakupem konkretnego sprzętu, należy szczegółowo zapoznać się z instrukcją obsługi, w której są zawarte informację m.in. o kompatybilności.

 

Dodaj komentarz