안녕하세요. 메카럽입니다.
이번 포스팅에서는 세븐-세그먼트에 대해 알아볼 텐데요. 이름만 들어서는 생소하지만 우리 일상생활에서 너무나도 자주 쓰여지고 있는 부품중에 하나입니다.
세븐-세그먼트는 부저보다 더 흔한 소자로 디지털 시계, 온도계 등에 쓰이는 숫자 표기용 디스플레이입니다. 일곱 개의 LED가 하나의 숫자를 만들어 냅니다. 맨 위의 LED부터 시계 방향으로 A~G LED로 구성되며 점은 DP를 포함해서 8개를 쓰기도 합니다.
세븐-세그먼트는 LED로 구성되어 있는데, +극과 -극을 어떻게 묶느냐에 따라 커먼 애노드(Common Anode) 타입과 커먼 캐소드(Common Cathode) 타입으로 나뉩니다. 일곱 개의 LED는 모두 동일한 전원을 사용하므로 +극이나 -극을 하나로 묶어 간소화할 수 있으며, 묶여있지 않은 단자 하나에 신호를 전달하여 LED를 켜고 끄는 형태로 구성됩니다. 커먼 애노드타입 세븐-세그먼트는 +극이 모두 묶여있으므로 전원을 공통으로 묶고, 커먼 캐소드 타입은 GND를 공통으로 묶습니다.
커먼 애노드 타입은 -단자가 신호선에 연결되어 있으므로 LED를 켜려면 LOW 신호를 주어야 하고, 커먼 캐소드 타입은 +단자가 신호선에 연결되어 있으므로 LED를 켜려면 HIGH 신호를 인가합니다.
세븐-세그먼트의 개별 LED 제어용 전류가 충분하다면 커먼 캐소드 타입을 써도 무방하고, 그렇지 않다면 LOW 신호로 제어할 수 있는 커먼 애노드 타입이 적절할 것입니다. 각각의 타입에 대한 ON-OFF 진리표를 다음표에 나타내었습니다.
HIGH | LOW | |
커먼 애노드 타입 | 1 | 0 |
커먼 캐소드 타입 | 0 | 1 |
이제 아두이노 우노로 세븐-세그먼트를 제어하여 숫자를 만들어보겠습니다.
준비물 : 아두이노 우노, 세븐-세그먼트, 저항, 점퍼선 |
아두이노 우노의 연결하며 세븐-세그먼트 A~G단자에 150Ω~330Ω 정도의 저항을 달아봅니다. 과전류로 LED가 파손되는 것을 막아줍니다. 이제 세븐-세그먼트의 A~G 단자에 연결된 LED 중 어떤 것을 켜고 끄냐에 따라 디스플레이 되는 숫자가 달라집니다. 이것을 표로 나타내면 아래와 같습니다.
다음은 커먼 애드노 타입의 세븐-세그먼트를 사용하여 0부터 9까지의 숫자를 표시하는 예제입니다. 스케치 컴파일 후 업로드하면 세븐-세그먼트의 LED가 0에서 9까지 1초 간격으로 변화하는 것을 확인할 수 있습니다.
int segmentLEDs[ ] = {2,3,4,5,6,7,8, 9}; int segmentLEDsNum = 8; int digitForNum[10][8] = { {0, 0, 0, 0, 0, 0, 1, 1}, //0 {1, 0, 0, 1, 1, 1, 1, 1}, //1 {0, 0, 1, 0, 0, 1, 0, 1}, //2 {0, 0, 0, 0, 1, 1, 0, 1}, //3 {1, 0, 0, 1, 1, 0, 0, 1}, //4 {0, 1, 0, 0, 1, 0, 0, 1}, //5 {0, 1, 0, 0, 0, 0, 0, 1}, //6 {0, 0, 0, 1, 1, 1, 1, 1}, //7 {0, 0, 0, 0, 0, 0, 0, 1}, //8 {0, 0, 0, 0, 1, 0, 0, 1}, //9 }; void setup( ) { for (int i = 0; i < segmentLEDsNum;i++) { pinMode(segmentLEDs[i], OUTPUT); } } void loop( ) { for (int i = 0; i < 10; i++) { for (int j = 0; j < segmentLEDsNum; j++) { digitalWrite(segmentLEDs[j], digitForNum[i][j]); } delay(1000); } } |
'3D프린터와 아두이노 > 아두이노' 카테고리의 다른 글
아두이노 초음파 센서와 부저 활용 (21) | 2020.10.13 |
---|---|
아두이노 초음파센서에 대해 (14) | 2020.10.12 |
아두이노에서 스피커와 MP3재생 (12) | 2020.10.07 |
아두이노에서 부저와 멜로디 재생 (옥타브와 음계별 표준 주파수 실습) (13) | 2020.10.06 |
아두이노 서보모터에 대해서 (4) | 2020.10.05 |