自制Pixhawk飞控板烧写BootLoader教程

2023-05-16

对于自己制作的飞控板,通过USB连接电脑之后,开始电脑是无法检测到飞控板的端口存在的。检测不到端口,就不能用控制台给飞控板烧写固件,就不能用QGroundControl,就不能进行传感器的校正,就不能设置遥控器,就毛都干不了。
因此需要先进行两个芯片的Bootloader烧录。
以飞控板上的STM32F427VIT6主控芯片为例,使用STLink2 以及配套的ST-Link-Utility 软件进行BootLoader烧写的步骤如下:

  1. 连线
    jtag
    飞控板上预留了芯片的JTAG接口,使用JST_SUR_H6封装,由于SWD模式比JTAG在高速模式下面更加可靠。在数据量大的情况下JTAG下载程序会失败,但是SWD模式出现问题的几率会小很多,并且采用SWD模式仅使用两条线即可进行调试,因此这里选择使用SWD模式进行连线。将SWCLK、SWDIO、VCC、GND四根线一一对应连接即可,烧录时飞控板需要单独使用USB供电,最终接线情况如图。
    connect

  2. BootLoader烧录
    st
    使用ST-Link Utility软件进行烧录,上电后先点击菜单栏Target下的Connect将飞控板连入软件,将px4fmu-v2_bl.bin文件拖入到软件界面内,擦除(Erase)芯片上原有数据后点击验证程序(Programe Verify)即可完成主芯片的BootLoader烧写。上图所示即为成功效果。对于STM32F100C8T6B故障协处理器芯片的BootLoader烧录与STM32F427芯片方法相同,但需要先用ST-Link2连接STM32F1的JTAG接口并选择px4io_bl.bin文件。
    完成主控芯片STM32F427与故障协处理器STM32F100的BootLoader的烧录之后,将飞控通过USB连接到电脑就可以在端口中看到相应的接口了,显示为”PX4 FMU”。
    开心了吧。~~~


BootLoader是自己从github上clone然后编译的,笔者烧录的是fmu-v2版本的BootLoader,使用其他飞控板的各取所需。能人异士按需更改想必也是阔以的。
看这里就欧克了。

boot

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

自制Pixhawk飞控板烧写BootLoader教程 的相关文章

  • 计算机操作系统的启动与加载过程

    注 uboot 嵌入式系统的bootloader 包含了BIOS的功能 相当于PC机的BIOS 引导程序
  • 高通LK代码devinfo分区 read_device_info

    有一个devinfo分区专门用来保存一些信息 在devinfo分区没烧录过的情况下 默认Charger screen enabled false 没有关机充电动画 fastboot oem device info lk调用读这些信息 当然不
  • mission planner SITL仿真系统配置

    背景 主要参考ArduPilot的官网 作者还拥有个人公众号 会写一些感悟文章 知圈 二维码如下 欢迎扫描关注 关注后有作者微信 欢迎添加交流 链路图 图源 Cygwin 下载 去官网下载Cygwin 作者电脑windows 10 64位
  • Flash概念简述

    1 Flash全名叫做Flash Memory Flash存储芯片的一种 通过特定的程序可以修改里面的数据 Flash属于非易失性存储设备 Non volatile Memory Device 与此相对应的是易失性存储设备 Volatile
  • 从 UEFI 应用程序内部运行 UEFI shell 命令

    我是 UEFI 应用程序开发新手 我的要求是 我需要从 UEFI 应用程序运行 UEFI shell 命令 app efi 源代码 需要指导我如何做到这一点 Example cpUEFI shell 中的命令用于将文件从一个路径复制到 其他
  • 优化第七代英特尔酷睿视频 RAM 中的递增 ASCII 十进制计数器

    我正在尝试针对特定的 Kaby Lake CPU i5 7300HQ 优化以下子例程 理想情况下使代码比其原始形式至少快 10 倍 该代码在 16 位实模式下作为软盘式引导加载程序运行 它在屏幕上显示一个十位十进制计数器 计数 0 9999
  • 加载引导加载程序的第二阶段

    我正在尝试为 x86 机器创建一个小型操作系统 并开始为相当小的引导加载程序编写代码 我创建的引导加载程序非常简单 它从位于主引导记录后面的扇区加载一个小的第二引导加载程序 并跳转到该代码 主引导记录中的引导加载程序代码似乎运行良好 当它尝
  • 引导加载程序如何读取 DVD(cd)?

    我有一个用汇编语言编写的第一阶段引导加载程序 我需要它从 DVD 或 CD 加载第二阶段引导加载程序 我只找到了从软盘或硬盘读取的示例 那里使用的中断是13h 在中断描述中它说它可以读取软盘和硬盘 我尝试使用 13h 来读取 CD 就好像它
  • ECU Bootloader程序开发

    文章目录 前言 前言 本篇主要介绍ECU BootLoader的 一般 开发逻辑 对正在 或想要做这方面工作的小伙伴一个参考 BootLoader的稳定性至关重要 前期设计要规避可能存在的所有使ECU变 砖 的风险点 尽可能地设计多重防范机
  • 你好世界引导加载程序不工作

    我一直在学习教程在这个网页上 http viralpatel net taj tutorial hello world bootloader php这将逐步创建一个显示 Hello World 的引导加载程序 第二个教程 我们尝试输出 A
  • Sparkfun Edge 引导加载程序问题

    今天终于到了 Sparkfun 板边板 遵循这个写得很好的指南 https codelabs developers google com codelabs sparkfun tensorflow 3 https codelabs devel
  • 找出 x86 引导加载程序中引导了哪个驱动器

    我正在为 x86 编写游戏引导加载程序 在启动早期的某一时刻 我需要将启动驱动器中的一些扇区加载到内存中 我使用中断 0x13 ah 02 来执行此操作 当我在虚拟机中尝试它时 它就像一个魅力 然而 当我将映像刻录到 USB 驱动器时 机器
  • ARM 系统上的 Bootrom 与引导加载程序有什么区别

    我主要来自 x86 系统背景 其中 BIOS 固件 负责从 PowerON 加载引导加载程序 如 GRUB 进而加载操作系统 我现在一直在阅读 ARM 系统上的等效启动顺序 网上似乎有文章提到了两个术语 bootrom 和 bootload
  • 使用 int 13h 读取的扇区数量多于磁道上的扇区数量

    顺序是什么int 13h with ah 02h会读19部门起始于 C H S 0 0 1 提供了 2 个磁头 每磁道 18 个扇区 每面 80 个磁道的 软盘 磁盘几何结构 或者 更一般地说 当它到达磁道 0 的末尾 磁头 0 时会发生什
  • 如何将以下 NASM 代码转换为 AT&T 语法,以修复“无法处理 jmp 中的非绝对段”错误

    我是 AT T 语法新手 我想将以下 NASM 语法代码转换为 AT T 语法只是为了便于理解 我尝试将其转换为 AT T 语法 lgdt gdtpointer jmp gdtcode start gdt quad 0x0000000000
  • 将引导加载程序存储在软盘映像上的哪里?

    我将编写并测试引导加载程序 为了做到这一点 我计划将引导加载程序复制到软盘映像文件上并将其安装在虚拟机中 但是 我不确定将引导加载程序的机器代码放在哪里 它是否只是转储到文件的前几个字节中 软盘的引导扇区是第一个扇区 如果您谈论的是原始软盘
  • MikeOS 引导加载程序中的堆栈段

    我不明白这段代码 mov ax 07C0h Set up 4K of stack space above buffer add ax 544 8k buffer 512 paragraphs 32 paragraphs loader cli
  • 如何编译一个简单的 multiboot2 裸机可执行文件?

    我想开始写一个操作系统内核 然后 我找到了一个document http nongnu askapache com grub phcoder multiboot pdf引入 multiboot2 规范 有三个示例代码文件 名为boot S
  • 什么是“Javascript 引导加载程序”?

    我主要在Facebook的源码中看到过这个Bootloader setResourceMap bMxb7 name javascript 中的引导加载程序到底是什么 它的用途和目的是什么 Bootloader 是 Facebook 前端代码
  • int 13h 42h 不会在 Bochs 中加载任何内容

    我将引导加载程序从 CHS 更改为 LBA 因此我更换了int 13h 02h with int 13h 42h 它在 QEMU 中工作正常 但是 我在 Bochs 和我的笔记本电脑上运行它时遇到问题 我将引导加载程序写入 USB 闪存驱动

随机推荐

  • 从零编写一个双目视觉SLAM系统(一):一个滑窗的PnP里程计

    最近在尝试用光流法写一个基本的双目视觉SLAM xff0c 希望通过这个项目把SLAM的各个模块都自己实现一遍 xff0c 以此加深对SLAM各个模块的理解 目前刚完成了一个通过求解相邻帧PnP问题的双目视觉里程计 xff0c 基本有了一个
  • 盘点丨无人机与AI 深度融合及跨域应用

    在密集的竹林里 xff0c 一群无人机自如地穿梭其中 xff0c 像组织有序的鸟群 xff0c 时而灵巧地掠过低矮灌木丛 xff0c 时而交叉飞行变换队形 这不是科幻内容 xff0c 而是浙江大学团队研发的自主导航的集群飞行系统 xff0c
  • 安全即代码:为Go实现lint和gosec | Gopher Daily (2020.08.05) ʕ◔ϖ◔ʔ

    每日一谚 xff1a a little copying is better than a little dependency 有意想学习容器或Kubernets的童鞋可以了解一下我的慕课网实战课 xff1a k8s实战 https codi
  • 终于有人把RISC-V讲明白了

    http m elecfans com article 653167 html
  • OpenHarmony 3.1 Beta版本关键特性解析——ArkUI容器类API介绍

    xff08 以下内容来自开发者分享 xff0c 不代表 OpenHarmony 项目群工作委员会观点 xff09 刘鑫 容器类 xff0c 顾名思义就是存储的类 xff0c 用于存储各种数据类型的元素 xff0c 并具备一系列处理数据元素的
  • 200个DIY及科技网站

    http www powerlabs org 高能diy 电磁枪 微波武器 http www altair org tesla html 高电压diy爱好者 http www richieburnett co uk tesla shtml
  • Linuxunexpected error reading Dockerfile: is a directory--2021-08-25

    编写完Dockerfile后需要通过命令将其制作为镜像 mobaXterm报错 unexpected error reading Dockerfile read var lib docker tmp docker builder314741
  • 在Eclipse中配置Tomcat

    简介 xff1a 1 3步为 xff1a 把Tomcat配置到eclipse中 4 7步为 xff1a 把新建的Web项目部署到Tomcat中并运行 最后一部分为 xff1a 改变Web工程的真实部署路径到Tomcat中目录下 x1f447
  • ROS与C++入门教程-消息-序列化和适配类型

    原文地址 xff1a ROS与C 43 43 入门教程 消息 序列化和适配类型 创客智造 说明 xff1a 介绍序列化和适配类型在C Turtle版本增加 序列化到内存 使用ros serialization serialize 函数 xf
  • 前方高能,官方教程:教你如何玩转 GitHub !

    回复 1024 xff0c 送你一个特别推送 作为程序员 xff0c 一般手上会有三把剑 xff0c 用好了这三把剑 xff0c 对于编程来说 xff0c 对于解决编程中遇到的 Bug xff0c 都应该能够轻而易举的解决 程序员手中的三把
  • 树莓派安装宝塔面板后无法连接VNC

    解决方法 xff1a 登陆宝塔面板后台 xff0c 在 安全 中放行端口5900即可
  • Python并行处理视频帧

    参考链接 xff1a Speedy Computer Vision Pipelines using Parallelism 方案 xff1a 使用Python多进程编程 xff0c 将视频分成多个小段 xff0c 可按照CPU核数num p
  • 深度学习目标检测之SSD

    经典论文SSD笔记 论文链接 xff1a SSD Single Shot MultiBox Detector论文报告 xff1a ssd eccv2016 slide目标检测百页综述 xff0c 从传统方法到深度学习 xff1a Objec
  • C++编译报错fmt未定义的引用

    对 fmt v5 internal basic data POWERS OF 10 64 未定义的引用 1 最简单的方法 xff1a 把代码中printf的输出全部换成std cout或者其他的 2 安装fmt包 git clone htt
  • PyG/torch_geometric的一些坑

    安装PyG span class token keyword import span os span class token keyword import span torch os span class token punctuation
  • Pixhawk官网飞行模式介绍

    欢迎交流 个人 Gitter 交流平台 xff0c 点击直达 xff1a Flight Mode 飞行模式 原文地址 http dev px4 io concept flight modes html 飞行模式定义了系统在任何给定时间的状态
  • PX4中文维基汉化项目启动

    欢迎交流 个人 Gitter 交流平台 xff0c 点击直达 xff1a 敬启者 xff1a 打算进行PX4官网的汉化工作 GitBook 与官网的方式相同 xff0c 我们也是将网站以GitBook的方式呈现给大家 汉化后的版本先点点点点
  • Windows / Ubuntu操作系统下Pixhawk原生固件PX4的编译方法

    欢迎交流 个人 Gitter 交流平台 xff0c 点击直达 xff1a 更新于2017 3 13 FAQ 本文说明针对 PX4 Firmware 1 6 0 问题 1 xff1a 找不到python jinja2模块 CMake Erro
  • Sublime Text中文乱码的解决方法

    Sublime Text Sublime Text这款代码编译器相当不错 xff0c 自带高亮显示 xff0c 界面清新 但是Sublime Text默认是不支持中文显示的 xff0c 这种中文乱码的行为万万是不能够接受的 这里简单介绍一下
  • 自制Pixhawk飞控板烧写BootLoader教程

    对于自己制作的飞控板 xff0c 通过USB连接电脑之后 xff0c 开始电脑是无法检测到飞控板的端口存在的 检测不到端口 xff0c 就不能用控制台给飞控板烧写固件 xff0c 就不能用QGroundControl xff0c 就不能进行