1、摘要

一款新的控制板卡在第一次使用时,都需要进行硬件功能的测试,以确保所有的硬件都能够正常工作后,才可以进入后续的软件编程阶段,ESP-Drone四旋翼无人机的控制板使用了mpu6050陀螺仪芯片作为惯性导航的传感器芯片,其可以用来测量无人机X、Y、Z方向的偏转角度和加速度信息,从而确定无人机的姿态,从而为控制系统提供控制无人机飞行的决策数据,mpu6050使用I2C总线与主控芯片进行通信,因此首先要做的工作就是测试主控芯片是否能够通过I2C总线来读取mpu6050芯片中的数据。

2、I2C总线测试过程记录

第1步,启动Eclipse集成编程环境。

第2步,基于ESP-IDF模版创建一个基于I2C的软件工程。

如图2-1所示,点击”File->Project”菜单进入软件工程创建界面。

如图2-2所示,点击“Espressif IDF Project”菜单,然后点击“Finish”进入下一步。

如图2-3所示,输入一个软件工程的名称,然后点击“Finish”进入下一步,如果在后续的步骤中选择基于软件模板方式创建软件工程的话,在这里输入的名称会被模板中的软件工程名称所替换。

如图2-4所示,勾选模板创建工程方式选项,找到“i2c_simple”软件工程模板,然后点击”Finish“进入下一步。

如图2-5所示,为创建好的软件工程,设置当前板卡所使用的处理器类型为esp32s2。

如图2-6所示,准备修改一下软件工程的名称,移动光标至击侧的软件工程管理界面的软件工程名称位置,点击鼠标右键弹开软件工程属性修改界面,然后点击”Rename“菜单进入软件工程名称修改界面。

如图2-7所示,输入新的软件工程名称,然后点击“OK“返回。

如图2-8所示,软件工程名称修改完成,本次修改非必需要做,也可以不做修改。

如图2-9所示,用上述步骤同样的方法将”main”目录下的文件“i2c_simple_main.c”改为”i2c_mpu6050_main.c”,当然也可以不做修改,本次修改的目的主要是为了区别软件工程的作用。

如图2-10所示,打开“main”目录下的”CmakeList.txt”文件,修改一下主函数文件的文件名为“i2c_mpu6050_main.c”,如果不做修改,后续编译会报错。

第3步,编译软件工程。

如图3-1所示,输入“Ctrl+B”快捷键进行软件工程编译。

如图3-2所示,等待几分种,软件工程编译完成。

第4步,配置I2C总线。

如图4-1所示,从原理图种获取mpu6050处理器所使用的I2C总线端口信息。

如图4-2所示,打开“sdkconfig”文件,配置号I2C端口所使用的GPIO端口号。

第5步,重新编译软件工程。

如图5-1所示,再次输入“Ctrl+B”快捷键,等待一会儿,软件工程编译完成。

第6步,下载代码运行测试。

如图6-1所示,代码下载完成。

第7步,利用Eclipse中的串口监视窗口查看软件运行结果。

如图7-1所示,点击“Window->Show->Termianl”菜单调出终端显示界面工具栏。

如图7-2所示,在调试Eclipse主窗口的下部出现了“Terminal”栏目项。

如图7-4所示,设置好软件工程名称和当前所使用的串口号,然后点击“OK“进入下一步。

如图7-4所示,稍等片刻后,串口出现程序运行的Log信息。

碰巧的是该软件工程原来是针对mpu9250陀螺仪芯片而设计,而mpu9250正好是由mpu6050和另外一颗磁力计芯片组合封装而成,所示针对可以将此软件工程作为直接控制mpu6050的软件工程来使用,只要配置好I2C总线即可。

如图7-4所示,已经正确读到了芯片的ID信息16进制数68。

至此,esp32s2芯片针对mpu6050的i2c总线驱动配置成功,并且验证了硬件板卡上的mpu6050芯片已经正常工作,可以进行下一步的软件调试了。

ESP-Drone四旋翼无人机控制板上的MPU6050陀螺仪芯片I2C总线测试相关推荐

  1. 02 四旋翼无人机的组成与拼装(上)

    02 四旋翼无人机的组成与拼装(上) 目录 1 总体介绍 2 布局设计 2.1 机身布局 2.1.1 交叉形 2.1.2 环形 - 比较少 2.1.3 可折叠交叉形 2.2 旋翼安装 2.2.1 常规 ...

  2. 四旋翼无人机硬件基础

    四旋翼无人机硬件基础 材料分析 无刷电机 型号 转速 电子调速器 作用 规格 四轴专用电调? 电调编程? 螺旋桨 机制 规格 飞行控制器 原理 作用 四轴×字 四轴十字 电池 锂电池? 电池容量 电池 ...

  3. 【UAV】从单个螺旋桨到四旋翼无人机运动学分析

    文章目录 1 单个螺旋桨受力分析 2 坐标变化 3 四个螺旋桨对无人机的影响 3.1 旋翼对位置的影响 3.2 旋翼对姿态角影响 4 机体坐标下的输出量 5 位置变量转换到世界坐标系 6 简化分析 1 ...

  4. 【控制】四旋翼无人机姿态角分析

    搞起来,从建模到控制,再到仿真 Link: [控制]<多无人机协同控制技术>周伟老师-第3章-面向协同控制的无人机单机控制 文章目录 1. 坐标系 2. 角度介绍 航向角 yaw ange ...

  5. 四旋翼无人机调研结果

    P.S:作者曾在大学某次小班课上看到该视频,深深被震撼了,因此对无人机念念不忘. 恰逢某课程要求讲解自己喜欢的领域的内容,因此对四旋翼无人机进行了调研.

  6. Backstepping反步法控制四旋翼无人机(一)

    目录 四旋翼基本参数 基本假设 转换矩阵 基本方程 线性化 综合 四旋翼基本参数 四旋翼作为一种可以在空间中自由飞行的无人飞行器,具有6个自由度和4个螺旋桨.其中,4个螺旋桨提供动力,作为四旋翼的动力 ...

  7. 四旋翼无人机动力学模型及控制

    四旋翼无人机动力学模型及控制 I: 欧拉角与旋转矩阵 Overview 欧拉角与旋转矩阵 Body Frame Angular Velocity and [ ϕ ˙ , θ ˙ , ψ ˙ ] T [ ...

  8. 四旋翼无人机避障飞行

    四旋翼无人机飞行 无人机从起点出发飞向目标点,途径随机生成的障碍物 源码:https://pan.baidu.com/s/1WgEJuvlQmXrNfNmNolwbGg? 基于控制避障函数(CBF)的 ...

  9. 四旋翼无人机建模与实现(一)

    四旋翼无人机建模与实现(一) 本文是对GitHub上的一个开源的四旋翼无人机建模与编程实现的学习笔记,因为原作者的文档使用英文写的,花了很长的时间才看懂,因此,我觉得用自己的语言将这个开源项目分享出来 ...

最新文章

  1. 基于癌症基因组学数据的miRNA 功能模块识别算法研究
  2. C语言关闭文件总是错误,C语言程序错误,不能正常读写文件,求解啊
  3. python3.7 6如何安装-redhat7.6 安装Python 3
  4. 全面改用HTML5+CSS3来架构
  5. mysql 建表_别再胡乱建表了,看看阿里P8总结的mysql建表规约吧
  6. C# 【无法修改XX返回值,因为它不是变量】
  7. 深入理解Nginx 模块开发与架构解析-陶辉 读书笔记
  8. TQ210 —— s5pv210 Linux内核结构
  9. Centos在线安装nginx
  10. (转)J2EE十三个技术规范
  11. 机器学习、深度学习实战细节(batch norm、relu、dropout 等的相对顺序)
  12. 计算机应用与医学信息基础知识,第一篇医学信息基础知识.PDF
  13. 影响计算机关键性能参数测试研究,基于Labview软件的ADC计算机辅助测试系统设计...
  14. 一年用掉近3000吨草莓的奈雪,背后是供应链数字化持续投入
  15. 如何把照片制作成带音乐的影集相册?动感特效,简单实用!
  16. 2021-9-1 unity实践出真知
  17. 梆梆加固的病毒分析-破解篇
  18. netcat基本使用方法总结
  19. rfid中间件软件的应用实例_RFID原理与应用教与学(教学大纲)
  20. 工欲善其事必先利其器——第四弹 业务线仿真回归流程剖析

热门文章

  1. 稻盛和夫的33条管理哲学 -优思学院
  2. rundll32.exe 应用程序错误
  3. 小黑星巴克冰镇浓缩leetcode之旅:21. 合并两个有序链表
  4. photoshop2020入门笔记(三)——磨皮
  5. 使用 Flash CS5 與 Flash Builder
  6. 智能音箱 之 功放与扬声器(喇叭)的匹配关系
  7. angularjs 获取复选框的值_利用胚子冲刺增幅 红字胚子获取途径都在这_DNF经验心得 - 地下城与勇士 - DNF...
  8. MacBook pro使用入门(2)
  9. Spring AOP代理详解
  10. 不断提高工作水平的10条建议