2.2 GPIO핀 제어 | c{mpy0202} |
MicroPython 에서는 핀번호를 ESP8266모듈의 GPIO 번호를 사용한다. 아래 그림에서 보면 0, 1, 2, 3, 4, 5, 12, 13, 14, 15, 16 번이다.
이들을 제어하기 위해서는 machine 모듈의 Pin 객체를 이용해야 한다.
from machine import Pin |
위와 같이 Pin 객체의 생성자에 입력/출력 그리고 초기값 등등을 지정해 줄 수 있으며 멤버함수 high(), low() 로 출력값을 지정하거나 value()함수로 핀의 입력값을 받을 수 있다.
출력 | 입력 |
p = Pin(n, Pin.OUT) | p = Pin(n, Pin.IN)p = Pin(n, Pin.IN, Pin.PULL_UP) |
p.high() 혹은 p.value(1)p.low() 혹은 p.value(0) | p.value() |
여기서 n은 0,1,2,3,4,5,12,13,14,15,16 중 하나이다.
이와 같이 value() 멤버함수는 출력값을 지정해 줄 때도 쓰이고 입력인수가 없을 경우에는 핀의 입력값을 읽을 때도 사용된다.
단, 1번과 3번 핀은 시리얼 통신에 사용되며 16번 핀은 wakeup 기능(deepsleep 모드에서)에 사용되므로 가급적 사용하지 말아야 한다.
'하드웨어 > ESP8266' 카테고리의 다른 글
nodemcu의 pwm 기능으로 서보모터 제어하기 (0) | 2016.10.12 |
---|---|
NodeMCU를 이용한 LED의 fading 예제 (0) | 2016.10.11 |
NodeMCU보드에서 PWM파형 생성하기 (0) | 2016.10.05 |
ESP8266 외부인터럽트 (0) | 2016.10.04 |
NodeMCU에 microPython 설치하기 (0) | 2016.09.20 |