본문 바로가기
오픈소스하드웨어/마이크로:비트

[마이크로 비트 with 파이썬] 확장보드를 이용한 버튼 사용법

by 북마크한 취미생활 2020. 4. 9.

이전 포스팅 <'[마이크로 비트 with 파이썬] 버튼 사용법', https://lunasword.tistory.com/52>에서 마이크로 비트(micro:bit)의 내장 버튼 사용방법을 알려드렸는데, 이번 포스팅에서는 확장 보드를 이용한 버튼 사용방법에 대해 알려드리도록 하겠습니다.

마이크로 비트의 내장 버튼을 사용하면 말 그래도 버튼이 보드에 달려 있어 단순히 사용만하면 됩니다. 하지만 확장 보드를 사용하게 되면 버튼을 어떤 GPIO에 연결할지를 결정하고, 연결된 GPIO에 맞는 코드를 작성을 해야 합니다.

설명만 보면 많이 어려울 것이라 생각이 드시겠지만, 원리만 이해한다면 그렇게 어려운 내용은 아닙니다. 그럼 본격적으로 확장 보드를 이용한 버튼 사용법에 대해 설명드리겠습니다.

| 예제 설명

이번에 만들 프로그램은 마이크로비트 내장 LED에 기본적으로 웃는 얼굴을 출력되고, 확장보드(GPIO)에 연결된 버튼을 누르면 LED 디스플레이에 찡그리는 표정이 나타나는 간단한 예제입니다.

▲ 예제 동작

| 회로구성

확장 보드 1번 pin에 버튼의 한쪽을 연결을 하고, 나머지 한쪽은 VCC에 연결을 합니다.

▲ 회로 구성

버튼 연결 시 주의해야 할 점은 버튼은 사진과 같이 내부에 일자로 연결되어 있습니다. 따라서 버튼을 연결할 때 연결되어 있는 pin을 연결하여 회로를 구성할 경우 정상 동작이 되지 않습니다.

▲ 버튼 내부의 연결

| 파이썬(MicroPython) 코드

from microbit import *

while True:
    if pin1.read_digital() :
        display.show(Image.SAD)
    else:
        display.show(Image.HAPPY)

read_digital( ) 함수는 pin에서 읽은 값이 1일 경우 pin에 high값인 3.3v가 들어오는 것이란 의미입니다. 0을 읽었을 경우 low 값이 0v가 들어온다는 의미입니다.

파이썬 코드를 마이크로 비트(micro:bit)에 업로드시키면 아래와 같은 동작을 보실 수 있습니다.

▲ 파이썬 코드 실행 모습

포스팅 마지막에 늘 글을 올리듯, 눈으로 보는 것과 마이크로 비트에서 직접 실행해 보는 것은 많은 차이를 가져옵니다. pin의 위치를 1번에서 3번으로 옮기고, 내장 이미지를 다른 것으로 사용하는 등 예제를 변경해 보면서 결과를 확인해 보시길 바랍니다.

긴 글 읽어 주셔서 감사합니다.

반응형

댓글