from microbit import * if compass.is_calibrated() == False: # 나침반 보정이 되지 않았다면 매번 보정을 할 수 없기 때문에 compass.calibrate() # 나침반 보정을 시작 while True: degree = compass.heading() # 북쪽을 0의 기준으로 0에서 360 범위의 정수값을 degree변수로 반환 if degree < 23: # 방위각 23도 미만이면 display.show(Image.ARROW_N) # 북쪽 화살표 표시 elif degree < 68: # 방위각 68도 미만이면 display.show(Image.ARROW_NW) # 북서쪽 화살표 표시 elif degree < 113: # 방위각 113도 미만이면 display.show(Image.ARROW_W) # 서쪽 화살표 표시 elif degree < 158: # 방위각 158도 미만이면 display.show(Image.ARROW_SW) # 남서쪽 화살표 표시 elif degree < 203: # 방위각 203도 미만이면 display.show(Image.ARROW_S) # 남쪽 화살표 표시 elif degree < 248: # 방위각 248도 미만이면 display.show(Image.ARROW_SE) # 남동쪽 화살표 표시 elif degree < 293: # 방위각 293도 미만이면 display.show(Image.ARROW_E) # 동쪽 화살표 표시 elif degree < 338: # 방위각 338도 미만이면 display.show(Image.ARROW_NE) # 북동쪽 화살표 표시 else: display.show(Image.ARROW_N) # 북쪽 화살표 표시 sleep(100) # 100밀리초(0.1초) 지연