이제 TFT LCD를 ESP32에 연결해 보자. 본 tutorial에서는 ILI9341 TFT LCD를 사용했으며 이 TFT LCD 하나를 ESP32에 연결해서 얻는 이점은 다음과 같다.
● 데이터 출력
● Touch interface
● SD card interface
TFT LCD 하나면 이런저런 부차적인 인터페이스를 추가로 연결할 필요가 없으니 프로젝트 진행에 있어서 정말 유용한 부분이라고 생각된다.
https://www.pangodream.es/ili9341-esp32-parallel
연결 및 초기 설정은 위 사이트를 참고했으며 GPS 모듈 연결, SD 카드 동시 사용을 위해 일부 핀맵을 변경했다. ILI9341 TFT LCD 화면과 Arduino를 연결하는 방식은 SPI 방식과 parallel 방식이 있는데 여기서는 위 사이트를 참고하여 parallel 방식을 사용했다.
1. 핀맵
ILI9341 TFT LCD |
TFT _eSPI Library |
Ref. Parallel |
GPS 프로젝트 적용 |
LCD_CS |
TFT_CS |
27 |
33 |
LCD_RS |
TFT_DC(RS) |
14 |
15 |
LCD_RST |
TFT_RST |
26 |
32 |
LCD_WR |
TFT_WR |
12 |
4 |
LCD_RD |
TFT_RD |
13 |
2 |
LCD_D0 |
TFT_D0 |
16(RX2) |
12 |
LCD_D1 |
TFT_D1 |
4 |
13 |
LCD_D2 |
TFT_D2 |
23 |
26 |
LCD_D3 |
TFT_D3 |
22 |
25 |
LCD_D4 |
TFT_D4 |
21 |
21 |
LCD_D5 |
TFT_D5 |
19 |
22 |
LCD_D6 |
TFT_D6 |
18 |
27 |
LCD_D7 |
TFT_D7 |
17(TX2) |
14 |
|
|
|
|
SD_SS |
CS |
|
5 |
SD_DI |
DI(MOSI) |
|
23 |
SD_SCK |
SCLK |
|
18 |
SD_DO |
DO(MISO) |
|
19 |
|
|
|
|
3V3 |
|
|
3V3 |
GND |
|
|
GND |
위에서 참고한 사이트와 동일하게 연결해도 무방하다. 하지만 GPS를 연결하려면 시리얼 포트가 필요하고 GPS를 사용하면서 동시에 LCD를 Parallel mode로 사용하려면 남겨두는 편이 좋다. 핀맵을 참고하여 LCD와 ESP32를 연결한다.
2. 라이브러리 설치
ILI9341 TFT LCD를 구동하는데 여러 라이브러리가 있지만 여기서는 TFT_eSPI 라이브러리를 설치한다.
3. Parellel 적용
TFT eSPI 라이브러리를 parellel 방식으로 동작시키려면 경로를 확인하여 User_Setup.h 파일을 변경해야 한다.
Document/Arduino Folder/libararies/TFT_eSPI/User_Setup.h 파일을 열어서 다음과 같이 수정한다. iCloud를 사용 중이라면 iCloud 문서에 Arduino 폴더가 있을 것이다.
4. 예제
다음과 같은 화면이 나타나면 모든 연결과 설정이 정상적으로 완료된 것이다.
이제 각종 예제와 라이브러리를 활용하여 화면에 무엇이든 표시할 준비가 끝났다. 여기까지 아무런 문제가 없다면 다음으로 넘어가자.
'BerryMixLab > Arduino Tutorial' 카테고리의 다른 글
Arduino Tutorial - 6. TFT LCD에 GPS 데이터 출력 (0) | 2021.06.09 |
---|---|
Arduino Tutorial - 5. GPS 모듈 연결 (0) | 2021.05.17 |
Arduino Tutorial - 4. TFT LCD touch 확인 (0) | 2021.05.11 |
Arduino Tutorial - 2. Hello world (Serial 통신) (0) | 2021.05.11 |
Arduino Tutorial - 1. GPS Logger 개발 준비 (2) | 2020.10.20 |