우분투가 설치된 라즈베리 파이에서 파이썬으로 간단하게 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
'robotics > raspberry pi' 카테고리의 다른 글
라즈베리 파이 4에 DS4 조이스틱 연결 (0) | 2021.10.24 |
---|---|
라즈베리 파이에서 카메라 사용 (Camera test on Raspberry Pi) (0) | 2021.10.19 |
라즈베리 파이 4에 Ubuntu 설치 (Install Ubuntu on a Raspberry Pi 4) (2) | 2021.10.18 |
댓글