STM32USBcomp: komputer z STM32F103 do testowania aplikacji USB
Komputer STM32USBcomp powstał z myślą o zapewnieniu zoptymalizowanej, łatwej w użyciu i przy tym wygodnej platformy sprzętowej do testowania aplikacji USB bazujących na mikrokontrolerach z rodziny STM32. Opracowano go jako platformę do testowania aplikacji opisanych w książce „USB dla niewtajemniczonych, w przykładach na mikrokontrolery STM32”, w której przedstawiono jego przykładowe aplikacje.
Komputer STM32USBcomp jest w okresie promocyjnym dodawany bezpłatnie do książek „USB dla niewtajemniczonych, w przykładach na mikrokontrolery STM32” zakupionych w sklepie KAMAMI.pl. |
Konstrukcja zestawu STM32USBcomp została podporządkowana charakterystyce typowych aplikacji wykorzystujących interfejs USB, którego standardową cechą jest rozróżnianie urządzeń w zależności od natężenia prądu pobieranego z hosta USB – dlatego na płytce zastosowano LED mocy, która spełnia rolę sztucznego obciążenia, sterowanego przez jedno z wyprowadzeń mikrokontrolera STM32.
Rozmieszczenie elementów wyposażenia komputera STM32USBcomp pokazano na fotografii 1.
Fot. 1. Rozmieszczenie elementów wyposażenia płytki STM32USBcomp
Poniżej przedstawiamy film ilustrujący działanie przykładowej aplikacji na komputerze STM32USBcomp.
Schemat elektryczny komputera pokazano na rysunku 2. Zastosowano w nim mikrokontroler STM32F103T8U6, montowany w obudowie QFN36. Pracuje on w klasycznej konfiguracji z zewnętrznym rezonatorem kwarcowym, jego interfejs do programowania-debugowania JTAG wyprowadzono na standardowe złącze IDC20. Do programowania mikrokontrolera i debugowania jego pracy można użyć dowolnego interfejsu JTAG obsługującego mikrokontrolery STM32, na przykład: J-Link, ST-Link lub zgodny z nim ZL30RPGv2 (produkowany przez KAMAMI.pl).
Rys. 2. Schemat elektryczny komputera STM32USBcomp
Dwie linie portu B – PB0 i PB1 – wykorzystano do sterowania diod LED małej mocy do dowolnego wykorzystania w aplikacji użytkownika, montowane są LED w dwóch kolorach. Linia PA9 służy do włączania i wyłączania scalonego drivera liniowego STCS05, do wyjścia którego dołączono LED dużej mocy D1. Dioda ta spełnia rolę sterowanego przez mikrokontroler obciążenia linii zasilającej (domyślnie zasilanie jest podawane z USB – Con2), dzięki czemu możliwe jest sprawdzenie pracy interfejsu dla różnych trybów pracy USB związanych z poborem mocy przez współpracujące urządzenie. Zworka JP1 umożliwia pomiar natężenia prądu pobieranego przez komputer, do czego jest niezbędny multimetr dołączony (po zdjęciu zworki) do styków oznaczonych –I oraz +I na płytce (jak pokazano na fotografii 3).
Fot. 3. Umiejscowienie zworki i styków do pomiaru natężenia prądu
Linie GPIO mikrokontrolera, które nie są wykorzystywane przez peryferia zamontowane na płytce, wyprowadzono w dwóch grupach dwurzędowe na złącza gold-pin o rastrze 2,54 mm (Con3 i Con4). Na złącza te (zgodne z systemem stosowanym w modułach KAmod) wyprowadzono także napięcie +3,3 V ze stabilizatora STLQ015 (U1), które można wykorzystać do zasilania zewnętrznych obciążeń z ograniczeniem pobieranej mocy do wartości wynikającej z maksymalnej wydajności prądowej stabilizatora, która wynosi 150 mA (należy odliczyć prąd pobierany w danej aplikacji przez mikrokontroler). Do zasilania komputera służy złącze miniUSB Con2, zalecana wartość napięcia zasilającego wynosi 5 V.
Komputer wyposażono także w przycisk zerujący (oznaczony na płytce opisem RESET), który umożliwia ręczne wymuszenie zerowania mikrokontrolera przez użytkownika.