반응형
a - 디지털 3번
b- 디지털 4번
c - 디지털 5번
d - 디지털 6번
e - 디지털 7번
f - 디지털 8번
g - 디지털 9번
dp - 디지털 10번
애노드형을 사용하기 때문에 '0'신호에 불이 켜지고 '1'신호에 불이 꺼집니다.
예를들어 세그먼트에 2를 표시하고 싶으면 a,b,g,e,d 에 '0'신호를 주고 나머지에는 '1'신호를 주게되면 2가 표시됩니다.
준비물
----------------------------------------------------------
아두이노 우노, 470옴 저항 (혹은 330옴 저항), 7-세그먼트
회로도
----------------------------------------------------------
소스코드
----------------------------------------------------------
int arr[]={3,4,5,6,7,8,9,10};
//arr{a,b,c,d,e,f,g,.}
void setup()
{
for(int i=0; i<8; i++)
{
pinMode(arr[i],OUTPUT);
}
digitalWrite(arr[0],0);
digitalWrite(arr[1],0);
digitalWrite(arr[2],0);
digitalWrite(arr[3],0);
digitalWrite(arr[4],1);
digitalWrite(arr[5],0);
digitalWrite(arr[6],0);
digitalWrite(arr[7],1);
}
void loop()
{
}
결과사진
----------------------------------------------------------
++<0부터 9까지 1씩 증가 예제>
소스코드
----------------------------------------------------------
int arr[]={3,4,5,6,7,8,9,10};
//arr{a,b,c,d,e,f,g,.}
int segment[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,0,1,0,0} //9
};
void setup()
{
for(int i=0; i<8; i++)
{
pinMode(arr[i],OUTPUT);
}
}
void loop()
{
for(int i=0; i<10; i++)
{
for(int j=0; j<7; j++)
{
digitalWrite(arr[j],segment[i][j]);
}
delay(500);
}
}
결과영상
----------------------------------------------------------
반응형
'🕹️IOT' 카테고리의 다른 글
Arduino 무료 시뮬레이션 사이트 (1) | 2020.02.17 |
---|---|
[Arduino Uno R3 예제] 7. 스위치로 LED ON/OFF 하기 (0) | 2020.02.17 |
[Arduino Uno R3 예제] 5. URM37(초음파센서) (0) | 2020.02.17 |
[Arduino Uno R3 예제] 4. 초음파 센서(HC-SR04) (0) | 2020.02.17 |
[Arduino Uno R3 예제] 3. 네오픽셀 LED 깜빡이기 (JLED-ARROW-9) (0) | 2020.02.17 |