# This is an example on how to access accelerometer on# PyBoard directly using I2C bus. As such, it's more# intended to be an I2C example, rather than accelerometer# example. For the latter, using pyb.Accel class is# much easier.from machine import Pinfrom machine import I2Cimport time# Accelerometer needs to be powered on first. Even# though signal is called "AVDD", and there's separate# "DVDD", without AVDD, it won't event talk on I2C bus.accel_pwr = Pin("MMA_AVDD")accel_pwr.value(1)i2c = I2C(1, baudrate=100000)addrs = i2c.scan()print("Scanning devices:", [hex(x) for x in addrs])if 0x4C not in addrs:print("Accelerometer is not detected")ACCEL_ADDR = 0x4CACCEL_AXIS_X_REG = 0ACCEL_MODE_REG = 7# Now activate measurementsi2c.mem_write(b"\x01", ACCEL_ADDR, ACCEL_MODE_REG)print("Try to move accelerometer and watch the values")while True:val = i2c.mem_read(1, ACCEL_ADDR, ACCEL_AXIS_X_REG)print(val[0])time.sleep(1)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。