LED 제어 코드 작성
배우기
02 2 강 - LED 제어하기
LED 제어 코드 작성

오른쪽 에디터의 주어진 코드가 의미하는 것은 13번 LED를 1초 간격으로 켜고, 끄고를 반복하는 코드입니다.

위 코드에 대해서 하나하나 살펴보도록 합니다.

먼저 setup 함수를 보면 pinMode 라는 함수가 쓰인 것을 볼 수 있습니다. pinMode 함수는 핀 번호와 모드를 정해줌으로써, 특정 핀의 입력과 출력을 설정할 수 있습니다. 이번 예제의 경우에는 13 번 핀을 이용하고 출력이기 때문에 13, OUTPUT이라는 값을 넘겨주었습니다.

그리고 다음은 loop 함수입니다. 가장 먼저 digitalWrite 함수가 보입니다. digitalWrite 함수의 경우에는 해당 핀에 출력을 주는 것으로, 전류를 공급한다는 생각으로 접근하셔도 좋습니다. HIGH(= 5V 전류)와 LOW( = 0 V 전류 차단) 두 가지 상태를 출력할 수 있습니다.

코드에서는 digitalWrite(13, HIGH); 로 전류를 주어 LED를 켜고 digitalWrite(13, LOW); 로 전류를 차단하여 LED를 끕니다.

이제 마지막으로 남은 건 delay 함수입니다. delay 함수는 단어 그대로 지연을 주는 역할을 합니다. 주어진 코드에서는 LED를 켜고 끌 때 1초 지연을 주고 있습니다.

여기서 delay 함수에 쓰이는 단위는 ms 로 1ms 는 0.001초이고 1000ms 라면 1초가 됩니다.

함수들에 대해서 정리하자면 다음과 같습니다.

  • pinMode(pin, mode);

   - 기능 : 특정 디지털 입출력 핀을 입력 또는 출력으로 설정

   - 매개변수 : pin -> 디지털 핀 번호, mode -> INPUT or OUTPUT

  • digitalWrite(pin, mode);

   - 기능 : 디지털 핀에 HIGH or LOW를 쓴다.

   - 매개변수 : pin -> 디지털 핀 번호, mode -> HIGH or LOW

  • delay(ms)

   - 기능 : 디지털 핀에 지연 시간

   - 매개변수 : ms -> 1 당 0.001 초


실습 내용

주어진 코드는 1초 동안 LED를 켜고 1초 동안 LED를 끄는 코드입니다.

3초 동안 LED를 켜고, 0.5초 동안 LED를 끄는 코드로 수정해보세요!

질문하기
추가 자료
no files uploaded

추가 자료가 없습니다

여기서 새로운 학습 자료를 확인하세요!
선생님이 추가한 자료들을 바로 확인할 수 있어요.