MAX7219 8×8 LED 도트 매트릭스
일반
MAX7219 칩셋을 사용한 8×8 LED 도트 매트릭스 입니다. 여러 개의 모듈을 연결할수 있으며 문자, 도형등을 표시할 수 있습니다. SPI 인터페이스를 사용합니다.

사양
- 작동 전압 : 5V DC
- 데이터 통신 인터페이스 : SPI 시리얼
- 컨트롤러 : MAX7219
사용 가능한 GPIO
- 라즈베리파이 0~4
- 라즈베리파이 5
- 비글본 블랙/그린
- 젯슨 나노
- FT232H, FT2232H, FT4232H
명령
[INIT]
초기 설정을 입력합니다.
항목 | 타입 | 설명 |
---|---|---|
모듈타입 * | WRITE | 모듈의 타입을 선택합니다. (GENERIC,FC16,PAROLA,IC_STATION) |
매트릭스 개수 | WRITE | 연결된 매트릭스의 갯수를 입력합니다. |

[PRINT_TEXT]
매트릭스에 텍스트를 표시합니다.
항목 | 타입 | 설명 |
---|---|---|
시작열 | WRITE | 텍스트를 표시할 매트릭스의 열 번호입니다. 가장 왼쪽 열이 0입니다. (0~2047) |
텍스트 | WRITE | 표시할 텍스트입니다. |
[SET_POINT]
매트릭스의 지정위치의 LED를 켜거나 끕니다.
항목 | 타입 | 설명 |
---|---|---|
행 | WRITE | 매트릭스의 행(Row) 번호입니다. 가장 위의 행이 0입니다. (0~7) |
열 | WRITE | 매트릭스의 열(Column) 번호입니다. 가장 왼쪽 열이 0입니다. (0~2047) |
값 | WRITE | true이면 LED를 켜고, false이면 끕니다. |
[SET_COLUMN]
매트릭스의 지정된 열을 켜거나 끕니다. 0~255 사이의 숫자로 열의 ON/OFF를 제어할 수 있습니다.
항목 | 타입 | 설명 |
---|---|---|
열 | WRITE | 매트릭스의 열(Column) 번호입니다. 가장 왼쪽 열이 0입니다. (0~2047) |
값 * | WRITE | 매트릭스의 열을 제어할 값입니다. (0~255) |
[SET_ROW]
매트릭스의 지정된 행을 켜거나 끕니다. 연결된 모든 매트릭스의 행에 적용되며, 0~255사이의 숫자로 행의 ON/OFF 를 제어할 수 있습니다.
항목 | 타입 | 설명 |
---|---|---|
행 | WRITE | 매트릭스의 행(Row) 번호입니다. 가장 위의 행이 0입니다. (0~7) |
값 * | WRITE | 매트릭스의 행을 제어할 값입니다. (0~255) |
[SET_BUFFER]
사용자지정 데이터를 매트릭스에 표시합니다. 1바이트 당 1개의 열(Column)을 표시합니다.
항목 | 타입 | 설명 |
---|---|---|
데이터 | WRITE | 바이트 배열 값입니다. 각 바이트는 1개의 열(Column) 을 표시합니다. |
시작열 | WRITE | 매트릭스의 열 번호입니다. 가장 왼쪽 열이 0입니다. (0~2047) |
[SET_BRIGHTNESS]
매트릭스의 밝기를 설정합니다.
항목 | 타입 | 설명 |
---|---|---|
밝기 | WRITE | 연결된 모든 매트릭스의 밝기를 설정합니다. (0~15) |
[CLEAR]
매트릭스에 표시된 모든 내용을 삭제합니다.
[UPDATE]
설정한 텍스트, 도형등을 매트릭스에 실시간으로 표시할지 여부를 설정합니다. 기본값은 true입니다. false로 설정되면 실시간으로 표시되지 않고 내부 메모리에 저장만 되었다가 true가 되면 한번에 표시됩니다.
항목 | 타입 | 설명 |
---|---|---|
값 | WRITE | 실시간 표시여부를 설정합니다. |
[TRANSFORM]
현재 매트릭스에 설정된 내용을 이동, 대칭, 회전, 반전 합니다.
항목 | 타입 | 설명 |
---|---|---|
옵션 | WRITE | 적용할 옵션을 선택합니다. (왼쪽이동,오른쪽이동,위로이동,아래로이동,좌우대칭,상하대칭,시계방향90도회전,반전) |
[SCROLL_TEXT]
텍스트를 왼쪽 또는 오른쪽으로 한칸 이동합니다. 일정한 간격으로 이 명령을 호출하면 스크롤 효과가 나타납니다.
항목 | 타입 | 설명 |
---|---|---|
텍스트 | WRITE | 표시할 텍스트를 입력합니다. |
이동 방향 | WRITE | 한칸씩 이동할 방향을 선택합니다. (왼쪽, 오른쪽) |
[TEST]
매트릭스의 모든 픽셀을 켜거나 끕니다.
항목 | 타입 | 설명 |
---|---|---|
값 | WRITE | true이면 모든 픽셀을 켜고, false이면 모든 픽셀을 끕니다. |
[SHUTDOWN]
매트릭스를 대기모드로 진입하거나 일반모드로 복귀합니다.
항목 | 타입 | 설명 |
---|---|---|
값 | WRITE | true이면 매트릭스가 대기모드로 진입하고, false이면 일반모드로 복귀합니다. |
예제
목표
대시보드 버튼 위젯을 클릭하면 “Hello World” 라는 문자를 10초 동안 왼쪽으로 스크롤합니다.
부품
부품 | 갯수 |
---|---|
라즈베리파이 4 * | 1 |
LED 매트릭스 | 1 |
연결
아래의 핀들을 가로 방향으로 서로 연결합니다.
LED 매트릭스 | GPIO |
---|---|
VCC * | 5V |
GND | GND |
DIN | 10 (SPI0 MOSI) |
CS | 8 (SPI0 CE0) |
CLK | 11 (SPI0 SCLK) |

프로젝트 링크