robotics/raspberry pi
파이썬으로 Raspberry Pi 4의 GPIO 제어
monotics
2021. 10. 19. 00:00
우분투가 설치된 라즈베리 파이에서 파이썬으로 간단하게 GPIO 핀을 제어하는 예제를 작성해본다.
하드웨어 구성
- GPIO17 (pin11)에 LED 연결
- GPIO18 (pin12)에 Switch 연결
파이썬 코드
우분투 공식 사이트의 예제를 따라 해 보려고 하였으나 'lgpio' 모듈이 설치가 되지 않아 'RPi.GPIO' 모듈을 사용하는 방식으로 파이썬 코드를 작성하였다. 예제는 1초 간격으로 LED가 켜지고 끄지는 블링크 동작을 하며 매 2초마다 스위치의 상태를 화면에 출력한다.
import time
import RPi.GPIO as GPIO
LED = 17
SWITCH = 18
# open the gpio chip
GPIO.setmode(GPIO.BCM)
# set the LED pin as output
GPIO.setup(LED, GPIO.OUT)
# set the Switch pin as input
GPIO.setup(SWITCH, GPIO.IN)
try:
while True:
# Turn the GPIO pin on
GPIO.output(LED, GPIO.HIGH)
time.sleep(1)
# Turn the GPIO pin off
GPIO.output(LED, GPIO.LOW)
time.sleep(1)
# Read the GPIO pin status
print('Switch status = ', GPIO.input(SWITCH))
except KeyboardInterrupt:
GPIO.cleanup()
참고사이트
https://ubuntu.com/tutorials/gpio-on-raspberry-pi#3-basic-gpio-example
https://www.ics.com/blog/control-raspberry-pi-gpio-pins-python