본문으로 건너뛰기
Display Engineer
문제 해결

ILI9341 vs ST7789: 디스플레이 컨트롤러를 구별하는 방법

같은 이름으로 판매되는 보드에도 ILI9341 또는 ST7789 컨트롤러가 들어갑니다. 증상이나 ID 레지스터 읽기로 구별하는 방법과 흰 화면, 잘못된 색을 고치는 설정을 소개합니다.

DEDisplay Engineer Applications Team · 디스플레이 애플리케이션 엔지니어엔지니어 검토: 2026년 10월 11일

같은 보드에 다른 컨트롤러가 들어가는 이유

저가 디스플레이 보드는 공개 시장에서 산 패널로 만들어집니다. 배치의 공급처가 바뀌면 컨트롤러도 바뀔 수 있지만 보드 이름, PCB, 핀 배열은 그대로입니다. ESP32-2432S028R(Cheap Yellow Display)과 ESP32-2432S024는 모두 ILI9341 버전과 ST7789 버전이 있습니다.

증상으로 구별하기

ILI9341 설정에서 보이는 증상

가능성 높은 원인

해결

흰 화면 또는 빈 화면, 백라이트는 켜짐

컨트롤러가 ST7789

ST7789 드라이버로 전환

이미지는 나오지만 색이 네거티브처럼 보임

ST7789 패널은 반전 필요

반전 전환(TFT_INVERSION_ON)

빨강과 파랑이 뒤바뀜

색 순서

BGR 순서로 설정(TFT_RGB_ORDER TFT_BGR)

이미지 반전 또는 어긋남

회전 / 메모리 접근 설정

회전 변경(MADCTL)

전부 어두움

백라이트 핀 오류 또는 다른 용도로 사용

백라이트 GPIO 확인

한 번에 하나의 설정만 바꾸고, 비교용으로 동작이 검증된 예제를 남겨 두세요.

ID를 읽어 구별하기

보드가 패널의 MISO 라인을 연결했다면 추측 대신 컨트롤러 ID를 읽을 수 있습니다. ILI9341은 Read ID4 명령(0xD3)에 0x9341로 응답합니다. TFT_eSPI에서는 tft.readcommand8(0xD3, n)으로 레지스터의 n번째 바이트를 읽습니다. 0x93과 0x41이 나오지 않으면 ST7789 드라이버를 시도하세요. MISO가 없는 보드는 읽을 수 없으므로 증상 표를 사용하세요.

다른 설정

항목

ILI9341

ST7789

TFT_eSPI 드라이버

ILI9341_DRIVER / ILI9341_2_DRIVER

ST7789_DRIVER

LovyanGFX

Panel_ILI9341

Panel_ST7789

ESP-IDF

espressif/esp_lcd_ili9341

esp_lcd_new_panel_st7789()(내장)

반전

보통 꺼짐

자주 켜짐

두 가지 모두의 템플릿은 ILI9341과 ST7789V 페이지에 있습니다.

제품에서 이를 피하는 방법

제품에는 데이터시트에 컨트롤러가 명시되고 공급업체가 생산 로트마다 이를 고정하는 모듈을 지정해, 배치가 바뀌어도 펌웨어가 깨지지 않게 하세요. 당사 2.8인치 240×320 SPI 모듈은 지정된 ST7789V를 사용합니다. 샘플은 1개부터 가능합니다.

자주 묻는 질문

ILI9341 코드가 ST7789에서 동작하나요?

확실하지 않습니다. 둘 다 240×320 컨트롤러지만 초기화 시퀀스가 다르므로 ILI9341 코드를 고치기보다 드라이버를 바꾸세요.

ST7789 디스플레이의 색이 반전되는 이유는?

많은 ST7789 패널은 디스플레이 반전(INVON)이 필요합니다. TFT_INVERSION_ON을 활성화하거나 tft.invertDisplay(true)를 호출하세요.

컨트롤러 ID는 어떻게 읽나요?

MISO를 연결한 상태에서 레지스터 0xD3(Read ID4)을 읽으면 ILI9341은 0x93 0x41을 반환합니다. MISO가 없으면 증상으로 구별하세요.

이 가이드에 소개된 모듈

어떤 디스플레이가 설계에 맞는지 고민되시나요?

크기, 인터페이스, 호스트 프로세서를 알려 주세요. 디스플레이 엔지니어가 12시간 이내에 데이터시트와 초기화 코드를 포함한 2–3가지 옵션을 회신합니다. 샘플 1개부터.