티스토리 뷰

반응형

 

https://youtu.be/U24Yk2rfvpQ

 

 

다른 강의자료는 www.codingnow.co.kr/ 여기를 참고해주세요.!!

 

코딩나우

프로그래밍 교육및 개발의뢰 받습니다.

www.codingnow.co.kr

 

자세한 사항은 첨부된 동영상을 참고해주세요.

 

구입은 알리익스프레스에서 구입했습니다.

 

IIC 통신 프로토콜을 사용하기 때문에 아두이노의 SCL, SDA에 연결해주면 준비는 끝입니다.

아두이노 스케치을 열어서 라이브러리를 설치합니다.

라이브러리 검색은  adafruit ssd로 검색하여 설치합니다.

강의에 사용되었던 주요 소스 코드입니다.

라이브러리 설치 후 제공되는 소스에서 일부 가져와서 사용했습니다.

매우 간단한 코드로 LCD가 제어됩니다.

#include "global.h"
#include <SPI.h>
#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)
// 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 4        // Reset pin # (or -1 if sharing Arduino reset pin)
#define SCREEN_ADDRESS 0x3C ///< See datasheet for Address; 0x3D for 128x64, 0x3C for 128x32
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
void testdrawstylesTest(void)
{
    display.clearDisplay();

    display.setTextSize(1);              // Normal 1:1 pixel scale
    display.setTextColor(SSD1306_WHITE); // Draw white text
    display.setCursor(0, 0);             // Start at top-left corner
    display.println(F("Welcome to"));
    display.println(F("  CODINGNOW!!"));

    display.println(F("\n"));
    display.println(F("Welcome to"));
    display.println(F("  CODINGNOW!!"));
    display.display();
    delay(2000);

    while (1)
    {
        display.startscrollright(0x00, 0x02);
        delay(2000);
        display.stopscroll();
        delay(1000);
        display.startscrollleft(0x00, 0x02);
        delay(2000);
    }
}

void setupMain() 
{
    /*시리얼 초기화*/
    Serial.begin(9600);
    /*장치 초기화*/
    Serial.print("ready");
    
    if (!display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS))
    {
        Serial.println(F("SSD1306 allocation failed"));
        for (;;)
            ; // Don't proceed, loop forever
    }
    testdrawstylesTest();
}

void loopMain()
{
}
반응형