라즈베리파이 Pico

내장LED 점등 소등 시키기

Developer성현 2023. 5. 6. 15:15

라즈베리파이 피코에도 아두이노처럼 내장 LED가 있습니다. 아두이노는 13번에 LED가 연결되어 있지만

라즈베리파이 피코는 GPIO25번 핀에 연결되어 있습니다. 히지만

피코 보드는 GPIO25번 핀이 물리적으로 나와있지 않고 내부에서 LED와 직접 연결되어 있기 때문에 LED 말고는 다른 걸 제어할 수 없습니다. 그냥 테스트용 핀이라고 생각해야 할 거 같습니다.

 

import machine
import utime
# GPIO 25 핀을 출력 모드로 설정
led = machine.Pin(25, machine.Pin.OUT)
# 무한 루프에서 0.5초마다 LED를 토글합니다.
while True:
    led.toggle()
    utime.sleep(0.5)

코드를 간단하게 설명드리면 가장먼저 하드웨어를 제어하기 위해 machine 라는 라이브러리를 import 합니다.

그리고 시간과 관련된 함수를 사용할것이기 때문에 utime 라이브러리도 import 해야 합니다.

 

다음으로 led 라는 변수를 만들고 동시에 machine.Pin이라는 함수를 사용하여 25번GPIO를 출력핀으로 설정하고 변수에 넣습니다. 그리고 계속 반복을 시켜야 하기 때문에 while문을 사용하여 조건을 항상 참으로 하여 계속 반복할 수 있게 만들어 주고 내부에 led변수에 toggle함수를 사용하여 해당핀의 상태의 반대를 만들어줍니다. 즉 1이면 0으로 0이면 1로 만들어 주게 됩니다. 그리고 utime.sleep 함수로 피코보드를 0.5초 동안 기다리게 합니다.

 

아두이노와 비교하면machine.Pin은 PinMode 이고 utime.sleep가 delay 함수라고 보시면 됩니다.