인투피온 강좌/아두이노 팁(Tip)

아두이노 도트 매트릭스 모듈(MAX7219) 사용하기

인투피온 2021. 12. 20. 14:49

 

안녕하세요.

오늘은 도트 매트릭스 모듈에 사용법에 대해 알아보겠습니다.

MAX7219 드라이버를 사용하여 기존에 복잡했던

회로를 간략하게 만들수 있는 도트 매트릭스 모듈입니다.

 

 

DOT Matrix
 
max7219 DOT Matrix
 

 

 

 

 

준비물

 

※ 클릭 시 구매링크로 이동합니다.

아두이노 우노 보드
MAX7219 도트 매트릭스 모듈
브레드보드 400핀
아두이노 택트 스위치
점퍼케이블

 

 

 

회로

 

 

VCC
5V
GND
GND
DIN
12
CS
10
CLK
11

 

MAX7219+FRITZ.fzz
0.02MB

 

 

 

코딩 및 동작

 

LedControl-master.zip
0.01MB

 

아래 코딩에 사용되는 라이브러리 파일입니다.

 

 

#include "LedControl.h"

LedControl dot = LedControl(12, 11, 10, 1);  // 핀번호 (din, clk, cs, 매트릭수 개수 설정)

int Switch1= 4;
int Switch2= 3;
int Switch3= 2;


byte A[] = { B00000000,B11100111,B01000010,B01000010,B01000010,B00000000,B00111100,B00000000 };
byte B[] = { B01000010,B10100101,B00001000,B00001000,B00011000,B01000010,B00111100,B00000000 };
byte C[] = { B00000000,B10000001,B01000010,B00100100,B01000010,B10000001,B00111100,B00000000 };
byte Q[] = { B00111000,B01000100,B01000100,B00001000,B00010000,B00010000,B00000000,B00010000 };
//원하는 모양의 도트매트릭스를 그려주세요.

void setup() {
  Serial.begin(9600);
  dot.shutdown(0, false);  //절전모드
  dot.setIntensity(0 , 10); //밝기조정
  dot.clearDisplay(0); //초기화
  
  pinMode(Switch1, INPUT_PULLUP); //스위치
  pinMode(Switch2, INPUT_PULLUP);
  pinMode(Switch3, INPUT_PULLUP);
}

void loop() {
  DOT(4);   //기본값을 ?  로 설정
   
  int SW1 = digitalRead(Switch1);
  int SW2 = digitalRead(Switch2);
  int SW3 = digitalRead(Switch3);

  if(SW1==LOW){    //스위치 번호에 따른 도트매트릭스 출력
    DOT(1); 
  }
  if(SW2==LOW){
    DOT(2); 
  }
  if(SW3==LOW){
    DOT(3); 
  }

}

void DOT(int a){

  if(a == 1){
    for(int i = 0; i < 8 ; i++)
      dot.setRow(0, i , A[i]);
  }
  if(a == 2){
    for(int i = 0; i < 8 ; i++)
      dot.setRow(0, i , B[i]);
  }
  if(a == 3){
    for(int i = 0; i < 8 ; i++)
      dot.setRow(0, i , C[i]);
  }
  if(a == 4){
    for(int i = 0; i < 8 ; i++)
      dot.setRow(0, i , Q[i]);
  }
  delay(1000);
}

 

도트 매트릭스는 평소에 '?' 를 그리고 스위치를 누를때마다

각 스위치에 해당하는 이모티콘을 나타내는 소스입니다.

 

 

 

 

 

 

전자부품 전문 쇼핑몰 인투피온입니다.
필요한 자재에 관한 문의는 홈페이지를 통한 견적 신청, 혹은 전화나 메일로 주시면 빠른 회신을 드릴 수 있도록 하겠습니다.

▶ 홈페이지: http://intopion.com/
▶ 전화: 02-2615-7278
▶ FAX : 02-6124-4242
▶ 메일: intopion@hanmail.net