3색 신호등 LED: 두 판 사이의 차이
편집 요약 없음 |
잔글편집 요약 없음 |
||
| 1번째 줄: | 1번째 줄: | ||
{{#seo:|title=아두위키 : 아두이노 3색 신호등 LED 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, 3색 신호등 LED, 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 3색 신호등 LED를 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다.}}[[파일:3색신호등대표이미지1.jpg| | {{#seo:|title=아두위키 : 아두이노 3색 신호등 LED 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, 3색 신호등 LED, 아두이노 작품, 캡스톤작품, 아두이노 예제코드|description=아두이노로 3색 신호등 LED를 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보과학과 메이커수업에 활용가능합니다.}}[[파일:3색신호등대표이미지1.jpg|center|class=coders100]] | ||
신호등의 형태로 Red, Yellow, Green 3가지 LED를 사용하는 module입니다. | 신호등의 형태로 Red, Yellow, Green 3가지 LED를 사용하는 module입니다. | ||
2024년 4월 3일 (수) 13:36 판

신호등의 형태로 Red, Yellow, Green 3가지 LED를 사용하는 module입니다.
사양
- 작동 전압 : 5V
- 작동 전류 : LED 각 20mA
필요 하드웨어
- 3색 신호등 LED module
- Arduino UNO
- UNO cable
- F-M cable(4ea)
연결
RYG단자의 경우 자신이 원하는 핀번호를 OUTPUT으로 설정하여 사용하시면 됩니다.
| 3색 LED module | Arduino UNO |
| GND | GND |
| R | D3(변경가능) |
| Y | D4(변경가능) |
| G | D5(변경가능) |

예제 코드
//사용할 핀번호를 설정해줍니다.
#define ledR 3
#define ledY 4
#define ledG 5
void setup()
{
//사용하려는 핀을 OUTPUT으로 설정합니다.
pinMode(ledR, OUTPUT);
pinMode(ledY, OUTPUT);
pinMode(ledG, OUTPUT);
}
void loop()
{
//LED점등 루프를 작성합니다.
//점등 순서(R -> off -> Y -> off -> G -> off -> All on -> All off)
turnON(3);
delay(500);
turnOFF(3);
delay(500);
turnON(4);
delay(500);
turnOFF(4);
delay(500);
turnON(5);
delay(500);
turnOFF(5);
delay(500);
turnON(1);
delay(500);
turnOFF(1);
delay(500);
}
//LED가 켜지는 함수입니다.
void turnON(int x)
{
//3,4,5 각각 R,Y,G순으로 작동하며 1의 경우 모든 LED가 점등합니다.
if (x == 3)
{
digitalWrite(ledR, HIGH);
}
else if (x == 4)
{
digitalWrite(ledY, HIGH);
}
else if (x == 5)
{
digitalWrite(ledG, HIGH);
}
else if (x == 1)
{
digitalWrite(ledR, HIGH);
digitalWrite(ledY, HIGH);
digitalWrite(ledG, HIGH);
}
}
//LED가 꺼지는 함수입니다.
void turnOFF(int x)
{
//3,4,5 각각 R,Y,G순으로 작동하며 1의 경우 모든 LED가 꺼집니다.
if (x == 3)
{
digitalWrite(ledR, LOW);
}
else if (x == 4)
{
digitalWrite(ledY, LOW);
}
else if (x == 5)
{
digitalWrite(ledG, LOW);
}
else if (x == 1)
{
digitalWrite(ledR, LOW);
digitalWrite(ledY, LOW);
digitalWrite(ledG, LOW);
}
}
