今天找到了一个GY521小板子,上面有MPU6050芯片,包含了
陀螺仪与加速器。
运行npi-config命令检查“Advanced Options”的I2C0设置是否“enabled",
连接GY521与Neo2,
GY521*VCC —— Neo2*Pin1:
SYS_3.3V
GY521*GND —— Neo2*Pin6:
GND
GY521*SCL —— Neo2*Pin5:
I2C0_SCL
GY521*SDA —— Neo2*Pin3:
I2C0_SDA
因要在python中使用I2C接口,安装smbus2
sudo pip3 install smbus2
程序文件mpu6050_demo.py如下:
#!/usr/bin/python3
import smbus2
import time
bus = smbus2.SMBus(0)
bus.write_byte_data(0x68, 0x6b, 0)
while True:
gyro_data = bus.read_i2c_block_data(0x68, 0x43, 6)
accel_data = bus.read_i2c_block_data(0x68, 0x3b, 6)
gyro_x = ((gyro_data << 8) + gyro_data)
gyro_y = ((gyro_data << 8) + gyro_data)
gyro_z = ((gyro_data << 8) + gyro_data)
accel_x = ((accel_data << 8) + accel_data)
accel_y = ((accel_data << 8) + accel_data)
accel_z = ((accel_data << 8) + accel_data)
print('gyro: x=%05d, y=%05d, z=%05d \t\t accel: x=%05d, y=%05d, z=%05d'%(gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z))
time.sleep(1)
执行mpu6050_demo.py
sudo python3 mpu6050_demo.py
可读取到
陀螺仪与加速器的数值:
今天找到了一个GY521小板子,上面有MPU6050芯片,包含了
陀螺仪与加速器。
运行npi-config命令检查“Advanced Options”的I2C0设置是否“enabled",
连接GY521与Neo2,
GY521*VCC —— Neo2*Pin1:
SYS_3.3V
GY521*GND —— Neo2*Pin6:
GND
GY521*SCL —— Neo2*Pin5:
I2C0_SCL
GY521*SDA —— Neo2*Pin3:
I2C0_SDA
因要在python中使用I2C接口,安装smbus2
sudo pip3 install smbus2
程序文件mpu6050_demo.py如下:
#!/usr/bin/python3
import smbus2
import time
bus = smbus2.SMBus(0)
bus.write_byte_data(0x68, 0x6b, 0)
while True:
gyro_data = bus.read_i2c_block_data(0x68, 0x43, 6)
accel_data = bus.read_i2c_block_data(0x68, 0x3b, 6)
gyro_x = ((gyro_data << 8) + gyro_data)
gyro_y = ((gyro_data << 8) + gyro_data)
gyro_z = ((gyro_data << 8) + gyro_data)
accel_x = ((accel_data << 8) + accel_data)
accel_y = ((accel_data << 8) + accel_data)
accel_z = ((accel_data << 8) + accel_data)
print('gyro: x=%05d, y=%05d, z=%05d \t\t accel: x=%05d, y=%05d, z=%05d'%(gyro_x,gyro_y,gyro_z,accel_x,accel_y,accel_z))
time.sleep(1)
执行mpu6050_demo.py
sudo python3 mpu6050_demo.py
可读取到
陀螺仪与加速器的数值: