7개의 LED를 이용하여 다양한 숫자와 간단한 영문자를 표시할 수 있다.
7세그먼트(7-Segment) 라고도 부른다.
FND는 LED의 집합이므로, 극성의 방향성에 따라 커먼 애노드(Common Anode) 타입과 커먼 캐소드(Common Cathode) 타입이 있다.
커먼 애노드(Common Anode) 타입은 3번 또는 8번 핀에 +5V를 연결해야 하며, 다른 핀에 LOW 신호를 보내야 LED가 켜진다.
커먼 캐소드(Common Cathode) 타입은 3번 또는 8번 핀에 GND를 연결해야 하며, 다른 핀에 HIGH 신호를 보내야 LED가 켜진다.
목표 : FND에 0을 표시한다.
준비물
입출력 설명
## 하드웨어
## 코드
void setup(){
for(int i = 6; i < 14; i++){
pinMode(i, OUTPUT);
}
}
void loop(){
// FND에 0표시
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
}
## 시뮬레이션
목표 : FND에 0부터 9까지 출력되는 10초 타이머를 만든다.
준비물 : 아두이노 키트, FND
입출력 설명
출력 : digitalWrite
## 하드웨어
## 코드
void setup(){
for(int i = 6; i < 14; i++){
pinMode(i, OUTPUT);
}
}
void loop(){
// FND에 0표시
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
delay(1000);
// FND에 1표시
digitalWrite(7, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, HIGH);
digitalWrite(12, HIGH);
digitalWrite(13, LOW);
delay(1000);
// FND에 2표시
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, HIGH);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
delay(1000);
// FND에 3표시
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
digitalWrite(11, HIGH);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
delay(1000);
// FND에 4표시
digitalWrite(7, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, HIGH);
digitalWrite(13, LOW);
delay(1000);
// FND에 5표시
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
digitalWrite(13, HIGH);
delay(1000);
// FND에 6표시
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, HIGH);
digitalWrite(13, HIGH);
delay(1000);
// FND에 7표시
digitalWrite(7, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
delay(1000);
// FND에 8표시
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
delay(1000);
// FND에 9표시
digitalWrite(7, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
delay(1000);
}
## 시뮬레이션