GUIX Studio: mikrokontrolery Renesas Synergy w aplikacjach graficznych [1]

W kolejnych krokach dodajemy framework i driver D/AVE 2D warstwy Framework – rysunki 18 i 19.

rys18a

Rys. 18. Dodanie i konfiguracja D/AVE 2D Port on sf_tes_2d_drw
Rys. 18. Dodanie i konfiguracja D/AVE 2D Port on sf_tes_2d_drw
Rys. 19. Dodanie framework D/AVE 2D Driver on dave2d
Rys. 19. Dodanie framework D/AVE 2D Driver on dave2d

Tak jak już wspomniałem właściwą obsługę interfejsu graficznego zapewnia w bibliotece SSP port GUIX. GUIX zawiera procedury zapewniające wsparcie projektowania interfejsów graficznych za pomocą zewnętrznego narzędzia GUIX Studio. GUIX Studio jest programem uruchamianym na komputerze i pozwalającym na szybkie projektowanie ekranów interfejsu graficznego z dodawaniem widżetów i przypisywaniu im akcji w połączeniu z obsługą ekranu dotykowego.

Rys. 20. Dodanie funkcji framework GUIX
Rys. 20. Dodanie funkcji framework GUIX

rys21

Rys. 21. Dodanie i konfiguracja drivera GUIX
Rys. 21. Dodanie i konfiguracja drivera GUIX

W kolejnych krokach trzeba dodać funkcje do obsługi interfejsu dotykowego. Przerwanie zewnętrzne będzie wykorzystywane do obsługi interfejsu dotykowego. Interfejs dotykowy jest oparty o układ scalony SX8656 – rysunek 22. Zamiana stanu czujnika dotykowego generuje sygnał przerwania IRQ94, a mikrokontroler poprzez magistralę I2C musi odczytać nowy stan czujnika. Żeby obsłużyć przerwanie zewnętrzne i to przerwanie mogło synchronizować działanie wątków RTOS trzeba dodać funkcję drivera i funkcję framework do obsługi zewnętrznego przerwania IRQ – rysunki 23 i 24.

Rys. 22. Schemat kontrolera interfejsu dotykowego
Rys. 22. Schemat kontrolera interfejsu dotykowego

rys23a

Rys. 23. Dodanie i konfiguracja External IRQ Driver on r_icu
Rys. 23. Dodanie i konfiguracja External IRQ Driver on r_icu

rys24a

Rys. 24. Dodanie funkcji framework Input Externel IRQ Reamework on sf_external_irq
Rys. 24. Dodanie funkcji framework Input Externel IRQ Reamework on sf_external_irq

Następnie dodajemy funkcje warstwy HAL do obsługi interfejsu I2C. We właściwościach drivera podajemy adres slave 0x48 interfejsu I2C układu kontrolera panelu dotykowego SX8656. Przy zmianie wszystkich pól name (nazwa) trzeba bardzo dokładnie wpisać nazwy modułów, bo potem do tych nazw będziemy się odnosić w funkcjach warstwy wyższej.

rys25a

Rys. 25. Dodanie i konfiguracja drivera interfejsu I2C warstwy HAL
Rys. 25. Dodanie i konfiguracja drivera interfejsu I2C warstwy HAL

O autorze