from imu import MPU6050
from time import sleep
from machine import Pin, I2C
# Initialize I2C and MPU6050
i2c=I2C(1, sda=Pin(2), scl=Pin(3), freq=400000) # Pico
imu = MPU6050(i2c)
try:
# open or create a file for writing data
file = open("data.txt","a") # "w" to overwrite, "a" to append
except OSError:
# If file opening fails, create a new file
file = open("data.txt","w") # "w" to overwrite, "a" to append
count = 0
while True:
# Read accelerometer, gyroscope, and temperature data
ax = round(imu.accel.x,2)
ay = round(imu.accel.y,2)
az = round(imu.accel.z,2)
gx = round(imu.gyro.x)
gy = round(imu.gyro.y)
gz = round(imu.gyro.z)
tem = round(imu.temperature, )
# Print data to console
print("ax", ax, "\tay", ay,"\taz", az, "\tgx",gx, "\tgy",gy, "\tgz",gz,"\tTemperature", tem)
# Write data to file
file.write(str(count) + ","+ str(ax) + ","+ str(ay) + ","+ str(az) + ","+ str(gx) + ","+ str(gy) + ","+ str(gz) + ","+ str(tem) + "\n" )
file.flush()
count += 1
# Wait for 1 second
sleep(1)