본문 바로가기
IT/Platform

[아두이노] ESP32 & ili9488 출력 성공

by 블랙오닉스 2024. 6. 13.

2024.06.13

https://blog.naver.com/mapes_khkim/221893783364

 

ESP32 CAM TFT LCD 출력

ESP32 CAM TFT 출력 카메라가 기본적으로 장착되어 있는 ESP32 CAM 모듈은 인터넷을 이용한...

blog.naver.com

- MOSI - GPIO13

- MISO - GPIO 12

- CLK - GPIO 14

- CS - GPIO 15

- RESET - GPIO 2

- DC - GPIO 16

 


1. 지난번 잘된 제조사 예제를 가지고 진행

  Arduino example을 Ai Thinker ESP32-CAM으로 타겟팅 -> 컴파일 에러

  예제가 Arduino Uno, Mega 기준이라 8bit, 32bit 데이터 타입 문제 발생

 

2. ESP32 & ILI9488로 자료를 찾아 진행

   컴파일은 잘됨 -> IO4번이 외부 header로도 나오고, 내장 LED를 구동하는 TR에도 연결 되어 있음

  -> LCD_LED, CS 등에 연결해 봤을 때 내장 LED 잘 켜짐 -> 포트 제어 정상

 

문제는 18bit 모드 같음.

제조사 예제에서는 9488_18로 define 되어있고, 8,8,8 write.

 

https://blog.naver.com/elesci/222609421781

 

ILI9488 SPI TFT-LCD 테스트

ILI9488를 컨트롤러로 사용하는 TFT-LCD(320x480)를 SPI로 연결하여 테스트하였습니다. STM...

blog.naver.com

 

Timing Diagram에서 MSB 6bit+"00" 으로 3번 전송


2024.06.14

TFT_eSPI 시도 -> 성공

3bit Mode 시도


1. TFT_eSPI 다운로드

https://github.com/Bodmer/TFT_eSPI

 

GitHub - Bodmer/TFT_eSPI: Arduino and PlatformIO IDE compatible TFT library optimised for the Raspberry Pi Pico (RP2040), STM32,

Arduino and PlatformIO IDE compatible TFT library optimised for the Raspberry Pi Pico (RP2040), STM32, ESP8266 and ESP32 that supports different driver chips - Bodmer/TFT_eSPI

github.com

 

2. TFT_eSPI-master\examples\480 x 320\TFT_Ellipse 예제파일 이용

3. Arduino IDE에서 TFT_eSPI 라이브러리 설치

4. C:\Users\user\Documents\Arduino\libraries\TFT_eSPI 에서 User_Setup_Select.h 편집

#include <User_Setups/Setup21_ILI9488.h>

User_Setup.h 편집: 드라이버 선택, 포트 redefine 경고를 해결하기 위해 주석 처리

#define ILI9488_DRIVER  

#if 0//BLACKONYX
#define TFT_MISO  PIN_D6  // Automatically assigned with ESP8266 if not defined
#define TFT_MOSI  PIN_D7  // Automatically assigned with ESP8266 if not defined
#define TFT_SCLK  PIN_D5  // Automatically assigned with ESP8266 if not defined

#define TFT_CS    PIN_D8  // Chip select control pin D8
#define TFT_DC    PIN_D3  // Data Command control pin
#define TFT_RST   PIN_D4  // Reset pin (could connect to NodeMCU RST, see next line)
#endif

C:\Users\user\Documents\Arduino\libraries\TFT_eSPI\User_Setup에서 Setup21_ILI9488.h 수정

사용하려는 보드가 일반 ESP32가 아니라 ESP32-CAM이라 포트가 다른 것 같음

#if 0
#define TFT_MISO 19 // (leave TFT SDO disconnected if other SPI devices share MISO)
#define TFT_MOSI 23
#define TFT_SCLK 18
#define TFT_CS    15  // Chip select control pin
#define TFT_DC    2  // Data Command control pin
#define TFT_RST   4  // Reset pin (could connect to RST pin)
#else
#define TFT_MISO 12 // (leave TFT SDO disconnected if other SPI devices share MISO)
#define TFT_MOSI 13
#define TFT_SCLK 14
#define TFT_CS    4  // Chip select control pin
#define TFT_DC   16  // Data Command control pin
#define TFT_RST   2  // Reset pin (could connect to RST pin)
#endif

'IT > Platform' 카테고리의 다른 글

[아두이노] ESP-01: BTT SKR V1.4 연결  (0) 2024.06.15
[아두이노] ESP-01 + Nano & Pro Micro  (0) 2024.06.14
[Arduino] GRBL @ESP32  (0) 2024.05.29
[Arduino] Pro Micro 포트 인식 문제 해결  (0) 2024.05.28
[Arduino] Nano SPI 테스트  (0) 2024.05.24