1. SSD1306 OLED Display소개
SSD1306 OLED Display는 1인치 이하의 소형 Display장치로서 사용하는 방법이 간단하고 가격도 저렴하기 때문에 아두이노 환경에서 간단한 사항을 표시하는 용도로 인기가 많은 장치이다. OLED 방식이므로 반응속도도 빠르고 백라이트가 필요없어 얇은 두께가 가능하고 명암비가 높아 선명하다는 장점이 있는데도 2~3000원 정도면 구입할 수 있을 정도로 저렴하기도 하다.
2. 1.SSD1306 OLED Display 주요 사양
- 공급 전압 : 3.3V / 5V
- 온도 범위 : -30 ℃ ~ 70 ℃
- 해상도 : 128 x 64 또는 128 x 32 pixel이 많이 사용됨
- 시각 : 160 ° 이상
- 캐릭터 색상 : 단색 (흰색,청색, 또는 노란색 등)
- 초 저전력 소비 : 0.06w
- 통신 인터페이스 : IIC / SPI
- 밝기와 명암비는 프로그램 명령으로 제어 가능
- 드라이버 IC : SSD1306
3. 아두이노와의 연결
연결단자가 I2C연결방식인 경우 다음과 같이 연결하면 된다.
VCC -> 5V, GND->GND 단자를 연결하고 SCL단자는 아두이노 Analog 5번에, SDA 단자는 A4핀에 연결하면 된다
4. 라이브러리 설치
SSD1306 장치를 지원하기 위한 라이브러리는 여러 종류가 있으나 Adafruit_SSD1306 라이브러리를 많이 사용한다.
아두이노 IDE 라이브러리 메니저에서 SSD1306f를 검색하여 설치해 준다.
컴파일을 하게 되면 이에 관련된 또다른 라이브러리를 찾을 수 없다는 에러 메세지가 나오는 경우가 있는데 에러 메세지에 따라 Adafruit_GFX 또는 Adafruit_busIO 라이브러리를 추가로 설치해 주어야 하는 경우도 있다.
5. 샘플프로그램
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
void setup() {
Serial.begin(115200);
if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3D for 128x64
Serial.println(F("SSD1306 allocation failed"));
for(;;);
}
delay(2000);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0, 10);
// Display static text
display.println("Hello, world!");
display.display();
}
void loop() {
}
9 line에서 정의한 display장치를 14 line에서 시작한다.
19 ~26 Line : display장치를 초기화한 후 Text Size와 위치를 지정한 후 println 명령으로 출력하고 하면 된다.
만약 display가 표시되지 않을 경우 14 LIne의 주소를 0x3D로 수정하여 테스트해 본다.
단순한 문자열 출력이외의 다양한 그래픽 처리 예제는 예제 -> Adafruit SSD1306메뉴에서 찾아볼 수 있다
6. 구매좌표
'각종 부품 사용방법 > 출력장치' 카테고리의 다른 글
2.4인치 TFT LCD쉴드 사양 및 사용방법 (0) | 2021.08.29 |
---|---|
7-segment 4digit DIsplay모듈(TM1637) 사용법 (0) | 2019.03.13 |
AccelStepper라이브러리로 스테핑모터 제어하기 (1) | 2019.02.20 |
TB6600드라이버로 NEMA23급 이상 스테핑모터 사용하기 (3) | 2019.02.15 |
A4988 드라이버로 NEMA17급 스테핑모터 사용하기 (3) | 2019.02.12 |