Projekt PCB modułu CP2102 USB do UART

Zachariah Peterson
|  Utworzono: luty 16, 2023  |  Zaktualizowano: sierpień 26, 2024
Moduł CP2102 USB do UART

Kliknij tutaj, aby przejść do osadzonego przeglądarki i przeglądać ten projekt

Pracuję nad grupą produktów, które wymagają uruchamiania i konfiguracji przez RS-232 lub UART, i lubię uruchamiać prototypy, łącząc je z moim laptopem. Jednak, aby uzyskać dostęp do tego interfejsu, muszę wysyłać dane i odbierać je przez port COM. Niestety, mój laptop ma tylko porty USB, więc muszę przekonwertować sygnał z portu USB na interfejs UART. Zazwyczaj używam małego modułu konwertera interfejsu, który można kupić online.

Konwertery, które znalazłem w internecie, są dość niskiej jakości i łatwo ulegają uszkodzeniu przez wstrząsy lub przepięcia. Aby zapewnić pewną ochronę przed przepięciami, pokażę, jak zaprojektować mostek USB do UART, używając CP2102, popularnego komponentu konwertera interfejsu dla linii USB 2.0. Pełny samouczek do tego projektu można obejrzeć w poniższym filmie.

 

Możesz się zastanawiać, dlaczego po prostu nie umieścić jednego z tych obwodów bezpośrednio na prototypach, a następnie uzyskać dostęp do interfejsu UART w swoich prototypach za pomocą kabla USB? To uczciwe pytanie. Istnieją dwa powody tego:

  1. Nie wszystkie wbudowane produkty będą obsługiwać USB, ale ciężko mi przypomnieć sobie wbudowany produkt, który zbudowałem, a który nie miałby interfejsu UART.
  2. Umieszczanie dodatkowego portu USB z układem konwertera danych na każdym prototypie dodaje dodatkowej pracy i zajmuje miejsce. Prościej jest po prostu umieścić 2-pinowy nagłówek dla linii UART.

Mając to na uwadze, zabierzmy się do pracy nad małym modułem dla konwertera USB na UART CP2102.

Zaczynamy z CP2102

CP2102 od Silicon Labs to kompaktowy moduł konwertera interfejsu, który łączy interfejsy USB i UART. Podoba mi się ten komponent do systemów, które muszą łączyć się z USB, ponieważ są dostępne gotowe sterowniki do układu, które pozwalają na dostęp do niego przez port COM za pomocą aplikacji terminalowej (używam TeraTerm). Ten układ jest jednym z wielu, który jest używany w konwerterach USB-na-serial, które znajdziesz na Amazon lub Alibaba.

CP2102 jest dostępny w obudowie QFN-28 i zawiera kilka przydatnych funkcji:

  • Zintegrowany regulator +5V do +3V3 do zasilania urządzeń o niższym napięciu
  • Programowalny ROM do implementacji danych produktu
  • Prosty opcjonalny pin resetujący i obwód
  • Zintegrowany zegar, eliminujący potrzebę zewnętrznego kryształu 
  • Opcja zasilania przy użyciu wejścia +3V3
  • Transfer danych przez USB 2.0

Istnieje również opcjonalny zestaw pinów, które działają jako wskaźniki lub piny kontrolne, gdy są używane na tej samej płytce co procesor, taki jak mikrokontroler. Te piny mogą być kontrolowane przez GPIO. Nie potrzebujemy tych dla tego modułu, ponieważ moduł będzie działał niezależnie od jakiegokolwiek mikrokontrolera.

Schematy

Cele projektowe dla tego projektu są proste: projekt będzie wyprowadzał swoje dane UART, zasilanie i masę do złącza pinowego. Projekt będzie musiał zmieścić się w standardowym banku portów USB. Wreszcie, zamierzam dodać dodatkową ochronę przed przepięciami na wszystkich liniach danych i linii magistrali +5 V, aby zapewnić maksymalną ochronę przed przepięciami dla CP2102 oraz dla urządzenia gospodarza.

Najpierw przyjrzyjmy się krótko układowi aplikacyjnemu dla CP2102 (strona 15 karty katalogowej).

CP2102 application circuit

Schematy będą generalnie podążać za tym układem aplikacyjnym z pewnymi dodatkami, które zostaną omówione poniżej. Ponieważ używamy tego modułu na płytce bez żadnych innych cyfrowych komponentów, nie musimy martwić się o dodatkową pojemność magistrali zasilającej poza dyskretnymi kondensatorami , określonymi na schemacie aplikacyjnym. Po przyjrzeniu się innym modułom, które używają tego i podobnych komponentów, zobaczysz ten sam typ i liczbę kondensatorów.

Diody TVS

Na tym schemacie aplikacyjnym widzimy typowe zalecenie dotyczące umieszczenia diod TVS na liniach USB. Część, którą zalecają, to Littlefuse SP0503BAHT lub równoważny. Początkowo umieściłem jednokierunkową diodę TVS 0402 dla tego komponentu. Jak omówię poniżej, będzie to na razie tylko miejsce zastępcze, które zostanie zamienione w finalnym montażu.

Nie będziemy używać żadnych zewnętrznych układów transceiverowych ani pinu reset w tej iteracji. Zamiast tego, będziemy korzystać tylko z układów po lewej stronie ekranu. Dodam również diody TVS do linii UART Rx i Tx. Maksymalny poziom napięcia, jakiego można się spodziewać dla tej linii, to VDD - 0,8 V. przy maksymalnym VDD = 3,6 V, maksymalne napięcie linii UART wyniesie 2,4 V.

CP2102 UART I/O voltages

Aby zapewnić maksymalną możliwą ochronę na liniach UART, moglibyśmy umieścić diodę TVS z mniejszym progiem przebicia. Rekomendowana dioda TVS chroni tylko do 5,5 V, co jest tuż poniżej oceny przeciążenia dla I/O na CP2102. Ryzyko użycia mniejszej diody TVS polega na tym, że będzie miała niższe napięcie zaciskowe i nie będzie w stanie wytrzymać wyższych impulsów ESD.

Zakończone schematy są pokazane poniżej. Urządzenie jest proste i w zasadzie podąża za schematem aplikacyjnym. Podjąłem podejście, aby wykorzystać +5V mocy wchodzącej do modułu z konektora USB (sieć VBUS) i przekazałem to do wejścia regulatora na CP2102. Moc +5V oraz wyjściowa moc +3V3 są dostępne na złączu pinowym i mogą być użyte do zasilania zewnętrznego urządzenia do limitów mocy w standardzie USB 2.0.

CP2102 USB to UART schematics

Układ PCB

Układ PCB zostanie zbudowany na dwóch warstwach z wszystkimi komponentami umieszczonymi na górnej warstwie. Układ PCB będzie na tyle mały, że nie wymagamy koniecznie szybkiego trasowania linii USB, ale zaimplementujemy to tutaj jako prosty przykład, aby pokazać, jak można to zrobić w tego typu płytce. Ta płyta jest na tyle prosta, że nie musi być umieszczona na czterech warstwach, a wymagania dotyczące trasowania USB mogą być spełnione z użyciem koplanarnego trasowania różnicowego.

Początkowe rozmieszczenie jest omówione w dwóch sekcjach; złącze USB oraz diody TVS dla linii USB są umieszczone po lewej stronie płytki, a złącze pinowe wraz z diodami D4 i D5 są umieszczone po prawej stronie płytki. Rozmieszczenie po lewej stronie układu PCB jest pokazane poniżej.

CP2102 USB to UART PCB Layout

Początkowe rozmieszczenie po stronie złącza pinowego jest pokazane poniżej. Użyłem złącza pinowego pod kątem prostym, które wystaje poza krawędź płytki, aby moduł miał niski profil. Pozwala to również na użycie standardowych przewodów latających lub kabla o rozstawie 100 mil do połączenia z inną płytą. Początkowo rozprowadzenie pinów zostało ustawione tak, aby zasilanie +5 V (sieć VBUS) wchodziło do złącza pinowego od górnej strony, ale później zostało to zmienione na dolną stronę, aby uprościć trasowanie.

CP2102 USB to UART PCB Layout

Umieszczenie jest proste po obu stronach płytki, a głównym punktem tutaj jest utrzymanie kondensatorów (C1-C4) blisko ich odpowiednich pinów zasilania. Umieszczenie D4 i D5 będzie pomiędzy U1 a P1, ale zlokalizuję je dopiero po rozpoczęciu trasowania, aby móc upewnić się, że trasowanie w ich pobliżu nie będzie chaotyczne. Teraz trasowanie USB może prowadzić prosto do złącza (J1) z tym umieszczeniem. Kolejnym punktem jest obliczenie szerokości i odstępów ścieżek USB na tej dwuwarstwowej płytce.

W oparciu o minimalizację kosztów, płytkę należy ustawić na standardową grubość 62 mils. Strona tylna będzie wypełniona masą, a górna strona będzie używać trasowania koplanarnego dla pary różnicowej. Reszta L1 będzie miała powłokę miedzianą. Użyłem domyślnego ustawienia Dk wynoszącego 4.8 w układzie warstw, co jest bardzo bliskie standardowej wartości dla dwuwarstwowych PCB w wybranej przeze mnie fabryce. Poniżej przedstawiono ustawienia impedancji.

CP2102 USB to UART PCB Layout

Tutaj wykorzystujemy odstępy między parami a także odległość do miedzianej warstwy na L1, aby ustawić różnicową impedancję do wartości docelowej. Wartość szerokości została ustalona na podstawie rozmiaru padów na CP2102, ponieważ nie chcę zwężać trasowania do obrysu dla U1. Dzięki tym ustawieniom możemy poprowadzić pary różnicowe do złącza i zakończyć układ.

Finalizowany układ PCB pokazano poniżej. Jest tu dodatkowa długość, którą można by usunąć, jeśli chcielibyśmy zminiaturyzować moduł. Używając narzędzia pomiarowego (Ctrl + M), szacuję, że moglibyśmy wyciąć około 400-500 mil długości, po prostu przesuwając komponenty z prawej strony płytki bliżej do złącza USB.

CP2102 USB to UART PCB Layout

Obecnie rozmiar tego modułu jest podobny do innych modułów, które można kupić online, więc powyższa kwestia nie jest krytyczna. Istnieją trzy inne ulepszenia, które mogłyby zostać zaimplementowane w tym projekcie:

  • Dodaj małe diody LED SMD równolegle z liniami UART Rx i Tx, abyśmy mieli wizualny wskaźnik przesyłu danych
  • Dodaj ochronę przed odwrotnym napięciem na linii 3V3; te same komponenty, co na linii USB, mogą być tutaj użyte
  • Dodaj obwód resetujący z małym przełącznikiem

Zamierzam uruchomić produkcję partii tych urządzeń i przeprowadzimy kilka testów, aby zweryfikować, czy płytki działają poprawnie. Jak omówię w innym wideo i na blogu, prawdopodobnie zastąpię diody naTPD1E10B06DPYR w montażu, ponieważ te alternatywne diody zapewniają ochronę dwukierunkową i są bliższe specyfikacjom SP0503BAHT.

Śledź ten link, aby pobrać archiwum ZIP z plikami źródłowymi projektu. Możesz również użyć linku do pobrania powyżej, aby uzyskać dostęp do plików źródłowych.

Kiedykolwiek potrzebujesz szybko stworzyć małe moduły i przygotować je do produkcji, użyj narzędzi CAD 2D i 3D w Altium Designer®. Kiedy skończysz swój projekt i chcesz wysłać pliki do producenta, platforma Altium 365™ ułatwia współpracę i udostępnianie twoich projektów.

Przedstawiliśmy tylko namiastkę możliwości, jakie oferuje Altium Designer na Altium 365. Zacznij swoją darmową próbę Altium Designer + Altium 365 już dziś.

About Author

About Author

Zachariah Peterson ma bogate doświadczenie techniczne w środowisku akademickim i przemysłowym. Obecnie prowadzi badania, projekty oraz usługi marketingowe dla firm z branży elektronicznej. Przed rozpoczęciem pracy w przemyśle PCB wykładał na Portland State University i prowadził badania nad teorią laserów losowych, materiałami i stabilnością. Jego doświadczenie w badaniach naukowych obejmuje tematy związane z laserami nanocząsteczkowymi, elektroniczne i optoelektroniczne urządzenia półprzewodnikowe, czujniki środowiskowe i stochastykę. Jego prace zostały opublikowane w kilkunastu recenzowanych czasopismach i materiałach konferencyjnych. Napisał ponad 2000 artykułów technicznych na temat projektowania PCB dla wielu firm. Jest członkiem IEEE Photonics Society, IEEE Electronics Packaging Society, American Physical Society oraz Printed Circuit Engineering Association (PCEA). Wcześniej był członkiem z prawem głosu w Technicznym Komitecie Doradczym INCITS Quantum Computing pracującym nad technicznymi standardami elektroniki kwantowej, a obecnie jest członkiem grupy roboczej IEEE P3186 zajmującej się interfejsem reprezentującym sygnały fotoniczne przy użyciu symulatorów obwodów klasy SPICE.

Powiązane zasoby

Powiązana dokumentacja techniczna

Powrót do strony głównej
Thank you, you are now subscribed to updates.