<head>
  <meta charset="UTF-8" />
  <title> 마이크로파이썬 기초 문법 및 ESP32 하드웨어 제어 완벽 정리 | 양파고 </title>
  <meta
    name="description"   content="마이크로파이썬(MicroPython)으로 하드웨어를 제어하는 핵심 문법을 정리함. Pin 설정, ADC, PWM부터 타이머 비동기 처리까지, 실제 작동하는 ESP32 예제 코드로 하드웨어 코딩 기초를 빠르게 마스터할 수 있음."   />
  <meta name="keywords" content="마이크로파이썬 기초, MicroPython 문법, ESP32 파이썬 코딩, machine 모듈 사용법, 하드웨어 제어 기초, 아두이노 파이썬, 양파고, Yang Phago, 노션, 양파고 노션, notion" />

  <meta   property="og:title"   content="마이크로파이썬 기초 문법 및 ESP32 하드웨어 제어 완벽 정리"  />
  <meta  property="og:description" content="파이썬으로 아두이노(ESP32)를 제어하고 싶다면? 꼭 알아야 할 핵심 모듈 사용법과 실습 코드를 지금 바로 확인해보셈., 양파고, Yang Phago, 노션, 양파고 노션"  />
  <meta property="og:image" content="<https://oopy.lazyrockets.com/api/v2/notion/image?src=attachment%3A2cc67702-5549-4c33-9739-05cd507efb87%3Aimage.png&blockId=2df62b09-b72b-8014-8bc4-e7ae8a5fb8fd>" />
  <meta property="og:url" content="<https://yangphago.oopy.io/2df62b09-b72b-8010-9a70-edf7833b7561>" />
  <meta property="og:type" content="website" />
</head>

<aside> 💡 핀맵과 함께 보는 것을 추천

</aside>


image.png

🐍 micro 파이썬 기초 핵심 요약

1. 하드웨어 제어 (machine 모듈)

하드웨어 제어의 가장 기본이 되는 핀 설정과 입출력 함수를 모아 놓은 모듈

1-1.디지털 입출력 (Pin)함수

📌LED를 켜거나 버튼 입력을 받을 때 사용

from machine import Pin

led = Pin(2, Pin.OUT)   # 2번 핀을 출력으로 설정 (내장 LED)
button = Pin(33, Pin.IN) # 33번 핀을 입력으로 설정

# 출력 제어 (1: 켜짐/High, 0: 꺼짐/Low)
led.value(1)  # LED 켜기
led.value(0)  # LED 끄기

# 입력 값 읽기
status = button.value() # 버튼 상태 읽기 (눌리면 1, 안 눌리면 0 등)

참고: led.on() 또는 led.off() 함수도 사용가능

1-2.아날로그 입력 (ADC)

🎛️조도 센서, 가변 저항 등 연속적인 값을 읽을 때 사용

from machine import ADC, Pin

# ADC 객체 생성 (GPIO 32~39번 권장)
pot = ADC(Pin(34))

# 전압 감쇠 설정 (3.3V 입력을 받으려면 필수!)
# ATTN_11DB: 0V ~ 3.3V 범위 측정
pot.atten(ADC.ATTN_11DB)

# 해상도 설정 (기본 12bit: 0 ~ 4095)
pot.width(ADC.WIDTH_12BIT)

# 값 읽기
val = pot.read()  # 0 ~ 4095 사이의 정수 값 반환

주의: 와이파이 사용 시 ADC2 핀(GPIO 0, 2, 4, 12-15, 25-27)은 사용할 수 없으므로 ADC1 핀(32-39)을 사용