Projekt modułu TFT opiera się na łatwo dostępnych komponentach: układzie PIC32, który zajmuje się obsługą ekranu TFT , ekranu 3,2" oraz kontrolera ILI932X. Moduł posiada interfejs GPIO jak UART, wejścia analogowe, SPI i tym podobne. Całość zasilana jest zasilaczem, który podaje napięcie 5V. (użytkownik musi go dołączyć samodzielnie, nie wchodzi on w skład tego projektu). W przeciwieństwie do większości komercyjnych wyświetlaczy, ten projekt jest w całości na licencji open source (zarówno sprzęt, jak i oprogramowanie).
Moduł posiada kilka pinów wejścia/wyjścia, których źródłem jest sam układ PIC32, na którym zbudowano całość.
Schemat projektu oraz wygląd PCB:
PCB składa się z dwóch warstw o wymiarach 4,9 x 4,9 cm. Minimalna długość kabla to 0,15 mm, minimalna średnica wiertła to 0,3 mm.
Zakresy wartości operacyjnych
| Symbol | min | zwykłe | max | jednostka | Napięcie pochodzące od zasilacza | 4,5 | 5 | 5,5 | V | Natężenie prądu¹ | 130² | - | 190³ | mA | Napięcie wejścia cyfrowego, tolerancja 3,3V | 0 | - | 3,3 | V | Napięcie wejścia cyfrowego, tolerancja 5V | 0 | - | 5 | V | Natężenie prądu na wyjściu (piny 3,3 i 5V) | 0 | - | 20 | mA |
¹ - bez karty SD, bez obciążenia na wyjściach, bez ICSP
² - w trakcie minimalnego obciążenia wyświetlacza
³ - w trakcie zmiany stron (100% obciążenia procesora, szczyt obciążenia co 10-300 ms)
Maksymalne osiągalne wartości
| Symbol | min | max | jednostka | Maksymalne napięcie podawane przez zasilacz | -0,2 | 6,0 | V | Napięcie wejścia cyfrowego, tolerancja 3,3V | -0,2 | 3,6 | V | Napięcie wejścia cyfrowego, tolerancja 5V | -0,2 | 5,5 | V | Temperatura otoczenia | 0 | 55 | °C | Temperatura przechowywania | -20 | 70 | °C |
Tryby działania
Ekran TFT posiada dwa tryby, w których może działać. Są to:
- Tryb slave
- Tryb osadzonej aplikacji
Istnieje jeszcze tryb konfiguracji, który jest zawsze włączony. Pozwala on na prezentację oprogramowania, dostosowanie ustawień gamma czy zmianę ustawień ekranu dotykowego.
Tryb slave
Jest to tryb domyślny. W trybie tym ekran wykonuje polecenia od użytkownika przesłane poprzez UART. Oprogramowanie dostarczone w projekcie nie wymaga modyfikacji, jednak użytkownik jest zachęcany do dołączenia dodatkowych plików źródłowych, by lepiej sterować urządzeniem. Autor sugeruje, że każdy powinien stworzyć swoją wersję plików źródłowych na bazie podanych przykładów. By w pełni obsłużyć tryb slave, należy podpiąć do ekranu cztery przewody:
- Kabel zasilający podający napięcie 5V
- Uziemienie
- Pin TX do przesyłu danych z ekranu TFT do użytkownika
- Pin RX do przesyłu danych od użytkownika do ekranu TFT
Tryb osadzonej aplikacji
W tym trybie aplikacja napisana przez użytkownika jest osadzona w firmware ekranu. By zmodyfikować kod źródłowy, użytkownik musi zaprojektować swój własny firmware i następnie przesłać go do urządzenia poprzez ICSP. Krok zmiany kodu komplikuje się, ponieważ ekran TFT nie posiada swojego bootloadera.
Firmware zostało podzielone na trzy części: APP (część obsługująca aplikacje), SYS (system plików FAT 32, alokacja pamięci i inne), DRV (obsługa urządzeń peryferialnych i sterowników mikrokontrolerów).
By ułatwić tworzenie nowych aplikacji, autor dostarczył wbudowany zestaw ikon oraz czcionek (niestety, znaki wychodzące poza zestaw ASCII nie są obsługiwane).
Urządzenie posiada również slot na karty MicroSD. Urządzenie nie jest zgodne z technologią Plug and Play, więc karta zamontowana w trakcie pracy urządzenia nie zostanie rozpoznana i nie będzie możliwości dostępu do danych znajdujących się na niej.
Dokładna dokumentacja projektu, okraszona dużą ilością przykładów i obrazów znajduje się w źródle.
Źródło:
http://www.electronics-lab.com/projects/mcu/024/index.html
https://github.com/herptronix/smart_tft
https://github.com/herptronix/smart_tft/tree/master/documentation
Fajne? Ranking DIY
