행복한 하루

[번역 프로젝트] Getting started with Raspberry Pi Pico (Use digital inputs and outputs) – 7 본문

RaspberryPi/Raspberry Pi Pico

[번역 프로젝트] Getting started with Raspberry Pi Pico (Use digital inputs and outputs) – 7

변화의 물결 2021. 7. 23. 14:26

 

 

안녕하세요.

 

 이번 내용은 GPIO 핀을 통한 입력과 출력을 Button과 LED를 통해 테스트해보는 것입니다.

추가로 준비할 것은 3V 혹은 5V LED 1개와 택트(Tack) 스위치 1개, 저항 1개(50Ω~330Ω), M-M 점퍼 3~4개가 필요합니다. 

 

디지털 입력과 출력 사용하기

  이제 기본 사항을 알았으므로 Raspberry Pi Pico로 외부 LED를 제어하고 버튼에서 입력을 읽는 것을 배울 수 있습니다.

 

 아래 이미지와 같이 약 50~330Ω 사이의 저항, LED와 한 쌍의 M-M 점퍼 리드를 사용하여 Raspberry Pi Pico와 연결합니다.

(추가 내용 :

 - LED마다 방향성이 있으므로 멀티 메타기로 확인하거나 육안으로 LED를 안을 볼 때 면적이 작은 쪽이 +로 볼 수 있습니다. 그러나 LED 제조사마다 다른 수 있으므로 육안으로 확인하는 것은 참조 정도만 하시면 됩니다.

 LED의 한쪽은 GND에 연결되어 있으며 다른 한쪽은 + 전원으로 LED를 제어할 수 있는 GP 15핀이 연결되어 있습니다.

 - 아래 사진은 330옴 저항이 없어서 1KΩ 저항을 사용했습니다.)

 

 

 이 예에서 LED는 핀 15에 연결되어 있습니다. 만약 다른 핀을 사용하는 경우, "Raspberry Pi Pico 만나기(Meet Raspberry Pi Pico)" 섹션의 핀 배치 다이어그램에서 번호를 찾는 것을 기억하시면 됩니다.

 

보드에 LED를 깜박이는 것과 동일한 코드를 사용하되 핀 번호를 GP 15로 변경합니다.

 

from machine import Pin, Timer
led = Pin(15, Pin.OUT)
timer = Timer()

def blink(timer):
    led.toggle()

timer.init(freq=2.5, mode=Timer.PERIODIC, callback=blink)

 

  프로그램을 실행하면 LED가 깜박이기 시작해야 합니다. 작동하지 않으면 배선을 확인하여 LED가 연결되어 있는지 확인합니다.

 

다음으로 버튼을 사용하여 LED를 제어해 보겠습니다.

 

아래 다이어그램과 같이 회로에 버튼을 추가합니다.

 

 

 (추가 내용 : 4핀 택트(Tact) 스위치를 사용할 경우, 두 개의 핀은 연결(Close) 되어 있고 다른 한쪽은 개방(Open)된 상태가 되어 있기 때문에 버튼을 누르지 않은 상태에서 스위치 핀을 멀티 테스트기로 확인 후 연결하시면 됩니다.)

 

 

 버튼은 GP 14 핀과 Raspberry Pi Pico의 3.3V 핀에 연결됩니다. 즉, 핀을 설정할 때 MicroPython에서 입력 핀이고 풀다운으로 설정하고 알리는 것이 필요합니다

 

새로운 파일을 만들어 코드를 추가합니다.

 

from machine import Pin
import time

led = Pin(15, Pin.OUT)
button = Pin(14, Pin.IN, Pin.PULL_DOWN)

while True:
    if button.value():
	    led.toggle()
        time.sleep(0.5)

 

코드를 실행한 다음 버튼을 누르면 LED가 켜지거나 꺼집니다. 버튼을 누르고 있으면 깜박입니다.

 

다음 내용은 "PWM을 이용한 LED 밝기 제어하기(Control LED brightness with PWM )"

 

감사합니다.

 

<참고 사이트>

1. Getting started with Raspberry Pi Pico (Use digital inputs and outputs)

https://projects.raspberrypi.org/en/projects/getting-started-with-the-pico/6

 

 

Comments