아두이노 POKE C 7세그먼트-0.5초마다 숫자 1 증가 프로그램
아두이노 POKE C 의 7세그먼트를 이용하여 0.5초마다 숫자가 1씩 증가 하는 프로그램이다.
<사진>
<코드>
int pin_FND[8] = {5, 6, 8, 9, 10, 11, 12, 13};
void FND_out(unsigned char);
void setup() {
// put your setup code here, to run once:
unsigned char i;
for(i = 0; i < 8; i++)
{
pinMode(pin_FND[i], OUTPUT);
}
}
void loop() {
// put your main code here, to run repeatedly:
FND_out(0);
delay(500);
FND_out(1);
delay(500);
FND_out(2);
delay(500);
FND_out(3);
delay(500);
FND_out(4);
delay(500);
FND_out(5);
delay(500);
FND_out(6);
delay(500);
FND_out(7);
delay(500);
FND_out(8);
delay(500);
FND_out(9);
delay(500);
}
void FND_out(unsigned char data)
{
switch (data) {
case 0 :
digitalWrite(pin_FND[7], 0);
digitalWrite(pin_FND[6], 0);
digitalWrite(pin_FND[5], 1);
digitalWrite(pin_FND[4], 1);
digitalWrite(pin_FND[3], 1);
digitalWrite(pin_FND[2], 1);
digitalWrite(pin_FND[1], 1);
digitalWrite(pin_FND[0], 1);
break;
case 1 :
digitalWrite(pin_FND[7], 0);
digitalWrite(pin_FND[6], 0);
digitalWrite(pin_FND[5], 0);
digitalWrite(pin_FND[4], 0);
digitalWrite(pin_FND[3], 0);
digitalWrite(pin_FND[2], 1);
digitalWrite(pin_FND[1], 1);
digitalWrite(pin_FND[0], 0);
break;
case 2 :
digitalWrite(pin_FND[7], 0);
digitalWrite(pin_FND[6], 1);
digitalWrite(pin_FND[5], 0);
digitalWrite(pin_FND[4], 1);
digitalWrite(pin_FND[3], 1);
digitalWrite(pin_FND[2], 0);
digitalWrite(pin_FND[1], 1);
digitalWrite(pin_FND[0], 1);
break;
case 3 :
digitalWrite(pin_FND[7], 0);
digitalWrite(pin_FND[6], 1);
digitalWrite(pin_FND[5], 0);
digitalWrite(pin_FND[4], 0);
digitalWrite(pin_FND[3], 1);
digitalWrite(pin_FND[2], 1);
digitalWrite(pin_FND[1], 1);
digitalWrite(pin_FND[0], 1);
break;
case 4 :
digitalWrite(pin_FND[7], 0);
digitalWrite(pin_FND[6], 1);
digitalWrite(pin_FND[5], 1);
digitalWrite(pin_FND[4], 0);
digitalWrite(pin_FND[3], 0);
digitalWrite(pin_FND[2], 1);
digitalWrite(pin_FND[1], 1);
digitalWrite(pin_FND[0], 0);
break;
case 5 :
digitalWrite(pin_FND[7], 0);
digitalWrite(pin_FND[6], 1);
digitalWrite(pin_FND[5], 1);
digitalWrite(pin_FND[4], 0);
digitalWrite(pin_FND[3], 1);
digitalWrite(pin_FND[2], 1);
digitalWrite(pin_FND[1], 0);
digitalWrite(pin_FND[0], 1);
break;
case 6 :
digitalWrite(pin_FND[7], 0);
digitalWrite(pin_FND[6], 1);
digitalWrite(pin_FND[5], 1);
digitalWrite(pin_FND[4], 1);
digitalWrite(pin_FND[3], 1);
digitalWrite(pin_FND[2], 1);
digitalWrite(pin_FND[1], 0);
digitalWrite(pin_FND[0], 1);
break;
case 7 :
digitalWrite(pin_FND[7], 0);
digitalWrite(pin_FND[6], 0);
digitalWrite(pin_FND[5], 1);
digitalWrite(pin_FND[4], 0);
digitalWrite(pin_FND[3], 0);
digitalWrite(pin_FND[2], 1);
digitalWrite(pin_FND[1], 1);
digitalWrite(pin_FND[0], 1);
break;
case 8 :
digitalWrite(pin_FND[7], 0);
digitalWrite(pin_FND[6], 1);
digitalWrite(pin_FND[5], 1);
digitalWrite(pin_FND[4], 1);
digitalWrite(pin_FND[3], 1);
digitalWrite(pin_FND[2], 1);
digitalWrite(pin_FND[1], 1);
digitalWrite(pin_FND[0], 1);
break;
case 9 :
digitalWrite(pin_FND[7], 0);
digitalWrite(pin_FND[6], 1);
digitalWrite(pin_FND[5], 1);
digitalWrite(pin_FND[4], 0);
digitalWrite(pin_FND[3], 1);
digitalWrite(pin_FND[2], 1);
digitalWrite(pin_FND[1], 1);
digitalWrite(pin_FND[0], 1);
break;
default:
break;
}
}
열심히 하고 있네^^ 다른 작업들도 보여줘~~♥♥
답글삭제아두이노 박사님.
답글삭제