Digilent Pmod i STM32 (cz. 4) – PmodOLED, PmodGPS i Pmod8LD
Pmod8LD
Jako ostatni zostanie przedstawiony moduł Pmod8LD. Zawiera on 8 diod LED sterowanych niezależnie za pomocą linii GPIO – zapalanych stanem wysokim i gaszonych stanem niskim. Sygnały wejściowe są podłączone do bramek tranzystorów bipolarnych, dzięki czemu piny sterujące nie są obciążane prądowo, gdy diody są zapalone. Pmod8LD posiada 12-pinowy interfejs GPIO, którego sposób podłączenia do złącza Arduino zestawu KAmeleon przedstawiono w tabeli 7.
Tabela 7. Podłączenie modułu PmodLD8 do złącza ARDUINO zestawu KAmeleon
Sygnał | Numer pinu Pmod8LD | Numer pinu Kameleon ARDUINO CONNECTOR | Pin mikrokontrolera |
LD0 | 1 | D6 | PD10 |
LD1 | 2 | D7 | PB11 |
LD2 | 3 | D8 | PD11 |
LD3 | 4 | D9 | PB13 |
GND | 5 | GND | – |
VCC | 6 | +3,3 | – |
LD4 | 7 | D10 | PB12 |
LD5 | 8 | D11 | PB15 |
LD6 | 9 | D12 | PB14 |
LD7 | 10 | D13 | PB10 |
GND | 11 | – | – |
VCC | 12 | – | – |
Obsługa modułu Pmod8LD znajduje się w plikach src/Pmod8LD.h, a także src/Pmod8LD.c. Pierwszy z nich zawiera enumerację Pmod8LD_Led z listą wszystkich dostępnych LEDów oraz deklaracje funkcji do konfiguracji, a także włączania i wyłączania, zdefiniowane w drugim z plików. Funkcja konfiguracyjna Pmod8LD_Config włącza zegary dla portów GPIOB oraz GPIOD. Następnie ustawia wszystkie piny podłączone do modułu Pmod8LD jako wyjścia. Do ustawania stanu diody służą funkcje Pmod8LD_SetLed i Pmod8LD_ResetLed, których fragmenty przedstawiono na listingu 7. Wszystkie wymienione funkcje wykorzystują do obsługi GPIO bibliotekę STM32Cube.
Listing 7. Fragmenty funkcji obsługujących diody Pmod8LD
void Pmod8LD_SetLed(Pmod8LD_Led led) { switch(led) { case Pmod8LD_Led0: HAL_GPIO_WritePin(GPIOD, GPIO_PIN_10, GPIO_PIN_SET); break; void Pmod8LD_ResetLed(Pmod8LD_Led led) { switch(led) { case Pmod8LD_Led0: HAL_GPIO_WritePin(GPIOD, GPIO_PIN_10, GPIO_PIN_RESET); break;
Główna pętla przykładowej aplikacji wykonuje konfigurację pinów, po czym zapala i gasi kolejno wszystkie diody modułu Pmod8LD, co pokazano na fotografii 6.
Fotografia 6. Pmod8LD podłączony do zestawu KAmeleon