Zestaw ewaluacyjny firmy Texas Instruments C2000 Piccolo LaunchPad w aplikacjach DSP
Wyprowadzenia cyfrowe i analogowe układu procesorowego
Układ procesorowy Piccolo TMS320F28027PT w obudowie 48-wyprowadzeniowej posiada następującą liczbę wyprowadzeń:
- 22 wyprowadzenia GPIO, z tego 4 wyprowadzenia GPIO35-GPIO38 są multipleksowane jako wyprowadzenia portu emulacyjnego JTAG
- 13 wyprowadzeń analogowych ADCIN – z tego 6 może być konfigurowana jako wyprowadzenia cyfrowe AIO
Należy zauważyć dodatkowe 6 wyprowadzeń cyfrowych AIO, które można multipleksować z sygnałami analogowymi. Dokładny opis układu procesorowego Piccolo TMS320F28027 jest zamieszczony w książce [17].
Trzeba pamiętać, że typowo do jednego wyprowadzenia układu procesorowego może być przypisanych więcej wybieranych (multipleksowanych) funkcji. Dla procesora rodziny C2000 mogą to być nawet cztery funkcje np. GPIO28/SCIRXDA/SDAA/TZ2. Dokładne przypisanie sygnałów układu procesorowego do złącz rozszerzeń jest pokazane w tab. 2.
Tab. 2. Przypisanie sygnałów na złączach płytki C2000 LaunchPad oraz na mutipleksowanych wyprowadzeniach układu procesorowego Piccolo F28027
Mux (1)(2) | Mux (1)(2) | ||||||||
3 | 2 | 1 | 0 | J1 | J5 | 0 | 1 | 2 | 3 |
+3,3 V | 1 | 1 | +5V | ||||||
ADCINA6 (aI) | ADCINA6 (aI) | AIO6 (cI/O) | AIO6 (cI/O) | 2 | 2 | GND | |||
TZ2n (I) | SDAA (I/OD) | SCIRXDA (I) | GPIO28 @ | 3 | 3 | ADCINA7 (aI) | ADCINA7 (aI) | ADCINA7 (aI) | ADCINA7 (aI) |
TZ3n (I) | SCLA(I/OD) | SCITXDA (O) | GPIO29 @ | 4 | 4 | ADCINA3 (aI) | ADCINA3 (aI) | ADCINA3 (aI) | ADCINA3 (aI) |
Rsvd | Rsvd | COMP2OUT (O) | GPIO34 | 5 | 5 | ADCINA1 (aI) | ADCINA1 (aI) | ADCINA1 (aI) | ADCINA1 (aI) |
ADCINA4 COMP2A (aI) | ADCINA4 COMP2A (aI) | AIO4 (cI/O) | AIO4 (cI/O) | 6 | 6 | ADCINA0 (aI) | ADCINA0 (aI) | ADCINA0 (aI) | ADCINA0 (aI) |
XCLKOUT (O) | SCITXDA (O) | SPICLKA (I/O) | GPIO18 | 7 | 7 | ADCINB1 (aI) | ADCINB1 (aI) | ADCINB1 (aI) | ADCINB1 (aI) |
ADCINA2 COMP1A (aI) | ADCINA2 COMP1A (aI) | AIO2 (cI/O) | AIO2 (cI/O) | 8 | 8 | ADCINB3 (aI) | ADCINB3 (aI) | ADCINB3 (aI) | ADCINB3 (aI) |
ADCINB2 COMP1B (aI) | ADCINB2 COMP1B (aI) | AIO10 (cI/O) | AIO10 (cI/O) | 9 | 9 | ADCINB7 (aI) | ADCINB7 (aI) | ADCINB7 (aI) | ADCINB7 (aI) |
ADCINB4 COMP2B (aI) | ADCINB4 COMP2B (aI) | AIO12 (cI/O) | AIO12 (cI/O) | 10 | 10 | NC |
Mux (1)(2) | Mux (1)(2) | ||||||||
3 | 2 | 1 | 0 | J6 | J2 | 0 | 1 | 2 | 3 |
Rsvd | Rsvd | EPWM1A (O) | GPIO0 | 1 | 1 | GND | |||
COMP1OUT (O) | Rsvd | EPWM1B (O) | GPIO1 | 2 | 2 | GPIO19/
XCLKIN |
SPISTEAn (I/O) | SCIRXDA (I) | ECAP1 (I/O) |
Rsvd | Rsvd | EPWM2A (O) | GPIO2 | 3 | 3 | GPIO12 | TZ1n (I) | SCITXDA (O) | Rsvd |
COMP2OUT (O) | Rsvd | EPWM2B (O) | GPIO3 | 4 | 4 | NC | |||
Rsvd | Rsvd | EPWM3A (O) | GPIO4 | 5 | 5 | RESET# | |||
ECAP1 (I/O) | Rsvd | EPWM3BA (O) | GPIO5 | 6 | 6 | GPIO16/
GPIO 32 |
SPISIMOA (I/O)/
SDAA (I/OD |
Rsvd/
EPWMSYNCI (I) |
|
TZ2n (I)/
ADCSOCAO (O) |
Rsvd/
EPWMSYNCI (I) |
SPISIMOA (I/O)/
SDAA (I/OD) |
GPIO16/
GPIO32 |
7 | 7 | GPIO17/
GPIO 33 |
SPISOMIA (I/O)/
SCLA (I/OD) |
Rsvd/
EPWMSYCO (O) |
|
TZ3n (I)/
ADCSOCBO (O) |
Rsvd/
EPWMSYCO (O) |
SPISOMIA (I/O)/
SCLA (I/OD) |
GPIO17/
GPIO 33 |
8 | 8 | GPIO6 | EPWM4A (O) | EPWMSYNCI (I) | EPWMSYNCO (O) |
NC | 9 | 9 | GPIO7 | EPWM4B (O) | SCIRXDA (I) | ||||
NC | 10 | 10 | AIO14 (cI/O) | AIO14 (cI/O) | ADCINB6 (aI) | ADCINB6 (aI) |
(1) – GPAMUX1, BPAMUX2, GPBMUX1 dla wyprowadzeń cyfrowych, (2) – AIOMUX1 dla wyprowadzeń analogowych
*n – wejście aktywne niskim poziomem (I) – wejście cyfrowe (O) – wyjście cyfrowe (I/O) – wejście/wyjście cyfrowe
(I/OD) – wejście/wyjście cyfrowe typu open drein (aI) – wejście analogowe (cI/O) – cyfrowe wejście/wyjście wyprowadzenia analogowego
Rsvd – zarezerwowane ustawienia multipleksera @ – dołączone do S4 Kolor – ustawienia domyślne po wykonaniu operacji RESET
Oprogramowanie narzędziowe CCSv5 i controlSUITE3.x
Do tworzenia i uruchamiania programów dla procesora Piccolo F2802x potrzebne jest środowisko uruchomieniowe Code Composer Studio. Jego aktualną pełną wersję CCSv5.3.0 można bezpłatnie pobrać z witryny internetowej firmy Texas Instruments.
Potrzebny jest również pakiet programowy controlSUITEv3.x do pobrania bezpłatnie ze strony. Pakiet udostępnia zbiór bibliotek, drajwerów i przykładowych aplikacji oraz projektów sprzętowych.
Pierwsze podłączenie (skonfigurowanie) zestawu C2000 Piccolo LaunchPad
Po zainstalowaniu środowiska CCSv5 [13] można pierwszy raz dołączyć zestaw ewaluacyjny C2000 Piccolo LaunchPad kablem USB do wolnego portu USB komputera. System Windows automatycznie rozpoznaje układ. Zostaną zainstalowane sterowniki systemu Windows dla emulatora XDS100v2. Sterownik nadaje każdemu portowi układu scalonego konwertera USB/UART emulatora osobny uchwyt USB i taktuje jako osobne urządzenie końcowe. Port B układu konwertera jest skonfigurowany jako RS232 UART i udostępnia na komputerze PC wirtualny port szeregowy typu COM. Należy poczekać aż system potwierdzi, że sprzęt jest gotowy do pracy.
Do poprawnej pracy programu przykładowego wymagana jest podstawowa (standardowa) konfiguracja przełączników płytki drukowanej zestawu:
Założone zwory JP1 („3V3”), JP3 („5V”) i JP2 („GND”). Oznacza to zasilanie układu procesorowego z gniazda USB.
Przełącznik S1 („Boot”) skonfigurowany następująco: S1.1 – do góry (ON), S1.2 – do góry, S1.3 – do góry. W praktyce oznacza to bootowanie z pamięci Flash.
Przełącznik S4 („Serial”) skonfigurowany w pozycji do góry (ON). Oznacza dołączenie portu UART układu procesorowego do układu emulatora, a tym samym do wirtualnego portu COM na PC.
Zestaw ewaluacyjny jest dostarczany z wpisanym do pamięci Flash układu procesorowego programem przykładowym Example_F2802xLaunchPadDemo. Program automatycznie zaczyna pracować po dołączeniu zestawu do portu USB.
Projekt przykładowy Example_F2802xLaunchPadDemo
Zestaw ewaluacyjny C2000 Piccolo LaunchPad (LANUCHXL-28027) dostarczany jest z procesorem Piccolo TMS320F28027PT. W pamięci Flash procesora jest zapisany przykładowy program Example_F2802xLaunchPadDemo [7].
Opis rozpoczęcia pracy i działanie aplikacji Demo0 jest opisane w:
- dokumencie dostarczanym w zestawie LAUNCHXL-F28027 C2000 Piccolo LaunchPad Quick Start Guide, SPRZ376,
- oraz na stronie internetowej C2000 LaunchPad: Project 0.
Pełny projekt przykładowego programu Example_F2802xLaunchPadDemo dla środowiska CCSv5 zawiera pakiet programowy controlSUITE firmy Texas Instruments:
- dostępny w ścieżce C:\TI\controlSUITE\development_kits\C2000_LaunchPad\ [15].
Po dołączeniu zestawu do portu USB program Example_F2802xLaunchPadDemo automatycznie zaczyna pracować (fot. 8). Zostaje zapalona dioda D1 sygnalizująca napięcie zasilania VCC (3,3 V). Błyskają też diody D7 i D8 sygnalizujące3 transmisję wykonywaną przez układ scalony emulatora XDS100. Świecą także po kolei cztery diody LED od lewej do prawej – wskazując na prawo na przycisk S3. Jest to cyklicznie powtarzane.
Fot. 8. Zestaw ewaluacyjny C2000 Piccolo LaunchPad po włączeniu zasilania (USB)
Po przyciśnięciu na przycisk S3 (i przytrzymaniu) program przechodzi do pomiaru wewnętrznej temperatury układu procesorowego. Dodatkowo program przykładowy wysyła informacje poprzez port szeregowy układu procesorowego typu UART. Aby je wykorzystać należy najpierw zidentyfikować numer wirtualnego portu COM. W tym celu należy kliknąć prawym klawiszem myszy na Mój komputer (np. w menu Start). Wybrać Właściwości a następnie Sprzęt oraz Menedżer urządzeń. Na liście Porty (COM i LPT) należy znaleźć port o nazwie USB Serial Port (COMX), gdzie X jest numerem.
Program przykładowy był uruchamiany z obsługą komunikacji na PC poprzez program PuTTY (do pobrania darmowo ze strony). Próby zastosowania innych programów komunikacyjnych nie dały dobrych rezultatów. Poprawna praca wymaga ustawienia parametrów komunikacji 115200 8N1. Po uruchomieniu programu PuTTY wybierz typ połączenia Serial a następnie wpisz poprawny numer portu COM oraz szybkość transmisji i kliknij Open (rys. 9).
Rys. 9. Ustawianie parametrów transmisji