Arduino UNO에 TFT LCD를 연결합시다.

Arduino UNO에 범용 ILI9341 TFT 액정 모듈을 접속했을 때의 자료입니다.



Arduino의 출력 장치에 액정 모듈을 추가했을 때의 자료입니다.

하드 준비



●Arduino UNO
●LCD

aitendo의 ★2.8 인치★TFT 액정 모듈★240x320★ [M028C9341SD]
htps //w w. 다행히. 코 m/p 로즈 ct/16038
컨트롤러 칩: ILI9341
작동 전원: 3.3V

●3.3V<->5V 상호 변환 모듈

LCD의 동작 전원이 3.3V이므로 전압 변환 필수입니다.
aliexpress 등으로 수백엔 정도로 팔고 있습니다.

● 우선 배선은 다음과 같이 했습니다.

8pin -> LCD MISO
9pin -> LCD SCK
10pin -> LCD MOSI
11pin -> LCD DC
12pin -> LCD RESET
13pin -> LCD CS

3.3V 전원과 GND와 백라이트 LED도 연결합니다.

표준 SPI 통신입니다. SPI는 시리얼 통신이므로 점퍼선은 적은 눈입니다.

모든 신호 핀은 직접 연결하지 않고 5V <-> 3.3V 전압 변환을 수행합니다.
VCC는 3.3V로 백라이트 LED도 3.3V입니다.

소프트 준비



● 다음 3개의 라이브러리를 Arduino IDE에서 사용합니다.
Arduino IDE의 라이브러리 관리자에서 검색하고 install합니다.

Adafruit GFX Library
Adafruit ILI9341
Adafruit BusIO

동작 확인



Arduiono IDE에서
파일 -> 스케치 예제 -> Adafruit ILI9341 -> graphicstest
에서 테스트합니다.

●define의 재기록
다음 define을 추가합니다.

//#define TFT_DC 9
//#define TFT_CS 10
#define TFT_CS 13
#define TFT_DC 11
#define TFT_MOSI 10
#define TFT_CLK 9
#define TFT_RST 12
#define TFT_MISO 8


define의 핀 번호는 LCD에 작성된 핀과 Arduino의 핀 번호와 일치해야합니다.

스케치의 생성자를 다시 씁니다.

// Use hardware SPI (on Uno, #13, #12, #11) and the above for CS/DC
// Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
// If using the breakout, change pins as desired
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_MOSI, TFT_CLK, TFT_RST, TFT_MISO);


컴파일하고 마이크로 컴퓨터 보드에 쓰면 완성입니다.



스케치의 graphicstest의 소스를 적당히 좋아하도록 재작성하면 자신이 생각하는대로의 표시를 낼 수 있다고 생각합니다.
Adafrui 라이브러리는 충실하고 draw계의 함수는 한가지 갖추어져 있다고 생각합니다.

GFX library for arduino의 작동 확인



GFX library for arduino를 사용하여 작동을 확인할 수 있습니다.
라이브러리 관리에서 install하고 define 등을 수정하면 동작했습니다.

examples의 Hello world등에서 핀 번호를 맞추면 움직입니다.

#define TFT_CS 13
#define TFT_DC 11
#define TFT_MOSI 10
#define TFT_SCK 9
#define TFT_RST 12
#define TFT_MISO 8

Arduino_DataBus *bus = new Arduino_SWSPI(TFT_DC /* DC */, TFT_CS /* CS */, TFT_SCK /* SCK */, TFT_MOSI /* MOSI */, -1 /* MISO */);

Arduino_GFX *gfx = new Arduino_ILI9341(bus, TFT_RST  /* RST */, 0 /* rotation */, false /* IPS */);


LCD의 컨트롤러의 형번으로 생성자가 바뀝니다.
ILI9488의 경우
Arduino_ILI9488_18bit
로 움직일 수 있습니다.

Adafruit




Adafruit이라는 단어가 잘 나옵니다.
이것은 Adafruit라는 독특한 제품을 생산하는 최첨단 제조 업체입니다.
사장이 여성으로 가치가치의 엔지니어인 것 같습니다.
과연 생각하게 하는 것이 여러가지 있습니다.
7인치 TFT + SPI + 가속기도 꽤 수요가 있다고 생각합니다.

좋은 웹페이지 즐겨찾기