ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Dot Matrix와
    Arduino/Dot Matrix 8x8 2020. 11. 9. 18:21

    아래와 같이 LED의 빛 하나 켜고 끄기를 하기위해서 연결한 것이다.

    Dot Matrix의 C1을 아두이노D5번핀에,

    Dot Matrix의 R1을 아두이노D13번핀에 연결한다. 
    C1은 입력핀이다. C는 열(Column을 의미). R은 행(row를 의미한다.) 
    저항은 220옴을 연결한다.

    위와 같이 연결했으면, Dot하나의 LED를 켜고 꺼보자.

    소스 코드

    더보기
    void setup() {
      // put your setup code here, to run once:
      pinMode(5,OUTPUT);
      pinMode(13,OUTPUT);
    
      digitalWrite(5,HIGH);
      digitalWrite(13,LOW);
    }
    
    void loop() {
      // put your main code here, to run repeatedly:
      delay(1000);
    
      digitalWrite(5,LOW);
    
      delay(1000);
    
      digitalWrite(5,HIGH);
    }

     

     

    나머지 선들을 아두이노와 연결해보자.

    핀들의 연결은 다음과 같다.

    매트릭스의 R1~R8번핀을 아두이노의 D12 D13 ~ A0 ~ A5연결한다. 반복문을 쓰기 편리하게 연결한다.
    아두이노의 A0핀은 14번에 해당한다.
    매트릭스의 R핀들은 아두이노의 12 ~ 19에 연결된 것이다.
    매트릭스의 C1~C8번핀은 아두이노의 D2~D9핀에 연결한다.

     

    그리고, 모든 LED를 On/Off 해보자.

    소스 코드

    더보기
    int rowsPin[8]={12,13,14,15,16,17,18,19};
    int colsPin[8]={2,3,4,5,6,7,8,9};
    
    int data[8][8]={
      {1,0,1,0,1,0,1,0},
      {0,0,0,0,0,0,0,0},
      {1,1,1,1,1,1,1,1},
      {0,0,0,0,0,0,0,0},
      {1,1,1,1,1,1,1,1},
      {0,0,0,0,0,0,0,0},
      {1,1,1,1,1,1,1,1},
      {1,0,1,0,1,0,1,0}
    };
    
    void setup() {
      //  rowpin-gnd pin
      for (int i = 0; i < 8; i++)
      {
        pinMode(rowsPin[i],LOW);
      }
      //  colspin-led input pin 1:led on, 0:led off
      for (int j = 0; j < 8; j++)
      {
        pinMode(colsPin[j],LOW); 
      }
    }
    
    void loop() {
      for (int r = 0; r < 8; r++)
      {
        //  gnd설정
        digitalWrite(rowsPin[r],LOW);
        //  led input설정
        for (int c = 0; c < 8; c++)
          digitalWrite(colsPin[r],data[r][c]);//{1,0,1,0,1,0,1,0}
      }
    }

     

    댓글

Designed by Tistory.