8x8 도트매트릭스(8x8 dot matrix, MAX7219): 두 판 사이의 차이
(새 문서: 596x596픽셀 LED를 8x8 격자로 구성해 놓은 소자입니다. MAX7219가 사용되어 전원핀 제외 3개의 핀으로 제어 가능합니다. 여러 개의 dot matrix 모듈을 이어붙여 사용할 수 있습니다. == '''스펙''' == * 작동전압 : 5V * 작동전류 : 320mA ~ 2A == '''필요 하드웨어''' == * 도트 매트릭스 모듈 * Arduino == '''연결''' == * 예제 코드 구동을 위한 연결...) |
잔글편집 요약 없음 |
||
(같은 사용자의 중간 판 4개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
[[파일:도트매트릭스대표이미지.jpg| | {{#seo:|title=아두위키 : 아두이노 8x8 도트매트릭스(8x8 dot matrix, MAX7219)|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, 8x8 도트매트릭스, 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 8x8 도트매트릭스를 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다. 8x8 도트매트릭스(8x8 dot matrix, MAX7219)}}[[파일:도트매트릭스대표이미지.jpg|가운데|class=coders100]] | ||
LED를 8x8 격자로 구성해 놓은 소자입니다. | LED를 8x8 격자로 구성해 놓은 소자입니다. | ||
40번째 줄: | 40번째 줄: | ||
| colspan="1" rowspan="1" |D10 | | colspan="1" rowspan="1" |D10 | ||
|} | |} | ||
[[파일:Max7219 예제코드용 회로.png| | [[파일:Max7219 예제코드용 회로.png|가운데|class=coders100]] | ||
* 도트매트릭스를 2개 이상 연결하여 사용 시 연결 | * 도트매트릭스를 2개 이상 연결하여 사용 시 연결 | ||
63번째 줄: | 63번째 줄: | ||
| colspan="1" rowspan="1" |CS | | colspan="1" rowspan="1" |CS | ||
|} | |} | ||
[[파일:Max7219 | [[파일:Max7219 두개 이상 회로.png|가운데|class=coders100]] | ||
== '''라이브러리''' == | == '''라이브러리''' == |
2024년 1월 6일 (토) 10:28 기준 최신판
LED를 8x8 격자로 구성해 놓은 소자입니다.
MAX7219가 사용되어 전원핀 제외 3개의 핀으로 제어 가능합니다.
여러 개의 dot matrix 모듈을 이어붙여 사용할 수 있습니다.
스펙
- 작동전압 : 5V
- 작동전류 : 320mA ~ 2A
필요 하드웨어
- 도트 매트릭스 모듈
- Arduino
연결
- 예제 코드 구동을 위한 연결
Dot matrix | Arduino |
VCC | 5V |
GND | GND |
DIN | D12 |
CS | D11 |
CLK | D10 |
- 도트매트릭스를 2개 이상 연결하여 사용 시 연결
Dot matrix 왼쪽 | Dot matrix 오른쪽 |
VCC | VCC |
GND | GND |
DOUT | DIN |
CLK | CLK |
CS | CS |
라이브러리
- LedControl
예제 코드
#include "LedControl.h" //dot matrix를 사용하기 위한 라이브러리 호출
#define dataIn 12 //DIN 12번 핀으로 사용
#define cs 11 //CS 11번 핀으로 사용
#define clk 10 //CLK 10번 핀으로 사용
LedControl lc = LedControl(dataIn, clk, cs, 1); //LedControl('DIN핀 번호', 'CLK핀 번호', 'CS핀 번호', 'dot matrix 갯수')
void setup() {
lc.shutdown(0, false); //dot matrix를 깨우는 코드. shutdown('지정할 dotmatrix의 주소', 'false : 깨우기')
lc.setIntensity(0, 8); //밝기 설정. setIntensity('지정할 dotmatrix의 주소','밝기값(0~15)')
lc.clearDisplay(0); //사용하기 전 초기화. clearDisplay('지정할 dotmatrix의 주소')
}
void loop() //dot matrix를 1초동안 깜빡입니다.
{
// dot matrix의 LED를 점등합니다.
for (int row = 0; row < 8; row++)
{
for (int col = 0; col < 8; col++)
{
lc.setLed(0, col, row, true);
}
}
delay(1000);
// dot matrix의 LED를 소등합니다.
for (int row = 0; row < 8; row++)
{
for (int col = 0; col < 8; col++)
{
lc.setLed(0, col, row, false);
}
}
delay(1000);
}