动手写一个i2c设备驱动(7)

通过上面的驱动, 我们可以在应用层操作设备文件从mpu6050寄存器中读取原始数据, 应用层如下

int main(int argc, char * const argv[]) { int fd = open(argv[1],O_RDWR); if(-1== fd){ perror("open"); return -1; } union mpu6050_data data = {{0}}; while(1){ ioctl(fd,GET_ACCEL,&data); printf("acc:x %d, y:%d, z:%d\n",data.accel.x,data.accel.y,data.accel.z); ioctl(fd,GET_GYRO,&data); printf("gyro:x %d, y:%d, z:%d\n",data.gyro.x,data.gyro.y,data.gyro.z); ioctl(fd,GET_TEMP,&data); printf("temp: %d\n",data.temp); sleep(1); } return 0; }

最终可以获取传感器的原始数据如下

动手写一个i2c设备驱动

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/95a26e3a7df27d38ce2c2e697be33148.html