마이크로:비트의 파이썬 라이브러리 구조가 한 눈에 보이는 게 없어서 여기에 정리해 보고자 한다. (공식문서를 참조했다.)
모듈의 이름은 microbit 이다. 따라서 아래와 같은 함수나 클래스를 사용하려면
from microbit import * |
명령으로 모두 로드하던가, 아니면 개별적으로 로드해서 사용하면 된다.
① 시스템관련
reset() 함수 : 보드를 리셋한다
panic(n) 함수 : 패닉모드(panic mode)로 들어간다. (보드는 재시작되어야 함)
② 시간 관련
sleep(ms) : 밀리초만큼 (아무 일도 않고) 기다린다.
running_time() : 보드가 (재)가동된 시간을 밀리초로 반환한다.
(외부모듈로는 utime이 있다. 외부모듈이므로 별도로 import 해야함)
③ 시각적인 표시 관련
display.show(image) 메서드
display.scroll(string) 메서드
display.get_pixel(x, y)
display.set_pixel(x, y, value) : value 는 [0, 9]범위의 정수로 밝기를 설정함
display.clear()
display.on()
display.off()
display.is_on()
display.read_light_level(val)
④ 버튼 관련
미리 정의된 button_a, button_b 객체를 사용함
button_a.is_pressed() : 현재 눌려졌으면 True 반환
button_a.was_pressed() : 이 함수가 마지막으로 호출된 이후 눌려진 적이 있다면 True반환 하고 상태는 리셋됨
button_a.get_pressed() : 총 몇 번 눌렸는지를 반환(그리고 횟수는 0으로 리셋됨)
※ button_b에 대해서도 동일한 메서드를 사용 가능
④ 핀관련
pin0, pin1, pin2, ... oin16, pin19, pin20 (pin17과 pin18은 사용불가)
(pin5는 button_A, pin11은 button_b에 사용)
pin_logo (V2에 추가)
pin_speaker (V2에 추가)
pinN.read_digital()
pinN.write_digital(val) : val이 1이면 HIGH, 0이면 LOW
pinN.read_analog() : 0(0V)~1023(3.3V)사이의 정수 반환, (pin3, pin4, pin10 만 가능)
pinN.write_analog(val) : PWM출력 val은 0(0%듀티)~1023(100%듀티) 사이의 정수
pinN.analog_period(ms) : PWM주기 설정(최소갑은 1ms)
pinN.analog_period_microseconds(us) : PWM주기 설정(최소갑은 256 us)
※ 아날로그 입출력은 pin0, pin1, pin2 만 (내부LED를 안 쓸때는 pin3, pin4, pin10 까지) 가능
pinN.is_touched() : 터치되었다면 True 반환
pinN.set_touch_mode(val) : val은 pinN.CAPACITIVE 혹은 pinN,RESISTIVE
※ 터치 기능은 pin0, pin1, pin2 에만 (V2에는 pin_logo 에도) 있음
⑤ 소리관련
audio.play()
audio.is_playing()
audio.stop()
⑥ 가속도계 관련
accelerometer.get_x()
accelerometer.get_y()
accelerometer.get_z()
accelerometer.get_values()
accelerometer.current_gesture()
⑦ 나침판(compass) 관련
compass.calibrate()
compass.clear_calibration()
compass.get_field_strength()
compass.get_x()
compass.get_y()
compass.get_z()
compass.hearing()
⑧ 내장 마이크 (V2)
microphone
⑨ 내장 스피커 (V2)
speaker.on()
speaker.off()
speaker.is_on()
⑩ 기타: Bluetooth SPI, UART I2C 등은 생략
'하드웨어 > micro:bit' 카테고리의 다른 글
마이크로비트 V2 (0) | 2021.01.14 |
---|---|
마이크로비트(micro:bit) 첫 코딩 (0) | 2021.01.13 |