본문으로 건너뛰기

제품소개 준비중입니다.

빠른시일 내 오픈하도록 노력하겠습니다.
감사합니다.


자료실

만지고 만들면서 쉽게 배우는, 글로벌 코딩


자료실

코딩자료 | 7세그먼트와 버튼 사용하기


페이지 정보

작성자 글로벌코딩 작성일17-04-24 07:24 조회수 382회

본문

아노드 방식

 

#define PLUS 11
#define MINUS 12

int digit = 0;

byte digits[10][7] = {
{ 0,0,0,0,0,0,1 }, // 0
{ 1,0,0,1,1,1,1 }, // 1
{ 0,0,1,0,0,1,0 }, // 2
{ 0,0,0,0,1,1,0 }, // 3
{ 1,0,0,1,1,0,0 }, // 4
{ 0,1,0,0,1,0,0 }, // 5
{ 0,1,0,0,0,0,0 }, // 6
{ 0,0,0,1,1,1,1 }, // 7
{ 0,0,0,0,0,0,0 }, // 8
{ 0,0,0,1,1,0,0 } // 9 };
};
void setup(){
pinMode(PLUS, INPUT);
pinMode(MINUS, INPUT);

for(int i=2;i<10;i++){
pinMode(i, OUTPUT);


digitalWrite(9, HIGH);
}
void loop(){
if(digitalRead(PLUS) == HIGH){
++digit;

if(digit>9){ digit=0;
}
}
if(digitalRead(MINUS) == HIGH){ 
--digit;

if(digit<0){ digit=9;
}
}
displayDigit(digit);

delay(100);
}
void displayDigit(int num){
int pin = 2;
for(int i=0;i<7;i++){
digitalWrite(pin+i, digits[num][i]);
}
}

 

 

캐소드 방식

 

#define PLUS 11
#define MINUS 12

int digit = 0;

byte digits[10][7] = {
{ 1,1,1,1,1,1,0 }, // 0
{ 0,1,1,0,0,0,0 }, // 1
{ 1,1,0,1,1,0,1 }, // 2
{ 1,1,1,1,0,0,1 }, // 3
{ 0,1,1,0,0,1,1 }, // 4
{ 1,0,1,1,0,1,1 }, // 5
{ 1,0,1,1,1,1,1 }, // 6
{ 1,1,1,0,0,0,0 }, // 7
{ 1,1,1,1,1,1,1 }, // 8
{ 1,1,1,0,0,1,1  } // 9 };
};
void setup(){
pinMode(PLUS, INPUT);
pinMode(MINUS, INPUT);

for(int i=2;i<10;i++){
pinMode(i, OUTPUT);
}

digitalWrite(9, HIGH);
}
void loop(){
if(digitalRead(PLUS) == HIGH){
++digit;

if(digit>9){ digit=0;
}
}
if(digitalRead(MINUS) == HIGH){
--digit;

if(digit<0){ digit=9;
}
}
displayDigit(digit);

delay(100);
}
void displayDigit(int num){
int pin = 2;
for(int i=0;i<7;i++){
digitalWrite(pin+i, digits[num][i]);
}