상세 컨텐츠

본문 제목

036. Arduino 아두이노 - 0.96" OLED 모듈 사용하기 with SSD1306

embedded/arduino

by ZelKun 2023. 2. 11. 16:46

본문

반응형

014. Arduino 아두이노 - 0.96" OLED 모듈 사용하기

 

014. Arduino 아두이노 - 0.96" OLED 모듈 사용하기

OLED(Organic Light Emitting Diode)를 이용해볼거에요 128x64 픽셀로 예전 노키아 휴대폰에 쓰던 액정 모듈이라네요 OLEDarduinoGNDGNDVCC5vSDA(Serial Data Line)A4 & SDASCL(Serial CLock)A5 & SCLSDA, SCL 은 A4,A5 혹은 아두이노

zelkun.tistory.com

컴파일 에러와 에러메시지

'u8g' was not declared in this scope; did you mean 'u8'?

 

 

예전에 u8glib 를 이용해서 0.96 인치 OLED 사용해봤는데요

ESP에서 사용하려니, 컴파일 에러부터 뜨는게 사용하기 힘드니 빠르게 포기하고

다른 라이브러리를 찾아보니 Adafruit SSD1306 라이브러리를 많이 사용하는것 같아

이용해 보기로 했습니다

 

라이브러리 추가는 여기 참고

012. Arduino 아두이노 - library 라이브러리 추가하기

 

Adafruit SSD1306 lib

저는 이미 설치해서 바로 예제를 돌려볼게요

 

SSD1306 128x32 I2C

예제를 보면 통신 방식이 I2C 와 SPI 방식으로 나뉘는데

I2C 방식으로 할 거에요

 

 

Pinmap

이미지 출처: Fritzing

OLED arduino
GND GND
VCC 3.3v, 5v
SDA(Serial Data Line) A4 & SDA
SCL(Serial CLock) A5 & SCL

예제를 열어보면 I2C 통신을 위한 주소가 입력되어 있는데

예제를 올려보고, 반응이 없다면 I2C 주소를 확인하고 다시 올려야 합니다

034. Arduino 아두이노 - IIC I2C Scanner

 

아무튼 I2C Scaner를 돌려보니 0x3C 로 확인되네요

// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)
// The pins for I2C are defined by the Wire-library. 
// On an arduino UNO:       A4(SDA), A5(SCL)
// On an arduino MEGA 2560: 20(SDA), 21(SCL)
// On an arduino LEONARDO:   2(SDA),  3(SCL), ...
#define OLED_RESET     -1 // Reset pin # (or -1 if sharing Arduino reset pin)
#define SCREEN_ADDRESS 0x3D ///< See datasheet for Address; 0x3D for 128x64, 0x3C for 128x32

주석을 보니 128x64 는 0x3D

126x32는 0x3C 라고 써 있네요

 

지금까지 128x64로 알고 있었는데…

 

아무튼 수정후 다시 실행해보니 예제가 잘 돌아가네요

036. Arduino 아두이노 - 0.96" OLED 모듈 사용하기 with SSD1306

ESP 보드에서도 컴파일 잘되네요

어떻게 쓰는지는 좀 살펴봐야겠지만...

 

반응형

관련글 더보기

댓글 영역