Tiva C Series: mikrokontrolery ARM Cortex-M4 firmy Texas Instruments w zestawie LaunchPad
O mikrokontrolerach Tiva C Series pisaliśmy w artykule. O nowych narzędziach sprzętowych dla mikrokontrolerów Tiva C Series informowaliśmy w artykule. Dzisiaj przedstawiamy „z bliska” najnowszy zestaw LaunchPad dla nowych mikrokontrolerów firmy Texas Instruments Tiva C i jego funkcjonalny ekspander BoosterPack BOOSTXL-SENSHUB.
Zestaw startowy LauchPad
W skład zestawu startowego LauchPad TM4C123G dla mikrokontrolerów Tiva C Series wchodzi: płytka startowa LaunchPad EK-TM4C123GXL, przewód USB-A mikro-B , skrócona instrukcję użytkownika. Zawartość zestawu pokazano na fotografii 1 (galeria zdjęć tego zestawu jest dostępna na naszym profilu). Koszt zakupu zestawu w USA wynosi 12,99 USD. Szczegółowy opis zestawu, oraz informacje na temat możliwości kupna zestawu znajdziemy na stronie producenta.
Fot. 1. Zestaw startowy LauchPad TM4C123G dla mikrokontrolerów Tiva C Series z zainstalowanym modułem z serii BOOSTpack
Najważniejszym elementem zestawu startowego jest płytka LaunchPad EK-TM4C123GXL. Na płytce zainstalowano mikrokontroler z rodziny Tiva C Series o oznaczeniu: TM4C123GH6PM. Parametry zastosowanego mikrokontrolera prezentuje tabela 1.
Tab. 1. Mikrokontroler TM4C123GH6PM
Rdzeń | ARM Cortex-M4 (32 bity, operacje zmiennoprzecinkowe) maksymalna prędkość pracy FPU: 80MHz |
Obudowa/GPIO | LQFP64/43 |
Pamięć | 32 kB SRAM 256 kB FLASH 2 kB EEPROM pamięć ROM z procedurami TivaWare |
Liczniki | 12 liczników ogólnego przeznaczenia z funkcją PWM (6 liczników 32-bitowych – do 12 liczników 16-bitowych) 6 liczników 64-bitowych – do 12 liczników 32-bitowych) 2 liczniki Watchdog Timer |
Interfejs CAN | 2 interfejsy CAN (obsługa protokołu CAN w wersji 2.0 A/B z maksymalną prędkością transmisji do 1 Mb/s) |
Interfejs USB | 1 kontroler USB 2.0 (Full Speed: 12Mb/s oraz Low Speed: 1.5 Mb/s) obsługa do 32 endpointów praca w trybie: host / urządzenie / OTG |
Komunikacja szeregowa | 8 interfejsów UART 4 interfejsy SSI/SPI 4 interfejsy I2C |
Moduł analogowy | 2 przetworniki A/C o rozdzielności 12 bitów i obsłudze 12 kanałów pomiarowych każdy (maksymalna prędkość pomiarów to milion próbek na sekundę) 2 komparatory analogowe 1 wbudowany czujnik temperatury |
Zaawansowany kontroler ruchu | 2 moduły PWM (16 wyjść sygnału PWM) 2 interfejsy QEI (Quadrature Encoder Interface) |
Inne | 32 kanały uDMA 16 komparatorów cyfrowych 1 zegar czasu rzeczywistego moduł hibernation (oszczędzanie energii) moduł MPU (ochrona dostępu do pamięci mikrokontrolera) wbudowany stabilizator LDO |
Poza mikrokontrolerem na płytce startowej LaunchPad umieszczono 3 przyciski (dwa użytkownika oraz jeden restart), 2 diody LED (jedna trójkolorowa RGB użytkownika i jedna koloru zielonego sygnalizująca zasilanie płytki startowej), 2 gniazda USB (jedno programatora/emulatora i jedno do komunikacji z mikrokontrolerem), złącza rozszerzeniowe w standardzie BosterPack XL (złącza J1, J2, J3, J4). Płytka startowa posiada również zintegrowany układ programatora/emulatora mikrokontrolera Tiva C Series. Wygląd płytki startowej LaunchPad EK-TM4C123GXL pokazano na rysunku 2.
Rys. 2. Rozmieszczenie elementów na płytce startowej LaunchPad EK-TM4C123GXL
Płyta rozszerzeń BoosterPack
Żeby zaprezentować możliwości mikrokontrolera zamontowanego na płytce LaunchPad firma Texas Instruments przygotowała płytę rozszerzeń BoosterPack o nazwie: BOOSTXL-SENSHUB (galeria zdjęć jest dostępna na naszym profilu). Płytę wyposażono w czujniki ruchu oraz czujniki zmiennych środowiskowych. Dodatkowo na płycie zamontowano dwa przyciski użytkownika, dwie diody LED, oraz złącze w standardzie EM (możliwość podłączenia modułów radiowych). Koszt zakupu płyty rozszerzeniowej to 49,99 USD. Szczegółowy opis płyty, oraz informacje na temat możliwości kupna podano na stronie producenta. Wykaz czujników zamontowanych na płycie rozszerzeń prezentuje tabela 2.
Tab. 2. Czujniki zamontowane na płycie BOOSTXL-SENSHUB
Producent | Nazwa | Opis |
Texas Instruments | TMP006 | czujnik temperatury IR |
InvenSense | MPU-9150 | 9-osiowy czujnik ruchu (3-osiowy akcelerometr, 3-osiowy żyroskop, 3-osiowy kompas) |
Bosch | BMP180 | czujnik ciśnienia atmosferycznego |
Intersil | ISL29023 | czujnik oświetlenia |
Sensirion | SHT21 | czujnik wilgotności i temperatury |
Wygląd płyty rozszerzeń BoosterPack BOOSTXL-SENSHUB pokazano na fotografii 3.
Fot. 3. Płytka rozszerzeń BoosterPack BOOSTXL-SENSHUB
LaunchPad to nazwa grupy płytek startowych produkowanych przez Texas Instruments. Wszystkie płytki produkowane są według ściśle określonego standardu. Każdy LaunchPad zawiera mikrokontroler, podstawowe elementy peryferyjne, oraz posiada zintegrowany moduł programatora/emulatora. Dotychczas wyprodukowano LaunchPady dla mikrokontrolerów Tiva C Series, MSP430, C2000, Herkules. Informacje na temat układów umieszczono na stronie. Dodatkowo produkowane są różnego rodzaju płyty rozszerzeń BoosterPack kompatybilne z układami LaunchPad. Informacje o BoosterPackach dla LaunchPadów znajdziemy na stronie. W przypadku, gdy żaden z oferowanych BoosterPacków nie spełnia naszych oczekiwań, to możemy zaprojektować własną płytę rozszerzeń. Komplet materiałów pomocnych przy projektowaniu BoosterPacków do LauchPadów znajdziemy na stronie. |
Narzędzia dla mikrokontrolerów Tiva C Series
Mikrokontrolery Tiva C Series (ARM Cortex-M4) obsługiwane są przez IDE (zintegrowane środowisko programistyczne) największych światowych producentów:
Code Composer Studio – Texas Instruments, IAR Embedded Workbench – IAR Systems,
Keil RealView MDK ARM – Keil An ARM Company). Dodatkowo firma Texas Instruments udostępnia IDE o nazwie Energia (oprogramowanie do obsługi modułów LaunchPad, które zawiera gotowe biblioteki do obsługi układów peryferyjnych mikrokontrolera Tiva C Series TM4C123G). Na stronie internetowej Texas Instruments udostępniono również aplikację LMFlash służącą do programowania pamięci FLASH mikrokontrolerów Tiva, oraz aplikację TM4C PinMux Utility wspomagającą konfigurację linii we-wy mikrokontrolerów . Na największą uwagę zasługuje jednak przygotowane przez Texas Instruments oprogramowanie TivaWare for C Series. Oprogramowanie TivaWare jest zbiorem bibliotek do obsługi mikrokontrolerów Tiva C Series. Dostępne są biblioteki do obsługi układów peryferyjnych, biblioteki do obsługi USB, biblioteki do obsługi wyświetlaczy graficznych, oraz wielu typów czujników środowiskowych. Co ciekawe kody wykonywalne bibliotek zostały umieszczone w pamięć ROM mikrokontrolerów Tiva. Korzystanie z bibliotek sprowadza się „wywołania” procedur obsługi bibliotek (API opisane w dokumentacji technicznej każdej z bibliotek). Biblioteki TivaWare (aktualna wersja to 1.1) możemy pobrać ze strony producenta.
Kurs obsługi mikrokontrolerów Tiva C Series
FirmaTexas Instruments przygotowałakurs obsługi mikrokontrolerów Tiva C Series. Za bazę sprzętową kursu posłużyła płytka startowa LaunchPad dla mikrokontrolerów Tiva C Series. Informacje na temat kursu znajdziemy na stronie producenta. Kompletny kurs zawiera 15 modułów treningowych. W ramach kursu przygotowano: zeszyt ćwiczeń uczestnika, prezentację modułów treningowych w formacie PowerPoint, prezentację modułów treningowych w formacie wideo. Udostępniono instrukcję instalacji oprogramowania potrzebnego podczas kursu, oraz kody źródłowe programów prezentowanych w trakcie kursu. Odnośniki do materiałów z kursu prezentuje tabela 3.
Tab. 3. Kurs obsługi mikrokontrolerów Tiva C Series – materiały
Moduły treningowe | ||
Nr | Opis | Wideo |
1 | Wprowadzenie do mikrokontrolerów Tiva C Series | TM4C |
2 | Konfiguracja i obsługa IDE – Code Composer Studio | CCS |
3 | Wprowadzenie do oprogramowaia TivaWare | TivaWare |
4 | Obsługa przerwań i liczników mikrokontrolera | IO/TIMER |
5 | Przetwornik Analogow/Cyfrowy ADC12 | ADC10 |
6 | Oszczędzanie energii – Moduł Hiberantion | HIB |
7 | Obsługa interfejsu USB | USB |
8 | Ogranizacja i obsługa pamięci mikrokontrolera | MEM |
9 | Operacje zmiennoprzecinkowe – jednostka FPU | FPU |
10 | BosterPack „graficzny” + prezentacja biblioteki obsługi grafiki | BP-grafic |
11 | Interfejs SPI | SPI |
12 | Interfejs UART | UART |
13 | Transfer danych DMA – moduł uDMA | uDMA |
14 | BosterPack „sensorowy” + obsługa czujników środowiskowych | BP-sensor |
15 | Obsługa sygnałów PWM | PWM |
Materiały dodatkowe | ||
1 – Zeszyt ćwiczeń uczestnika kursu | ||
2 – Instrukcja instalacji oprogramowania użytego podczas kursu | ||
3 – Kody źródłowe programów prezentowanych podczas kursu | ||
4 – Prezentacja PowerPoint modułów treningowych |