当前位置: 首页 > article >正文

正点原子阿波罗STM32F429IGT6移植zephyr rtos(二)---使用I2C驱动MPU6050

硬件平台:正点原子阿波罗STM32F429IGT6

zephyr版本:Zephyr version 3.7.99 

开发环境:ubuntu 24.4

 zephyr驱动开发与之前接触到的开发方式可能都不一样,更像是linux驱动开发,zephyr源码里边其实已经有写好的I2C和MPU6050的驱动,我们要做的就是向设备树追加一些内容,和修改一下.yaml文件。

首先找到zephyr/samples/sensor/mpu6050文件夹

在board里边创建一个stm32f429i_alientek.overlay文件

文件内容:

/*
 * Copyright (c) 2019 Nordic Semiconductor ASA
 *
 * SPDX-License-Identifier: Apache-2.0
 */

&i2c1 {
	mpu6050@68 {
		compatible = "invensense,mpu6050";
		reg = <0x68>;
		status = "okay";
		int-gpios = <&gpioa 15 GPIO_ACTIVE_LOW>;
	};
};

可以看到内容很简单,向tm32f429i_alientek.dts设备树文件的I2C1节点追加一个MPU6050子节点,compatible 属性为"invensense,mpu6050",设备地址为0X68,状态为启用,中断引脚为PA15,低电平。

然后修改sample.yaml文件

文件内容:

#
# Copyright (c) 2019 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: Apache-2.0
#

sample:
  name: MPU6050 Sensor Sample
tests:
  sample.sensor.mpu6050:
    build_only: true
    platform_allow: nrf52dk/nrf52832 stm32f429i_alientek
    tags: sensors
    integration_platforms:
      - nrf52dk/nrf52832 stm32f429i_alientek

只是在platform_allow和integration_platforms后边加上了我们的板子。

然后就大功告成了

编译:

west build -p always -b stm32f429i_alientek samples/sensor/mpu6050

编译成功:

打开串口:

sudo minicom -D /dev/ttyUSB0 -b 115200

下载程序:

west flash

现象:


http://www.kler.cn/news/326224.html

相关文章:

  • 使用apipost工具导入通过swag生成的golang接口文档步骤
  • 思科安全网络解决方案
  • FIOT/浙江信达可恩消防股份有限公司25周年庆典隆重召开
  • 【JavaEE初阶】网络原理
  • 大盘点|9月独家爆款SVG模版(互斥伸长、扑克出牌、预感应滑动等)
  • 【C#生态园】构建高效PDF应用:全面解析C#六大PDF生成库
  • Linux date命令(用于显示和设置系统的日期和时间,不仅可以显示时间,还能进行复杂的时间计算和格式化)
  • 苍穹外卖学习笔记(十四)
  • 【JavaEE】——CAS指令和ABA问题
  • 【Android】获取备案所需的公钥以及签名MD5值
  • Mybatis中遍历List内容进行动态SQL拼接
  • LeetCode 461. 汉明距离
  • 实战OpenCV之图像滤波
  • 记录一次排查sql server 服务调用异常的问题
  • 1.2.1 HuggingFists安装说明-Linux安装
  • Tableau|一入门
  • k8s基于nfs创建storageClass
  • C#名片识别接口集成方式、文字识别API
  • 电脑剪切的文件粘贴时丢失的高效恢复策略
  • 如何创建虚拟环境并实现目标检测及验证能否GPU加速
  • Visual Studio Code下载安装及汉化
  • 最后加推!高新CID这个项目为什么频频破圈爆火
  • HAproxy,nginx实现七层负载均衡
  • [c++高阶]模版进阶
  • Golang | Leetcode Golang题解之第440题字典序的第K小数字
  • RabbitMQ的高级特性-消息确认机制
  • http请求过程 part-2
  • 【C++前缀和 动态规划 博弈】1140. 石子游戏 II|2034
  • 【已解决】Koa 异步问题导致响应信息不能正确输出,始终为 Not Found
  • redis和mysql端口修改