도트 매트릭스 (Dot Matrix)와 아두이노

도트 매트릭스란? 도트 매트릭스는 LED(발광 다이오드)로 이루어진 격자 형태의 디스플레이 장치입니다. 각 LED는 개별적으로 켜고 끌 수 있어 다양한 문자나 이미지를 표현할 수 있습니다. 도트 매트릭스는 보통 8×8, 16×16 등의 크기로 제공되며, 여러 개를 결합하여 더 큰 디스플레이를 만들 수도 있습니다.
아두이노에서 도트 매트릭스 사용하기 아두이노를 사용하여 도트 매트릭스를 제어할 수 있습니다. 이를 통해 다양한 애니메이션, 텍스트 스크롤링, 심볼 등을 디스플레이할 수 있습니다. 일반적으로 MAX7219 또는 HT16K33와 같은 드라이버 칩을 사용하여 도트 매트릭스를 제어합니다.
주요 구성 요소와 용도
1. 도트 매트릭스 디스플레이
- 설명: LED로 구성된 격자형 디스플레이로, 각 LED를 개별적으로 제어하여 다양한 그래픽을 표현할 수 있습니다.
- 용도: 텍스트 스크롤링, 간단한 애니메이션, 시간 및 온도 표시 등.
2. MAX7219 드라이버 칩
- 설명: 도트 매트릭스 디스플레이를 제어하기 위한 칩으로, 다수의 LED를 간편하게 제어할 수 있도록 도와줍니다.
- 용도: 아두이노와 도트 매트릭스 사이의 인터페이스 역할을 하여, 코드 작성과 회로 구성을 간편하게 만듭니다.
아두이노와 도트 매트릭스 연결 예제
필요한 부품
- 아두이노 보드 (예: 아두이노 UNO)
- 도트 매트릭스 디스플레이 모듈
- MAX7219 드라이버 모듈 (내장된 모듈일 수도 있음)
- 점퍼 와이어
회로 연결
- MAX7219 모듈의 VCC를 아두이노의 5V 핀에 연결합니다.
- GND를 GND 핀에 연결합니다.
- DIN을 아두이노의 D11 핀에 연결합니다.
- CS를 아두이노의 D10 핀에 연결합니다.
- CLK를 아두이노의 D13 핀에 연결합니다.
아두이노에서 LedControl 라이브러리를 추가해줍니다.

#include <LedControl.h> // LedControl 라이브러리 초기화 // DIN핀 11, CLK핀 13, CS핀 10 LedControl lc = LedControl(11, 13, 10, 1); void setup() { // MAX7219 초기화 lc.shutdown(0, false); lc.setIntensity(0, 8); lc.clearDisplay(0); } void loop() { // 'H' 글자 표시 lc.setRow(0, 0, B01110110); lc.setRow(0, 1, B01110110); lc.setRow(0, 2, B01110110); lc.setRow(0, 3, B01111110); lc.setRow(0, 4, B01110110); lc.setRow(0, 5, B01110110); lc.setRow(0, 6, B01110110); lc.setRow(0, 7, B01110110); delay(1000); // 디스플레이 지우기 lc.clearDisplay(0); delay(1000); }
위는 도트매트릭스에 H를 표시해주는 예제였는데요, 도트매트릭스에 글자를 작성하려면 어떻게 동작하는지 자세히 살펴봅시다.
8X8 매트릭스에서 0과 1로 LED에 ON을 해주고 싶은 부분만 1로 설정을 해주면 되는데요,
이걸 쉽게 변환시켜주는 site가 있으니, 여기서 원하는 모양을 만들어서 직접 변환시킬 수 있습니다.
https://www.riyas.org/2013/12/online-led-matrix-font-generator-with.html
아래처럼 제가 원하는 ‘ㅎ’모양으로 점을 찍으면 Binary values로 보여주는 것을 확인할 수 있습니다.

답글 남기기