버튼으로 LED 제어하기¶
🎯 이 장에서 배우는 것¶
- [ ] 버튼을 누르면 LED가 켜지는 프로그램을 만들 수 있다
- [ ] if-else 조건문의 기본 구조를 이해한다
⏱️ 예상 학습 시간: 약 15분
📚 핵심 개념¶
개념: 조건문 (if-else)¶
비유로 시작해요!
"만약 비가 오면 우산을 쓰고, 아니면 그냥 나간다"
이것이 바로 조건문이에요! 상황에 따라 다르게 행동하는 거죠.
flowchart LR
A[버튼 눌림?] -->|Yes| B[LED 켜기 💡]
A -->|No| C[LED 끄기 ⚫]
파이썬 기본 구조:
if 조건:
# 조건이 참이면 실행
else:
# 조건이 거짓이면 실행
🔨 따라하기¶
Step 1: 회로 연결¶
버튼 한쪽을 GP15, 다른 쪽을 GND에 연결하세요.
💡 내장 LED(GP25)를 사용하니 LED 연결은 필요 없어요!
Step 2: 코드 작성¶
from machine import Pin
import time
led = Pin(25, Pin.OUT) # 내장 LED
button = Pin(15, Pin.IN, Pin.PULL_UP) # 버튼
while True:
if button.value() == 0: # 버튼 눌림
led.on()
else: # 버튼 안 눌림
led.off()
time.sleep(0.1)
실행 결과:
버튼 누름 → LED 켜짐 💡
버튼 뗌 → LED 꺼짐 ⚫
📝 전체 코드¶
from machine import Pin
import time
led = Pin(25, Pin.OUT)
button = Pin(15, Pin.IN, Pin.PULL_UP)
while True:
if button.value() == 0:
led.on()
else:
led.off()
time.sleep(0.1)
⚠️ 주의할 점¶
button.value() == 0이 눌린 상태예요 (PULL_UP 방식)=(대입)과==(비교)를 헷갈리지 마세요!
✅ 점검하기¶
- if 다음에 반드시 써야 하는 기호는?
정답 확인
콜론(:)입니다- 버튼이 눌렸을 때 value()는 몇을 반환하나요?
정답 확인
0입니다 (PULL_UP 방식)🔗 다음 장 미리보기¶
버튼을 누를 때마다 LED가 토글(켜짐↔꺼짐)되는 프로그램을 만들어볼 거예요! 🎛️