Micropython——九轴传感器(MPU6050)的使用及算法(三)

2023-05-16

简介:

上篇文章中,关于九轴传感器(MPU6050),学习其如何对其生成的数据偏移进行校准,这节课我们来将其中的一个问题来进行解决。关于MPU6050地址问题,我们如何学习并判断是否是MPU6050


1、看其MPU6050的数据手册,发现下面这段文字

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2JhaWR1XzM5NjAzMjQ3,size_16,color_FFFFFF,t_70#pic_center

能够发现参数WHO_AM_I 是包含了MPU6050的6为I2C地址的,而其I2C地址是储存在0x75寄存器中。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAWGFfTA==,size_20,color_FFFFFF,t_70,g_se,x_16

图一:MPU6050实物图

 

对于MPU6050来说,I2C地址是判断AD0是悬空还是接VCC。接VCC时,地址是0X69,悬空或者接地时,地址是0X68。


代码程序:

# @Time    : 2022.4.20
# @Author  : Xa_L
# @FileName: I2C_MPU6050.py

from  machine  import I2C,Pin
#初始化I2C通道1 ,使用GPIO6和GPIO7 分别作为SDA 和SCL 引脚,频率为10KHZ
i2c = I2C(id = 1 ,scl = Pin(7) ,sda = Pin(6), freq = 1000000)
#扫描I2C总线下所有设备地址,并返回对应的列表
addr_list = i2c.scan()
print(addr_list)
print(addr_list[0])
if len(addr_list) == 1:
    #尝试读取该设备的0x75寄存器
    who = i2c.readfrom_mem(addr_list[0],0x75,1)
    print(who[0])
    #如果读取数值为0x68
    if  who[0] == 0x68:
        print("Just a MPU6050  connected")
    else:
        print("Have a device connected but it is not MPU6050")
elif  len(addr_list) == 0:
        print("Nothing connected")
else:
        print("More than one device is conneted ")

运行结果:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAWGFfTA==,size_20,color_FFFFFF,t_70,g_se,x_16

 这里我只写了连接的地址为0x68,读者可以自行重写程序看是否为其他设备。

也许有的读者会问为什么是104,不是0x68,其实这是因为十进制和十六进制的关系,所以这里对于进制不做讲解,可以去其他地方仔细进行了解。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAWGFfTA==,size_20,color_FFFFFF,t_70,g_se,x_16

技术交流
欢迎转载、收藏、有所收获点赞支持一下!

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAWGFfTA==,size_20,color_FFFFFF,t_70,g_se,x_16

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Micropython——九轴传感器(MPU6050)的使用及算法(三) 的相关文章

  • MAG02 IMU传感器模块替代MPU6050模块介绍

    MAG02模块内置TDK高精度6轴IMU 惯性测量单元 xff09 传感器芯片 xff0c 通过处理器读取传感器数据 xff0c 并经过内部复杂运算后通过串口输出加速度 xff0c 角速度 xff0c 角度等数据 xff0c 大大减轻了用户
  • MPU6050 简介

    目录 关于MPU6050芯片 关于小板 关于厂家和DATASHEET 关于漂移 关于角加速度还是角速度 关于精度和量程 xff08 可调 xff0c 可选 xff09 关于功耗 xff0c 陀螺仪 43 加速器工作电流 xff1a 3 8m
  • micropython oled中文_micropython esp8266+ssd1306(OLED) 显示中文(示例)

    1 Adafruit SSD1306 连接示例 库使用示例 gt gt gt from machine import Pin I2C gt gt gt i2c 61 I2C scl 61 Pin 5 sda 61 Pin 4 gt gt g
  • MPU6050 - 陀螺仪 - 技术总结

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • stm32使用MPU6050读取温度值验证I2C

    通过MPU6050测温来进行I2C的验证学习 关于MPU6050寄存器相关可以参考https blog csdn net he yuan article details 76559569 I2C时序很多 xff0c 我是直接以原子I2C的程
  • MPU6050

    1 个人总结 常用的MPU6050有八个针脚 xff0c VCC 跟GND 给模块供电 xff0c 模块通讯方式采用IIC通讯 xff0c SCL跟SDA为信号传递通道 xff0c XDA 跟 XCl是用来外接电磁传感器 xff0c 玩过M
  • Micropython——九轴传感器(MPU6050)的使用及算法(二)

    前言 xff1a 在上篇文章中 xff0c 简单地实现了九轴传感器 xff08 MPU6050 xff09 的获取加速度 角速度以及温度的数值 但是 xff0c 我们知道 xff0c 对于MPU6050来说 xff0c 其提供的数据会夹杂有
  • 【雕爷学编程】MicroPython手册之 WiPy 特定端口库 wipy.machine.I2C.stop()

    MicroPython是为了在嵌入式系统中运行Python 3编程语言而设计的轻量级版本解释器 与常规Python相比 MicroPython解释器体积小 仅100KB左右 通过编译成二进制Executable文件运行 执行效率较高 它使用
  • Micropython加速物联网开发4 - SPI驱动5110LCD屏

    5110是84 48点阵LCD屏 其性价比高 接口简单 速度快 功耗低 非常适合电池供电的便携式终端设备 本例使用TPYBoard开发板SPI1接口驱动5110LCD屏 连线图即接口说明 LCD驱动程序 5110LCD的通信协议是一个没有M
  • 【STM32】I2C练习,HAL库读取MPU6050角度陀螺仪

    I2C练习 MPU6050简介 寄存器查询表格 STM32CubeMx配置 代码文件 mpu6050 h文件 mpu6050 c文件 main c文件 总结 MPU6050简介 MPU 6000 6050 为全球首例整合性6轴运动处理组件
  • 如何捕获micropython 报错的详细信息 行数 具体错误内容等

    电脑端 可以用traceback来找 mpy没有这个模块 咋办 自己搞啊 翻WIKI 有个sys print exception函数 然后简单包装一下 完事儿 从不废话 都是干货 import io import sys class ERR
  • OpenMV IDE通信协议分析

    OpenMV IDE通信协议分析 OpenMV IDE 通过usb cdc模式连接板端 也就是usb上虚拟了一个串口 基于串口实现了一套指令应答的交互协议 早期基于stm32 usb口实现 目前openmv适配扩展到多芯片上ide dbg调
  • 1024 程序员节:低代码低成本硬件 - 树莓派 Pico 2040

    恰逢 1024 程序员节 程序员们忙着开交流会 或者写代码 来庆祝节日 或者随便写点什么 留下自己的足迹 CSDN 组织了好几个线下 线上的会 大家也在讨论开源 开放 小米的崔总 引用了 论语 里的一句话 德不孤 必有邻 来评价正确的开源之
  • C语言开发MicroPython模块(添加module)

    MicroPython添加模块框架模式相对简单 只需要按照定义好的固定框架就可以添加模块 module 一 向固件里面添加module 1 1 编写mymodule c文件 在ports esp32文件夹下新建一个文件mymodule c
  • 使用MicroPython制作红绿灯模拟器

    我们将使用行人步行按钮实现交通信号灯 该项目与LED配合使用 这使我们能够在代码执行时看到其状态 对于交通信号灯 也称为刹车灯 我们将使用红色 黄色和绿色的LED来匹配交通信号灯上的相同颜色的灯 我们还将使用红色和黄色的LED来表示 请勿行
  • ESP32/ESP8266使用MicroPython控制DHT11/DHT22

    本教程介绍了如何使用MicroPython固件将DHT11或DHT22温度和湿度传感器与ESP32和ESP8266开发板一起使用 DHT模块 刷新MicroPython固件 要遵循本教程 您需要在ESP32或ESP8266板上安装Micro
  • Mini AHRS 姿态解算说明

    本文旨在讲解以下内容 1 加速度 2 陀螺仪 3 磁力计 0 序言 一直想写篇文章关于姿态解算原理的 使用尽量通俗的语句说明如何从加速度计和陀螺仪的数据 融合得到载体的姿态角 无奈自己的水平有限 一直搁置 淡泊以明志 宁静以致远 人总是要逼
  • Micropython驱动ST7735显示中文(中文字体库)

    大家是不是遇到显示中文就头大了 又是取模又是怎么的 但麻烦 太繁琐了 对确定的字符显示来说还可以 但不确定的内容时就麻烦了 所以 今天还是来讲讲干货了 来使用一个方便的方式来显示中文 不用取模 直接显示你想要的中英文字体 开始之前要说一下的
  • 使用MicroPython开发ESP32(02):库介绍

    文章目录 目的 库基础说明 库列表 Python基础库 嵌入式设备相关库 ESP32特有库 总结 目的 对于Python来说丰富的库是其使用快速简易的关键 这点对于MicroPython也一样 这篇文章就对MicroPython的库做个罗列
  • 如何在 Mac OS X 上安装 libffi-dev

    我正在尝试在unix上实现micropython 这需要libffi dev 我是这样安装的brew install libffi dev 但好像没有找到libffi dev 有什么方法可以安装吗libffi dev在 Mac 操作系统上

随机推荐

  • Ubuntu 14.04 配置iptables防火墙

    Ubuntu默认安装是没有开启任何防火墙的 xff0c 为了学习redis数据库 xff0c 需要启用防火墙设置 whereis iptables 查看系统是否安装防火墙可以看到 iptables sbin iptables usr sha
  • Qt显示汉字乱码问题

    转载自http blog csdn net u012790503 article details 52485263 测试1 新建test工程用于测试 xff0c main c文件内容如下 xff1a span class hljs prep
  • Anaconda使用总结

    原文地址 xff1a https www jianshu com p 2f3be7781451 序 Python易用 xff0c 但用好却不易 xff0c 其中比较头疼的就是包管理和Python不同版本的问题 xff0c 特别是当你使用Wi
  • A*寻路算法介绍

    你是否在做一款游戏的时候想创造一些怪兽或者游戏主角 xff0c 让它们移动到特定的位置 xff0c 避开墙壁和障碍物呢 xff1f 如果是的话 xff0c 请看这篇教程 xff0c 我们会展示如何使用A星寻路算法来实现它 xff01 在网上
  • RTK固定解什么意思

    RTK固定解什么意思 金丝大环刀的回答 知乎 RTK固定解什么意思 知乎 rtk固定解一般是指载波相位窄巷整周模糊度已经固定之后的解算结果 narrow int xff0c 精度可达厘米级至毫米级 除此之外 xff0c 还有宽巷解 xff0
  • QtCreate由MinGW编译的项目,换为MSVC编译器后编译无法通过

    解决方法 xff1a 1 将文件的编码格式设置为utf 8且BOM格式 xff1b 2 在 pro文件中添加如下代码 msvc QMAKE CFLAGS 43 61 utf 8 QMAKE CXXFLAGS 43 61 utf 8 其中方法
  • 2D nav goal 后小车不能沿着路径走

    2D nav goal 后小车不能沿着路径走 解决方法 xff1a 下载turtlebot3的代码 xff0c 编译 xff0c 把原来的模型改成turtlebot3的 真正的错因 xff1a xacro在melodic版本上的inorde
  • vscode配置header指令添加头部注释或KoroFileHeader自动添加头部解释

    1 xff08 1 xff09 新建Python文件输入header添加头部注释 vscode gt file gt Perferences gt User Snippets gt python 也可选其他语言 xff1a 则会生成pyth
  • Android Okhttp工具类的封装(okhttpUtils)

    Android Okhttp工具类 Android Okhttp工具类的封装 xff08 okhttpUtils xff09 近期的项目频繁使用到了网络交互 xff0c 采用的是第三方类库okhttp 以下是我对okhttp主要使用到的方法
  • 通过requests登录店小秘解决验证码问题

    登录常用手段就是 request post请求 selenium等自动化工具 这里讲一下使用requests实现自动登录 网站 现在网站登录基本上都有验证码 xff0c requests登录的难点在于将验证码与账号联系起来 xff0c 这里
  • 关于ubuntu18系统~/.bashrc文件中ros环境无法生效问题

    项目场景 xff1a ubuntu18 43 melodic 问题描述 xff1a 这几天一直遇到一个问题 xff0c 就是ubuntu18中ros的环境问题 xff0c 最开始的时候是一直用到好好的ros系统 xff0c 突然说无法识别r
  • 关于move_base无法加载的问题[move_base-11] process has died

    项目场景 xff1a kinetic下使用move base进行导航 问题描述 xff1a 之前move base使用的好好的 xff0c 结果突然之间不能用了 xff0c 出现move base功能包无法加载的情况 报错如下 xff1a
  • Jetson Nano利用普通引脚进行PWM波输出

    这篇博客我就简单介绍一下好了 xff0c 不深入讲了 需要注意的是 xff0c 我这里用到了ROS xff0c 所以运行之前需要安装ROS 初始化中有一个12和50 xff0c 分别代表频率 xff0c 完之后他就会让pin12自动输出50
  • Git基础 - git tag 一文真正的搞懂git标签的使用

    1 什么是tag 1 1 tag的简单理解 tag 中文我们可以称它为 标签 简单的理解 xff0c tag 就是 对某次 commit 的一个标识 xff0c 相当于起了一个别名 例如 xff0c 在项目发布某个版本的时候 xff0c 针
  • C++学习笔记十六:使用OpenCv(c++)调用yolo模型实现目标检测

    一 前言 因为之前都是直接使用python编程来实现目标检测 xff0c 而且是直接使用模型 于是就想了解一下使用c 43 43 语言如何进行目标检测 xff0c 也能帮助自己更好的熟悉c 43 43 的语法 简单起见 xff0c 使用op
  • requests python

    requests是模拟客户端向服务端发送http请求的模块 可以方便的对网页进行爬取 xff0c 是学习python爬虫的较好的http请求模块 1 安装 pip install requests 2 使用方法 方法解释requests r
  • QGraphicsView加入到布局,所在的窗口变大,视图和场景都变大,使场景中的矩形也变大

    需求 窗口变化时 xff0c 窗口中的矩形框也变化 效果展示 当窗口变大时其矩形框也变大 要求绿色矩形框与蓝色背景的边距始终为10 代码 直接上项目的代码 项目结构 各文件的代码 main cpp span class token macr
  • TX2通过串口或CAN和其他设备通信(一)--- 串口通信

    TX2通过串口或CAN和其他设备通信 xff08 一 xff09 串口通信 背景介绍 Jetson TX2是NVIDIA推出的一款嵌入式开发平台 xff0c TX2所提供的性能为早前版本的两倍 xff0c 即能够以两倍以上的功效运行 xff
  • Micropython——九轴传感器(MPU6050)的使用及算法(二)

    前言 xff1a 在上篇文章中 xff0c 简单地实现了九轴传感器 xff08 MPU6050 xff09 的获取加速度 角速度以及温度的数值 但是 xff0c 我们知道 xff0c 对于MPU6050来说 xff0c 其提供的数据会夹杂有
  • Micropython——九轴传感器(MPU6050)的使用及算法(三)

    简介 xff1a 上篇文章中 xff0c 关于九轴传感器 xff08 MPU6050 xff09 xff0c 学习其如何对其生成的数据偏移进行校准 xff0c 这节课我们来将其中的一个问题来进行解决 关于MPU6050地址问题 xff0c