첫 Raspberry Pi Pico ㉝ Circuitpython에서 BNO055
BNO055의 주요 출력
3축 가속도계, 3축 자력계, 3축 자이로스코프 단독의 출력 이외에 오일러각이나 쿼터니온의 출력도 있습니다.
Circuitpython 역사
Pico의 I2C 대응. 리피티드 스타트는 초기부터 대응 완료. SCL 클럭 스트레치의 대응은 순차적으로 이루어지고 6.2.0-rc.0에서 fix.
6.2.0-beta.3 SCL 클럭 스트레치를 지원하지 않습니다. 대응하지 않으면 메시지가 나옵니다.
6.2.0-beta.4 SCL 클럭 스트레치를 지원하며 SDA 클럭이 사양을 충족하지 못합니다. 움직이기도 하지만 도중에 멈춘다
6.2.0-rc.0 SDA 클럭 수정
연결
Adafruit의 브레이크 아웃 보드를 이용합니다. I2C 전용 STEMMA QT 커넥터로 Pico에 연결합니다. 납땜 등은 불필요합니다.
STEMMA QT 커넥터(케이블 색상)
GPIO 핀 번호
SCL 녹색
GP21
SDA 황(흰색)
GP20
Vcc 레드
3.3V
GND 블랙
GND
프로그램
examples에 들어 있던 샘플입니다.
# SPDX-FileCopyrightText: 2021 ladyada for Adafruit Industries
# SPDX-License-Identifier: MIT
import time
import board
import busio
import adafruit_bno055
# Use these lines for I2C
i2c = busio.I2C(board.GP21, board.GP20)
sensor = adafruit_bno055.BNO055_I2C(i2c)
# User these lines for UART
# uart = busio.UART(board.TX, board.RX)
# sensor = adafruit_bno055.BNO055_UART(uart)
last_val = 0xFFFF
def temperature():
global last_val # pylint: disable=global-statement
result = sensor.temperature
if abs(result - last_val) == 128:
result = sensor.temperature
if abs(result - last_val) == 128:
return 0b00111111 & result
last_val = result
return result
while True:
print("Temperature: {} degrees C".format(sensor.temperature))
"""
print(
"Temperature: {} degrees C".format(temperature())
) # Uncomment if using a Raspberry Pi
"""
print("Accelerometer (m/s^2): {}".format(sensor.acceleration))
print("Magnetometer (microteslas): {}".format(sensor.magnetic))
print("Gyroscope (rad/sec): {}".format(sensor.gyro))
print("Euler angle: {}".format(sensor.euler))
print("Quaternion: {}".format(sensor.quaternion))
print("Linear acceleration (m/s^2): {}".format(sensor.linear_acceleration))
print("Gravity (m/s^2): {}".format(sensor.gravity))
print()
time.sleep(1)
실행 예
Reference
이 문제에 관하여(첫 Raspberry Pi Pico ㉝ Circuitpython에서 BNO055), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/jamjam/items/9c51f116edf98e09645c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)