이제 본격적으로 MicroPython을 사용해서 GPIO제어를 해보도록 할 것입니다. 음 우선 본 포스팅을 보는 분들은 회로 연결은 기본적으로 할 수 있다고 생각하고 ~ 회로는 별도로 그리진 않도록 할 것입니다.
2023.03.20 - [메이커 이야기/ESP32] - ESP32 MicroPython 기초 문법 : Python편
ESP32 MicroPython 기초 문법 : Python편
지난 시간에 이어서 오늘은 Micropython을 사용하기 전에 알아 두면 좋을 만한 기초 문법들에 대해서 정리해보도록 하겠습니다. 파이썬을 사용해보신 분들은 참고 안하셔도 괜찮을 것 같아요! 간단
kgu0724.tistory.com

GPIO(General Purpose Input/Output)는 디지털 신호를 입력하거나 출력하는 기능을 제공하는 핀입니다. 이를 이용하여 다양한 외부 장치를 제어할 수 있습니다. GPIO는 주로 마이크로컨트롤러나 마이크로프로세서에서 사용되며, LED, 스위치, 모터, 센서 등 다양한 외부 장치와 연결하여 사용됩니다.
GPIO가 사실 아두이노나 라즈베리파이나 모든 제어에서 기본이죠.
1. GPIO 회로 연결
회로는 간단히 LED를 GPIO4번에 연결해주었습니다.
2. GPIO 코드 작성
| from machine import Pin import time #핀 번호 지정 led_red_pin = 4 # LED핀 모드 설정 red_led =Pin(led_red_pin, Pin.OUT) #LED를 깜빡이는 코드 작성 while True: red_led.value(1) time.sleep(0.5) red_led.value(0) time.sleep(0.5) |
위 코드에 대해 간단히 설명을 하자면,
| from machine import Pin |
MicroPython에서 하드웨어 기능을 사용하기 위해 machine 모듈에서 Pin 클래스를 불러옵니다. Pin 클래스는 디지털 핀을 제어하는 기능을 제공합니다.
| led_red_pin = 4 |
led_red_pin 변수에 LED 핀 번호를 할당합니다. 4번 핀은 LED가 연결된 핀입니다.
| red_led = Pin(led_red_pin, Pin.OUT) |
Pin 클래스를 사용하여 LED 핀을 초기화합니다. Pin 클래스의 첫 번째 인수로 핀 번호를, 두 번째 인수로 핀 모드를 지정합니다. 여기서는 Pin.OUT을 사용하여 LED 핀을 출력 모드로 설정합니다.
| red_led.value(1) |
LED 핀의 출력 값을 1로 설정합니다. 이는 LED를 켜는 것과 동일합니다.
| time.sleep(0.5) |
time 모듈의 sleep() 함수를 사용하여 0.5초 동안 프로그램을 일시 중지합니다. 이는 LED가 켜진 상태를 유지하는 것과 동일합니다.
| red_led.value(0) |
LED 핀의 출력 값을 0으로 설정합니다. 이는 LED를 끄는 것과 동일합니다.
| while True: |
루프를 사용하여 LED를 계속해서 깜빡이게 합니다. 따라서 이 코드를 실행하면 LED가 0.5초 간격으로 켜졌다 꺼졌다를 무한 반복하게 됩니다.
다음편에는 Button을 사용해서 LED를 제어하는 것을 한번 해보도록 하겠습니다.
2023.03.14 - [메이커 이야기/ESP32] - ESP32 MicroPython 시작하기
2023.03.16 - [메이커 이야기/ESP32] - ESP32 MicroPython 개발환경 구성하기 : Thonny
2023.03.20 - [메이커 이야기/ESP32] - ESP32 MicroPython 기초 문법 : Python편
'메이커 이야기 > ESP32' 카테고리의 다른 글
| ESP32 MicroPython ADC편 : 아날로그 센서 값 (0) | 2023.03.26 |
|---|---|
| ESP32 MicroPython GPIO제어(2) : 버튼 제어편 (0) | 2023.03.21 |
| ESP32 MicroPython 기초 문법 : Python편 (0) | 2023.03.20 |
| ESP32 MicroPython 개발환경 구성하기 : Thonny (0) | 2023.03.16 |
| ESP32 마이크로파이썬 MicroPython 시작하기 (0) | 2023.03.14 |