int segment_pins[] = {2, 3, 4, 5, 6, 7, 8, 9}; // 7 세그먼트에 연결된 핀들(a,b,c...)
int n_segment = 8; // 7 세그먼트의 핀 수(점까지)
//----------------------- 7 세그먼트 핀 -> 숫자 표 --------------------
int digitNum[10][8] = {
{1, 1, 1, 1, 1, 1, 0, 0}, //0
{0, 1, 1, 0, 0, 0, 0, 0}, //1
{1, 1, 0, 1, 1, 0, 1, 0}, //2
{1, 1, 1, 1, 0, 0, 1, 0}, //3
{0, 1, 1, 0, 0, 1, 1, 0}, //4
{1, 0, 1, 1, 0, 1, 1, 0}, //5
{1, 0, 1, 1, 1, 1, 1, 0}, //6
{1, 1, 1, 0, 0, 0, 0, 0}, //7
{1, 1, 1, 1, 1, 1, 1, 0}, //8
{1, 1, 1, 1, 0, 1, 1, 0}, //9
};
void setup() {
for (int ii = 0; ii < 8; ii++) { // for문을 사용하여
pinMode(segment_pins[ii], OUTPUT); // 7 세그먼트에 연결된 아두이노 핀들을 출력으로 설정
}
Serial.begin(9600);
}
void loop() {
int cds = analogRead(A0);
Serial.print("Cds : ");
Serial.println(cds);
delay(500);
if (cds > 600)
{ for (int j = 0 ; j < n_segment ; j++) { // 7 세그먼트의 각 핀을
{ digitalWrite(segment_pins[j], digitNum[0][j]);
digitalWrite(9, 0);
}
}
} else if (cds < 599)
{
for (int j = 0 ; j < n_segment ; j++) { // 7 세그먼트의 각 핀을
{ digitalWrite(segment_pins[j], digitNum[1][j]);
digitalWrite(9, 1);
}
}
}
}