885|2

92

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

读《RT-Thread设备驱动开发指南》---第三篇 [复制链接]

 
本帖最后由 xiaolinen 于 2023-9-17 16:41 编辑

读《RT-Thread设备驱动开发指南》---  SENSOR设备驱动开发

第一部分:了解SENSOR设备

        SENSOR设备就是我们常见的种种传感器,它的作用不言而喻,就是感知外界的各种参数,为系统运行提供数据。SENSOR设备也是I/O设备中的一种,适用I/O设备框架。本次使用到的是MPU6050传感器,其可以用来测试设备的加速度和角速度。

第二部分:SENSOR设备涉及到的函数接口

        1,查找设备

 

rt_device_t rt_device_find(const char* name);

        2,打开设备

 

rt_err_t rt_device_open(rt_device_t dev, rt_uint16_t oflags);

        3,读设备

 

rt_size_t rt_device_read(rt_device_t dev, rt_off_t pos, void* buffer, rt_size_t size);

        4,控制设备

 

rt_err_t rt_device_control(rt_device_t dev, rt_uint8_t cmd, void* arg);

        5,接收回调函数

 

rt_err_t rt_device_set_rx_indicate(rt_device_t dev, rt_err_t (*rx_ind)(rt_device_t dev,rt_size_t size));

        6,关设备

 

rt_err_t rt_device_close(rt_device_t dev);

第三部分:实验测试用的软件包以及现象

        1,软件包:mpu6xxx,该软件包依赖于RT-Thread4.00+,serson组件,IIC/SPI驱动;

        2,配置选择如下图:

                                    Enable MPU6xxx acce: 配置开启加速度计功能

                                    Enable MPU6xxx gyro: 配置开启陀螺仪功能

                                    Enable MPU6xxx mag: 配置开启磁力计功能

        3,主要函数:

                3.1初始化:

struct mpu6xxx_device *mpu6xxx_init(const char *dev_name, rt_uint8_t param)

                3.2获取加速度数据:

rt_err_t mpu6xxx_get_accel(struct mpu6xxx_device *dev, struct mpu6xxx_3axes *accel)

                3.3获取陀螺仪数据:

rt_err_t mpu6xxx_get_gyro(struct mpu6xxx_device *dev, struct mpu6xxx_3axes *gyro)

        4,实验现象打印:

accel.x = 11458, accel.y = 10464, accel.z = 4222
gyro.x = 79 gyro.y = 22, gyro.z = 13

accel.x = 11308, accel.y = 10432, accel.z = 4178
gyro.x = 79 gyro.y = 23, gyro.z = 13

accel.x = 11436, accel.y = 10520, accel.z = 4238
gyro.x = 80 gyro.y = 23, gyro.z = 15

accel.x = 11458, accel.y = 10502, accel.z = 4140
gyro.x = 79 gyro.y = 24, gyro.z = 14

accel.x = 11410, accel.y = 10398, accel.z = 4232
gyro.x = 78 gyro.y = 22, gyro.z = 14

accel.x = 11480, accel.y = 10492, accel.z = 4235
gyro.x = 79 gyro.y = 23, gyro.z = 15

 

 

最新回复

谢谢分享,期待后续!   详情 回复 发表于 2023-9-19 17:15
点赞 关注
 

回复
举报

6802

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

期待楼主更精彩的加速度和角速度的测试

 
 
 

回复

7608

帖子

2

TA的资源

五彩晶圆(高级)

板凳
 

谢谢分享,期待后续!

 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表