프로그래밍 기술/아두이노

[아두이노] 4. LED 신호등

언제나휴일 2018. 3. 21. 16:05
반응형

[아두이노] 4. LED 신호등


아두이노 LED 신호등 회로 구성도

이번에는 개의 LED On, Off 하는 것을 봅시다.

개의 저항과 개의 LED  개의 MM연결 선이 필요합니다.
빨간색은 Digital 13, 녹색은 Digital 12, 노란색은 Digital 8번과 연결하세요.
GROUND
연결하세요.

여기에서 사용할 함수는 다음과 같습니다.
pinMode(
핀번호, 핀모드)
digitalWrite(
핀번호, HIGH 혹은 LOW)

먼저 개의 LED 핀을 매크로 상수로 정의하세요.
#define LED_RED   13
#define LED_GREEN 12
#define LED_YELLOW 8

setup
함수에서는 pinMode 함수를 이용하여 핀을 출력 모드로 사용하는 것을 설정하세요.
void setup() {
  pinMode(LED_RED, OUTPUT);
  pinMode(LED_GREEN, OUTPUT);
  pinMode(LED_YELLOW, OUTPUT);  
}

LED
켜는 TurnOn 함수를 추가하세요. 함수 내부에서는 digitalWrite 함수를 이용하여 해당 핀의 값을 HIGH 출력하세요.
0.9
대기하게 합시다.
void TurnOn(int led_pin){
  digitalWrite(led_pin, HIGH);
  delay(900);  
}

LED
끄는 TurnOff 함수를 추가하세요. 함수 내부에서는 digitalWrite 함수를 이용하여 해당 핀의 값을 LOW 출력하세요.
0.1
대기하게 합시다.
void TurnOff(int led_pin){
  digitalWrite(led_pin, LOW);
  delay(100);  
}

LED
켰다가 끄는 TurnOnOff 함수를 추가하세요. 앞에서 작성한 TurnOn TurnOff 호출합니다.
void TurnOnOff(int led_pin){
  TurnOn(led_pin);
  TurnOff(led_pin);
}

loop
함수에서는 RED=>GREEN=>YELLOW 순서로 LED 켰다가 끄는 TurnOnOff 함수를 호출하세요.
void loop() {
  TurnOnOff(LED_RED);
  TurnOnOff(LED_GREEN);
  TurnOnOff(LED_YELLOW);
}

다음은 전체 코드입니다.
//rgy_led
#define LED_RED   13
#define LED_GREEN 12
#define LED_YELLOW 8
 
void setup() {
  pinMode(LED_RED, OUTPUT);
//출력 모드로 설정
  pinMode(LED_GREEN, OUTPUT);
  pinMode(LED_YELLOW, OUTPUT);
}
 
void TurnOn(int led_pin){
  digitalWrite(led_pin, HIGH);
//HIGH 출력
  delay(900);  
}
void TurnOff(int led_pin){
  digitalWrite(led_pin, LOW);
//LOW 출력
  delay(100);  
}
void TurnOnOff(int led_pin){
  TurnOn(led_pin);
  TurnOff(led_pin);
}
 
void loop() {
  TurnOnOff(LED_RED);
  TurnOnOff(LED_GREEN);
  TurnOnOff(LED_YELLOW);
}
 

저장을 선택하고 확인을 선택하여 컴파일을 수행한 후에 업로드를 하여 확인하세요.

아두이노 IDE 툴바


반응형