J 창고

[Arduino] 7-Segment, 74HC595 본문

컴퓨터/Firmware

[Arduino] 7-Segment, 74HC595

JSFamily 2013. 10. 7. 22:45


시리얼 모니터에서 0~9를 입력받아 7-Segment에 출력




int dataPin = 2;

int clockPin = 3;

int latchPin = 4;

int incomingByte = 0;


// 0에서 9까지 숫자 표시를 위한 세그먼트 a, b, c, d, e, f, g, dp의 점멸 패턴

// 켜지는 부분이 1로 표현됨


byte digits_data[10] =

{0xFC, 0x60, 0xDA, 0xF2, 0x66, 0xB6, 0xBE, 0xE4, 0xFE, 0xE6};


void setup() {

pinMode(dataPin, OUTPUT);

pinMode(clockPin, OUTPUT);

pinMode(latchPin, OUTPUT);

Serial.begin(9600);

}


void loop() {

  if(Serial.available()>0){

    incomingByte = Serial.read();

    incomingByte = incomingByte - 48;

    Serial.print("received : ");

    Serial.println(incomingByte);

  }

  digitalWrite(latchPin, LOW); // 래치 출력 금지

 

  shiftOut(dataPin, clockPin, LSBFIRST, ~digits_data[incomingByte]); // 데이터 출력

 

  digitalWrite(latchPin, HIGH); // 래치 출력 허용

 

 

}

Comments