Sposób ST na USB

Coraz większa liczba mikrokontrolerów wprowadzanych przez producentów na rynek jest wyposażana w wewnętrzny interfejs USB. O ile problem "sprzętowy" został rozwiązany przez wielu producentów, to - obecnie - niewielu z nich dostarcza bezpłatnie dobrej jakości biblioteki będące programową częścią stosu USB. Bez nich najdoskonalszy interfejs sprzętowy jest jedynie efektowną, ale trudną w użyciu, ozdobą.

Dodaj do ulubionych źródeł w Google
Posłuchaj
00:00

Rys. 1. Umiejscowienie bibliotek „STM32F10xxx USB-FS-Device firmware” w projekcie programistycznym

Kłopoty z samodzielną obsługą interfejsu USB, na jakie napotykają konstruktorzy i programiści, doskonale znają inżynierowie z firmy STMicroelectronics, którzy opracowali i bezpłatnie udostępnili zestaw bibliotek programowych obsługujących interfejsy device USB-FS oraz OTG-USB-FS w mikrokontrolerach STM32. Noszą one nazwę "STM32F10xxx USB-FS-Device firmware", lokalizację tych bibliotek w projekcie wykorzystującym interfejs USB pokazano na rys. 1.

Ponieważ programiści przygotowujący projekty dla STM32 mają do dyspozycji kilka środowisk IDE (m.in. RIDE, TrueSTUDIO, HiTOP, EWARM i MDK-ARM), twórcy bibliotek przygotowali je w bardzo uporządkowany sposób (rys. 2), minimalizujący kłopoty programistów: rozdzielono i logicznie nazwano katalogi projektów dla poszczególnych IDE, w osobnych katalogach znajdują się pliki źródłowe przykładowych projektów, pliki *.inc, a także pliki źródłowe programów realizujących najniższe warstwy stosu.

Kunsztu programistów przygotowujących biblioteki i projekty przykładowe dowodzi m.in. fakt, że wszystkie projekty wykorzystują te same pliki źródłowe, co - pomimo sformalizowania standardu języka C - w przypadku wielu projektów programistycznych nie jest oczywiste.

Dodatkowe informacje i materiały opisane w artykule są dostępne na stronie www.st.com/stm32

Rys. 2. Typowa zawartość katalogu przykładowego projektu demonstracyjnego

Biblioteki "STM32F10xxx USB-FS-Device firmware" mogą być stosowane w projektach dla wszystkich mikrokontrolerów z rodziny STM32 wyposażonych w interfejs USB lub USB-OTG: F102, F103, F105 oraz F107. Na rys. 3 przedstawiono zestawienie wyposażenia wewnętrznego wszystkich dostępnych obecnie mikrokontrolerów STM32, łącznie z podrodzinami F100 i F101, które nie są wyposażone w USB.

Twórcy bibliotek zaimplementowali mechanizmy sterowania przepływem danych, a także trzy metody transferu danych: przerwaniową (interrupt transfer), blokową (bulk transfer) oraz izochroniczną - niezbędną w aplikacjach wykorzystujących strumieniowy transfer danych.

Mechanizmy te wykorzystywano w 7 przykładowych aplikacjach, dla których kompletne oprogramowanie udostępniono na stronie www.st.com w postaci archiwum, którego zawartość została opisana w dokumencie UM0424.

Mikrokontrolery STM32F105/107 wyposażono w interfejs OTG-USB-FS, który w trybie device wymaga zastosowania bardzo małej liczby elementów zewnętrznych.

Wśród opisanych aplikacji znajdują się m.in.:

  • stereofoniczne głośniki USB,
  • strumieniowy odtwarzacz audio, wykorzystujący interfejs OTG-USB,
  • wykorzystanie joysticka dołączonego do mikrokontrolera jako myszki USB,
  • urządzenie mass-storage obsługujące polecenia SCSI,
  • emulowany na USB port COM, który umożliwia jeden z najprostszych sposobów komunikowania się aplikacji na PC z zewnętrznym systemem wykonanym na mikrokontrolerze z rodziny STM32,
  • urządzenie klasy HID (Human Interface Device), komunikujące się z PC za pomocą standardowego sterownika systemowego HID w Windows,
  • DFU (Device Firmware Upgrade)
  • zestaw oprogramowania umożliwiającego wymianę oprogramowania przechowywanego w pamięci Flash mikrokontrolera poprzez USB.

Rys. 3. Zestawienie wewnętrznego wyposażenia dostępnych obecnie mikrokontrolerów z rodziny STM32

Aplikacje przygotowane przez inżynierów firmy STMicroelectronics są nie tylko efektowne, ale także - dzięki ich uporządkowaniu - użyteczne w praktyce, łatwe w zrozumieniu i podatne na uzupełnienia oraz samodzielne modyfikacje.

Jedyną "niedogodnością" jest brak zaimplementowanej w nich obsługi trybu USB host oraz pełnego trybu OTG, ale programiści zainteresowani wykorzystaniem interfejsu USB w trybie OTG mogą wykorzystać inny zestaw opracowanych przez STMicroelectronics bibliotek (także dostępnych bezpłatnie) o nazwie STM32_OTG_LIB, których możliwości i sposób korzystania opisano w dokumencie UM0721.

Ten krótki przegląd wyraźnie dokumentuje intensywne starania firmy STMicroelectronics, mające na celu maksymalne uproszczenie pracy programistów, którzy dzięki bezpłatnym bibliotekom nie muszą łamać sobie głowy nad tajnikami USB i mogą w tym czasie pisać aplikacje skupiając się całkowicie na potrzebach zleceniodawcy projektu.

Rozpowszechniane bezpłatnie przez STMicroelectronics biblioteki "STM32F10xxx USB-FS-Device firmware" mają certyfikat konsorcjum USB dla klasy aplikacji USB 2.0 FullSpeed.

Większość mikrokontrolerów z rodziny STM32 jest wyposażona w wewnętrzny interfejs USB (podrodziny F102 i F103) lub USB-OTG (podrodziny F105 i F107). Opisane w artykule biblioteki programowe i przykładowe projekty przygotowano w taki sposób, że mogą być implementowane w mikrokontrolerach bez konieczności jakiejkolwiek ich adaptacji.

Biblioteki opisane w artykule są w pełni zgodne ze standardem CMSIS firmy ARM.

Piotr Zbysiński
STMicroelectronics

www.st.com

Chcesz częściej widzieć nasze artykuły w Google? Dodaj ElektronikaB2B do ulubionych źródeł
Powiązane treści
Analiza błędów w protokole USB
Projekt kontrolera USB 3.0 zatwierdzony!
USB w urządzeniach elektronicznych, część 2 – przegląd kontrolerów
Zobacz więcej w kategorii: Prezentacje firmowe
Komponenty
Cewki powietrzne POLFER – konstrukcje, zastosowania i produkcja na zamówienie
Pomiary
Systemy rejestracji czasu pracy – technologie identyfikacji i kryteria wyboru
PCB
Jak wyeliminować błędy w produkcji PCB? Zasady DFM i DRC w praktyce
Komunikacja
Switche Moxa TWS-3010: Single Pair Ethernet i Ethernet-APL w automatyce przemysłowej
Komponenty
Architektura Intel Twin Lake: wydajne komputery SBC z chłodzeniem pasywnym dla przemysłu
Elektromechanika
SCHUNK EZU – elektryczny chwytak do obsługi detali o różnych średnicach
Zobacz więcej z tagiem: Artykuły
Magazyn
Październik 2026
Magazyn
Wrzesień 2026
Magazyn
Sierpień 2026

Zobaczyć obiekt oczami radaru, czyli dlaczego potrzebujemy laboratorium do pomiarów RCS?

Radar postrzega świat inaczej niż człowiek. Zamiast obrazu tworzonego przez światło widzialne rejestruje echo wysłanej fali elektromagnetycznej. Na odpowiedź radarową obiektu wpływają nie tylko jego rozmiary, lecz także kształt, zastosowane materiały, częstotliwość oraz kierunek obserwacji. Dlatego dwa przedmioty o podobnych wymiarach mogą być dla radaru widoczne zupełnie inaczej. Jak zatem sprawdzić, co radar rzeczywiście "widzi"? Służą temu pomiary RCS, prowadzone między innymi w specjalistycznych laboratoriach, które zapewniają kontrolowane i powtarzalne warunki oraz umożliwiają uzyskanie dokładności wymaganej w danym zastosowaniu.
Zapytania ofertowe
Unikalny branżowy system komunikacji B2B Znajdź produkty i usługi, których potrzebujesz Katalog ponad 7000 firm i 60 tys. produktów