OLED LCD 디스플레이(SSD1306)를 ESP32로 Hello-world 해 본다!
이어 LCD 디스플레이와 I2C 통신에 대해서도 가볍게 접해 갑니다.
사용해 본 LCD 디스플레이에 대해
아마존에서 팔고 있던 HiLetgo의 OLEDLCD(SSD1306)입니다.
약 900엔이었습니다. I2C 통신 사양의 물건을 선택해 보았습니다.
Mac 키보드에 올려 보았습니다. 생각보다 꽤 작다・・・
핀은
GND,VCC,SCL,SDA
의 4개입니다.I2C 통신이란?
연결하기 전에 I2C 통신에 대해 간략하게 설명합니다. I2C 통신은 시리얼 통신의 한 종류입니다.
엄밀히 말하면 시리얼 통신의 동기 방식의 하나가 됩니다. 전원선 외에 2개의 선을 연결해야 합니다.
SDA : 데이터 라인 데이터를 전송합니다.
SCL : 클록 신호선 송신 측과 수신 측의 동기를 행한다.
유용한 기사
전자 공작 초보자를 위해 시리얼 통신 방식을 알기 쉽게 정리해 보았다
ESP32와의 접속 방법(Devkitc의 경우)
ESP32의 어딨어? 그렇다면 먼저 손에 ESP32의 입출력 다이어그램을 살펴 보겠습니다. VCC는 3.3v로 연결한다.
아래 그림을 보면
GPIO21 : SDA 데이터 라인
GPIO22 : SCL 클럭 라인
에 해당하는 것을 알 수 있습니다.
도서관
SSD1306 ESP32로 검색하여 나오는 라이브러리를 설치하십시오.
코드
주의할 부분은 I2C 주소입니다. SSD1306 본체의 뒷면을 보고 저항이 어디에 연결되어 있는지 확인하십시오.
//OLED LCD サンプル
//SDA データ線 GPIO 21
//SCL クロック線GPIO 22
#include <Wire.h>
#include "SSD1306.h"//ディスプレイ用ライブラリを読み込み
//本体裏側 0x78に接続→0x3C 0x7A→0x3A
SSD1306 display(0x3c, 21, 22); //SSD1306インスタンスの作成(I2Cアドレス,SDA,SCL)
void setup() {
display.init(); //ディスプレイを初期化
display.setFont(ArialMT_Plain_16); //フォントを設定
display.drawString(0, 0, "Hello SSD1306!!"); //(0,0)の位置にHello Worldを表示
display.display(); //指定された情報を描画
}
void loop() {
}
결과(이미지)
※SSD1366이 되고 있습니다만, 실수입니다※
끝에
생각보다 쉽게 할 수 있었습니다. 디스플레이가 있으면 센서의 값이나 상태를 확인하는 것이 간단해질 것 같네요. 게다가 싸고, 컴팩트하고 또한 깨끗했습니다.
복수 사용하는 경우는 주소를 할당해야하므로, 여러가지 조사해 보세요! !
Reference
이 문제에 관하여(OLED LCD 디스플레이(SSD1306)를 ESP32로 Hello-world 해 본다!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/taiyyytai/items/6b2a90a3fe9e2a10fd04텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)