블로그 이미지
조이키트 블로그
아두이노, 라즈베리파이, 반도체 센서/모듈 활용

calendar

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

Notice

250x250
728x90
반응형

 

0.91인치 128X32 OLED 디스플레이 모듈은 디스플레이 출력 장치로 다양한 전자 기기에 적용할 수 있다. 

디스플레이의 해상도는 128X32pxel 이며, 사이즈는 0.91인치이다. 

이 모듈은 주로 아두이노 보드, 라즈베리파이, 마이크로 컨트롤러 등 다양한 임베디드 시스템에서 널리 사용된다.

예를 들면 시계, 날씨정보, MP3 플레이어 정보표시 등과 같이 텍스트, 그래픽 및 도형을 출력할 수 있다.  

 

 "이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

https://link.coupang.com/a/b2EVNB

 

아두이노용 0.91Inch 128X32 3.3V OLED LCD LED 디스플레이 모듈 - LED모듈/조명모듈 | 쿠팡

쿠팡에서 0.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 0 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

https://link.coupang.com/a/b2vSOT

 

ATmega328P 마이크로 컨트롤러가 있는 아두이노 우노 R3 개발 보드 - 액세서리 | 쿠팡

쿠팡에서 0.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 0 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

https://link.coupang.com/a/b2EYoZ

 

TFT 디스플레이 1.3인치 IPS 풀컬러 LCD 모듈 - 액세서리 | 쿠팡

쿠팡에서 4.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 1 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

오늘은 0.91인치 128X32 OLED 디스플레이 모듈을 아두이노 보드에 연결하여 문자 및 도형을 표시하는 방법을 소개해보도록 하겠다.

우선 OLED 디스플레이 모듈을 아두이노에 다음과 같이 연결한다.

 

아두이노  OLED 디스플레이 모듈
3.3V 또는 5V VCC
GND GND
A4 SDA
A5 SCL

 

다음은 Arduino IDE에 OLED 모듈에 필요한 라이브러리를 설치한다.

1. 아두이노 IDE에서 새로운 창을 연다.

2. 상단 메뉴에서 Sketch > Include Library > Manage Libraries 를 선택한다.

3. Library Manager 창이 열리면 검색창에 Adafruit SSD1306을 입력하고 설치를 진행한다.

4. Adafruit GFX Library를 설치한다.

 

라이브러리를 설치한 후 아래 코드를 아두이노에 업로드한다. 

 

예제코드 : 

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

// 화면의 너비와 높이 정의
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 32

// 아두이노용 I2C 주소 설정 (기본값: 0x3C)
#define OLED_RESET    -1 // 공유 리셋 핀 없음
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

void setup() {
  // 시리얼 통신 시작
  Serial.begin(9600);
  
  // 초기화 코드
  if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
    Serial.println(F("SSD1306 allocation failed"));
    for(;;);
  }

  // 화면 초기화
  display.clearDisplay();
  
  // 텍스트 설정
  display.setTextSize(1);
  display.setTextColor(SSD1306_WHITE);
  display.setCursor(0, 0);
  display.println(F("Hello, world!"));
  
  // 도형 그리기
  drawShapes();

  // 화면에 출력
  display.display();

}

void loop() {
  // 메인 루프는 비어 있음
}

void drawShapes() {

  // 사각형 그리기
  display.drawRect(0, 15, 10, 10, SSD1306_WHITE);
  
  // 채워진 사각형 그리기
  display.fillRect(30, 15, 10, 10, SSD1306_WHITE);
  
  // 원 그리기
  display.drawCircle(60, 20, 5, SSD1306_WHITE);
  
  // 채워진 원 그리기
  display.fillCircle(90, 20, 5, SSD1306_WHITE);
}

 

코드 설명 : 

  • #include <Wire.h>: I2C 통신을 위해 Wire 라이브러리를 포함한다. 
  • #include <Adafruit_GFX.h> 및 #include <Adafruit_SSD1306.h>: Adafruit GFX와 SSD1306 라이브러리를 포함한다.
  • #define SCREEN_WIDTH 128, #define SCREEN_HEIGHT 32 : 디스플레이 해상도를 설정한다.
  • #define OLED_RESET -1: 리셋 핀을 설정한다. 리셋 핀이 사용되지 않으면 -1로 설정한다.
  • #define SCREEN_ADDRESS 0x3C: 디스플레이의 I2C 주소를 설정한다. 일반적으로 0x3C이다.
  • Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET): 디스플레이 객체를 생성한다.
  • display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS) : 디스플레이를 초기화한다. 전압 변환을 사용하도록 설정하고 I2C 주소를 지정한다.
  • display.clearDisplay(): 디스플레이 버퍼를 지운다.
  • display.setTextSize(1), display.setTextColor(SSD1306_WHITE), display.setCursor(0, 0) : 텍스트 크기, 색상 및 커서 위치를 설정한다.
  • display.print(F("Hello, world!")): 디스플레이에 문자열을 출력한다.
  • display.display() : 버퍼 내용을 실제 디스플레이에 표시한다.
  • drawShapes() 함수에서 다양한 도형을 그다.
이 코드는 OLED 디스플레이에 "Hello world!"라는 문자와 사각형, 원형 메시지를 표시한다.
 
 
출력 결과 :

이 예제를 통하여 0.91Inch 128X32 OLED 디스플레이 모듈을 사용하여 다양한 형태의 모형들을 표시할 수 있다.

728x90
반응형
posted by 조이키트 블로그