关于apm飞控烧bootloader

2023-05-16

    最近一直由于学校大创申请的的四轴,一直在做这玩意,哎,无奈这货实在不像想象的那样简单,自己写了N久飞控,也没把飞机飞起来,只能先用开源的apm飞控练练手呗,备份下apm烧bootloader的方法,以备查用!


原文地址:http://bbs.diywrj.com/thread-21628-1-1.html


所需工具材料:

      

1、一个AVRusbasp编程器以及相应的烧写软件,推荐progisp1.72

   

2、AVR的USB自编程软件Flip,下载链接http://www.atmel.com/tools/FLIP.aspx,电脑中如果已经装过java,选择小的那个,如果没有,选择大的那个含jave的进行下载

   

3、准备三个hex文件,分别是Atmega2560的bootloader文件、32u2的bootloader文件和32u2的ppm程序文件

   

烧写过程基本概述:先给Atmega2560烧写bootloader,然后给Atmega32u2烧写bootloader,最后给32u2写入PPM解码通讯程序

   

一、烧写Atmega2560的bootloader:

   

1、Atmega2560的SPI接口在APM板靠近USB接口位置,为双排6PIN排针,如果你的usbasp是10PIN接口,你还需要一根10PIN转6PIN的转接线。连接好下载线后打开progisp,select chip选择Atmega2560,然后RD一下ID识别字是否对应,没有错误的话继续下一步

            

2、点击预写熔丝或者编程熔丝右边的数字框进行Atmega2560的熔丝位配置

         

3、Atmega2560的熔丝位如下配置:低FF,高D8,扩展FD,配置好后点击写入执行熔丝位的写入,写入完成后可以点击读出熔丝位验证熔丝位是否已经写入,写入成功即可关闭熔丝位配置界面

         

4、配置好熔丝位后点击“调入flash”载入Atmega2560的bootloader的hex文件,在主界面上勾选芯片擦除、编程flash、校验flash,然后点击自动开始写入bootloader程序,2560写入时间较长,需耐心等待

         

5、烧写成功后会出现校验错误,这是因为progisp对于2560的bootloader校验功能不是很完善,校验不了,所以才会出现这样的校验错误。其实bootloader已经下载完毕了。这时候可以看到B、C指示灯在闪烁。

      

二、烧写Atmega32U2的bootloader

   

Atmega32u2的SPI接口在APM板的GPS插座位置附近,很多APM板子出厂的时候,32U2

   

的SPI接口排针并没有焊上,如果没有的话你需要先把排针焊上。Atmega32u2的bootloader烧写步骤参考上面的Atmega2560烧写步骤,首先选择芯片32u2,然后配置熔丝位,Atmega32u2的熔丝位为低FF,高D9,扩展F4,最后调入Arduino-usbdfu.hex文件执行烧写

      

三、写入Atmega32u2的PPM解码通讯程序

   

1、mega2560和mega32U2的bootloader都烧写完毕后,连接APM飞控板的USB口到电脑上,电脑提示发现新硬件

         

此驱动在APM固件的ardupilot\Tools\ArduPPM\ATMega32U2\Drivers目录下,如果没有的话请自行去APM的wike网站上下载一个固件。驱动装好后在设备管理器中会出现一个ATMEL的DFU设备(注:本部可能会出现找不到文件的提示,在xp上会提示libusb0_x86.dll,可下一个libusb0_x86.dll放入system32中,在xp测试通过!)

      

2、驱动好后打开FLIP软件,点击红色箭头所指的图示或到主选单选择「Device->Select」,也可以使用快捷键「Ctrl+S」,选择Atmega32U2,然后点击确定。

         

3、点击红色箭头所指的地方或到主选单选择「Settings->Communications->USB」,也可以使用快捷键「Ctrl+U」,然后点击「Open」打开USB。

         

4、如果以上步骤都正确的话,你会看到Signature bytes信息,如下图所示:

         

5、现在我们点击红色箭头所指的图示加载HEX或到主选单选择「File->Load HEX」,也可以使用快捷键「Ctrl+L」选择事先准备好的PPM解码hex文件。需要注意的是,FLIP载入的hex文件不能放在中文目录下,否则会提示载入不成功

         

6、现在确认一下是否已经勾选了所有的「Operations Flow」的选项,如下图所示,红色箭头所指的地方都要打勾,然后点击左下角的RUN执行写入。软件会弹出一个烧写进度条提示,正常的话很快,几秒钟就可以完成,最后左下角提示veripass校验通过,整块板子的基本bootloader即刷写完成,重新插拔一次USB,电脑发现新设备,装好APM的USB驱动后就可以打开Mission Planner更新APM固件了

   


转载于:https://blog.51cto.com/rainlee/1626529

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

关于apm飞控烧bootloader 的相关文章

  • Maven自动FTP远程部署

    参照官网文档 xff1a https maven apache org plugins maven deploy plugin examples deploy ftp html 1 在pom xml中加入 xff1a lt project

随机推荐

  • 面试感悟----一名3年工作经验的程序员应该具备的技能

    原文地址http www cnblogs com xrq730 p 5260294 html xff0c 转载请注明出处 xff0c 谢谢 xff01 前言 因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结 xff0c 因此有了这
  • c语言菜单经典实例

    include lt conio h gt include lt dos h gt include lt graphics h gt include lt stdio h gt include lt stdlib h gt 定义一些常数 d
  • Docker(二):微服务教程

    Docker 是一个容器工具 xff0c 提供虚拟环境 很多人认为 xff0c 它改变了我们对软件的认识 站在 Docker 的角度 xff0c 软件就是容器的组合 xff1a 业务逻辑容器 数据库容器 储存容器 队列容器 xff0c Do
  • 让进程在后台可靠运行的几种方法

    Linux 技巧 xff1a 让进程在后台可靠运行的几种方法 想让进程在断开连接后依然保持运行 xff1f 如果该进程已经开始运行了该如何补救 xff1f 如果有大量这类需求如何简化操作 xff1f 我们经常会碰到这样的问题 xff0c 用
  • 小米路由器mini拆解,附上独家对MT7620A见解

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 小米路由mini采用单核MT7620A处理器 xff0c 搭配128MB DDR3 xff0c 内置智能家居控制中心 xff0c 和标准版一样提供2x2双频天线 xff0c
  • 采购收货的异常

    仓库发OA过来 xff0c 说有一票采购订单收货的时候提示红灯错误 xff0c 截图如下 xff1a 双击错误消息 xff0c 提示该消息是出自于M7429 百度 xff0c 没有相关资料 问群里 xff0c 也没人懂 于是通过 H 来查看
  • 【ES6基础】解构赋值(destructuring assignment)

    我们经常可以在其他编程语言 如GO语言 中看到多返回值这种特性 xff0c 因为在很多实际场景中 xff0c 函数的返回值中 xff0c 函数的返回值并不只有一个单一的值 ES6之前 xff0c 并没有可以直接使用语法来实现多返回值的特性
  • 视觉导航小车开源项目(1)—小车底盘

    小车底盘 1 更新日志1 1 硬件方面1 2 软件方面 2 底盘硬件结构2 1 底盘机械组装2 2 底盘硬件框图2 3 底盘电气系统 3 差速底盘软件结构3 1 控制板介绍3 2 代码结构3 3 差速底盘运动学模型 参考资料 注 xff1a
  • 一些webpack配置优化手段

    loader 设置include或者exclude 一般第三方包都是打包好的 xff0c 无需再打包 xff0c 特别是babel loader eslint loader span class hljs attr test span sp
  • 基于iframe的移动端嵌套

    需求描述 上上周接到了新的项目 xff0c 移动端需要做一个底部有五个导航 xff0c 点击不同的导航页面主体显示不同的页面 xff0c 其中两个页面是自己做 xff0c 而另外三个页面是引用另外三个网址 xff0c 其中两个网址为内部项目
  • Vue实战篇(PC端商城项目)

    这是一个基于vue全家桶 43 node js 43 express 43 mysql实现的商城网站 项目github地址 xff1a vueMall 查看demo 地址 如果觉得对您有帮助 xff0c 您可以在左下角给我个喜欢支持一下 x
  • https安全证书过期失效的原因以及解决方法

    一 网站https安全证书过期原因分析 xff1a 1 当前电脑系统时间错误 xff0c 所有的http安全证书都有颁发日期和截止日期 xff0c 电脑系统时间在证书有效时间区间之外有可能导致浏览器提示网站https安全证书已过期或还未生效
  • 安装OPENWRT后打不开管理页面的解决方法

    路由器刷入了OPENWRT 结果发现刷入的固件没有带Luci 以下是本人手动安装Luci的方法 开始安装Luci所需的依赖包 opkg install http 192 168 1 2 uhttpd 27 brcm47xx ipk opkg
  • Postgresql查看表结构和字段注释

    Postgresql查看表结构和字段注释 一 xff1a 查看表结构 xff08 字段 xff09 信息 xff1a Select table name column name data type character maximum len
  • 技术淘宝

    精度前端学习 前端开发100天 xff08 置顶 xff09 http alloyteam github io CodeGuide https github com AlloyTeam CodeGuide cmd控制台的小技巧 xff1a
  • Migration: Find Duplicate Objects in Application Desinger Projects

    The sql will identify duplicate objects in different application designer projects to eliminate duplicate work by develo
  • SQL server loginname alias mapping problem.

    exec sp changedbowner 39 Aambriore mra 39 EXEC sp change users login 39 Auto Fix 39 39 lts 39 null Exec sp change users
  • [ASP.NET MVC 小牛之路]08 - Area 使用

    ASP NET MVC允许使用 Area xff08 区域 xff09 来组织Web应用程序 xff0c 每个Area代表应用程序的不同功能模块 这对于大的工程非常有用 xff0c Area 使每个功能模块都有各自的文件夹 xff0c 文件
  • OpennVINS运行、评估笔记

    1 安装运行 1 1 下载 amp 编译 span class token builtin class name cd span catkin ws src span class token function git span clone
  • 关于apm飞控烧bootloader

    最近一直由于学校大创申请的的四轴 xff0c 一直在做这玩意 xff0c 哎 xff0c 无奈这货实在不像想象的那样简单 xff0c 自己写了N久飞控 xff0c 也没把飞机飞起来 xff0c 只能先用开源的apm飞控练练手呗 xff0c