728x90
아두이노 릴리패드(RallaPad) 코딩 기초 시리즈 5번째 편입니다. 아두이노의 "Hello World"인 LED 점멸(Blink)부터 시작해, 여러 LED를 제어하고 신호등을 만드는 것까지 다룹니다. 먼저 LED의 기본 원리를 짚습니다.
메이크샌드박스에 오신것을 환영합니다.
3-1. RallaPad 프레임워크 실습(아래 이미지 중 해당 번호를 클릭하면 해당 페이지로 넘어갑니다)
makesandbox.cc
[#욜로#랄라패드] #RallaPad_FrameWork_D&O(Digital&Output,디지탈&출력)_실습_LED
안녕하세요! 누구나 원하는걸 만들어보는 메이크샌드박스 입니다! 오늘 소개해 드릴 내용은 RallaPad를 ...
blog.naver.com
1. LED 기본 — 극성이 있다
LED(Light Emitting Diode, 발광 다이오드)는 전류가 흐르면 빛을 내는 부품입니다. 다이오드는 전류를 한 방향(+에서 -)으로만 흐르게 하므로, 방향(극성)을 지켜 연결해야 합니다.
| 단자 | 극성 | 연결 |
| Anode | + | VCC / VDD |
| Cathode | - | GND |
업로드 과정도 알아 두면 좋습니다 — V(체크) = 컴파일(문법 검사), 업로드 = 컴파일된 바이너리를 보드로 전송.
2. LED 점멸 (Blink)
13번 핀의 LED를 1초 간격으로 켜고 끄는 가장 기본적인 예제입니다.
int led = 13; // 전역변수로 핀 번호 지정
void setup() {
pinMode(led, OUTPUT); // 13번 핀을 출력으로 설정
digitalWrite(led, HIGH); // 초기값 (아두이노 기본은 LOW)
}
void loop() {
digitalWrite(led, HIGH); // LED 켜기
delay(1000); // 1초 대기
digitalWrite(led, LOW); // LED 끄기
delay(1000); // 1초 대기
}
3. 신호등 만들기
빨강(5초) → 초록(3초) → 노랑(1초) 순서로 도는 신호등입니다. 여러 LED의 HIGH/LOW를 조합해 상태를 만듭니다.
int led_R = 7; // 빨강
int led_G = 13; // 초록
int led_Y = 3; // 노랑 (이 회로는 반대로 동작)
void setup() {
pinMode(led_R, OUTPUT);
pinMode(led_G, OUTPUT);
pinMode(led_Y, OUTPUT);
digitalWrite(led_R, LOW);
digitalWrite(led_G, LOW);
digitalWrite(led_Y, LOW);
}
void loop() {
// 빨강 5초 (노랑은 반대 동작이라 HIGH가 꺼짐)
digitalWrite(led_R, HIGH);
digitalWrite(led_G, LOW);
digitalWrite(led_Y, HIGH);
delay(5000);
// 초록 3초
digitalWrite(led_R, LOW);
digitalWrite(led_G, HIGH);
digitalWrite(led_Y, HIGH);
delay(3000);
// 노랑 1초
digitalWrite(led_R, LOW);
digitalWrite(led_G, LOW);
digitalWrite(led_Y, LOW);
delay(1000);
}
- ⚠️ 회로가 반대로 동작하는 핀 주의 — 이 보드의 3번(노랑) 핀은 반대로 동작해서, HIGH를 주면 꺼지고 LOW를 주면 켜집니다. 배선/소자에 따라 이런 경우가 있으니 실제 동작을 보고 값을 조정하세요.
- 변수로 핀 관리 —
int led_R = 7;처럼 이름을 붙이면 신호등 로직이 훨씬 읽기 쉬워집니다. - delay 값을 바꾸면 각 신호의 지속 시간을 조절할 수 있습니다.
참고 — 이 보드(2번)의 꽃 LED 핀맵: D2(백색) / D3(주황) / D4(파랑) / D5(핑크) / D7(빨강) / D13(녹색).
728x90
'푸닥거리' 카테고리의 다른 글
| 아두이노 플랫폼을 활용한 코딩 기초(릴리패드)-6 (0) | 2022.04.02 |
|---|---|
| 정보보호 및 개인정보보호 관리체계(ISMS-P) (0) | 2022.04.02 |
| 아두이노 플랫폼을 활용한 코딩 기초(릴리패드)-4 (0) | 2022.04.02 |
| 아두이노 플랫폼을 활용한 코딩 기초(릴리패드)-3 (0) | 2022.04.02 |
| 아두이노 플랫폼을 활용한 코딩 기초(릴리패드)-2 (0) | 2022.04.02 |
댓글