STM32使用USB虚拟串口+YMODEM实现IAP升级

2023-11-03

USB虚拟串口

基于USB CDC可以将USB做成虚拟串口,这块ST已经给我们做好了,直接使用相关封装好的接口就可以了,具体使用参考:
https://blog.csdn.net/mirco_mcu/article/details/106081950
这里就不再赘述了。注意两点:

  1. 配置好后与上们机通信不用关心波特率,一般波特率都能通信
  2. 不需要改任何配置,直接使用以下接口
    CDC_Receive_FS,这个有点像串口IDLE中断了
    CDC_Transmit_FS

YMODEM协议

这也不用讲了

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

STM32使用USB虚拟串口+YMODEM实现IAP升级 的相关文章

  • GCC - 如何停止链接 malloc?

    我正在努力将我的代码缩减到最小的骨架大小 我使用的是只有 32k 闪存的 STM32F0 需要很大一部分闪存用于数据存储 我的代码已经有大约 20k 闪存大小 其中一些是由于使用了 STM32 HAL 函数 我可以在以后需要时对其进行解释和
  • 134-基于stm32单片机矿井瓦斯天然气浓度温湿度检测自动通风系统Proteus仿真+源程序...

    资料编号 134 一 功能介绍 1 采用stm32单片机 LCD1602显示屏 独立按键 ds1302时钟 DHT11温湿度 电机 蜂鸣器 制作一个基于stm32单片机矿井瓦斯天然气浓度温湿度检测自动通风系统Proteus仿真 2 通过DH
  • 138-基于stm32单片机汽车多功能仪表盘显示系统Proteus仿真+源程序

    资料编号 138 一 功能介绍 1 采用stm32单片机 LCD1602显示屏 独立按键 DHT11传感器 ds1302时钟 LED灯 蜂鸣器 电位器 制作一个基于stm32单片机汽车多功能仪表盘显示系统Proteus仿真 2 通过DHT1
  • 136-基于stm32单片机家庭温湿度防漏水系统设计Proteus仿真+源程序

    资料编号 136 一 功能介绍 1 采用stm32单片机 LCD1602显示屏 独立按键 DHT11传感器 蜂鸣器 制作一个基于stm32单片机家庭温湿度防漏水系统设计Proteus仿真 2 通过DHT11传感器检测当前温湿度 并且显示到L
  • HAL库STM32常用外设教程(二)—— GPIO输入\输出

    HAL库STM32常用外设教程 二 GPIO输入 输出 文章目录 HAL库STM32常用外设教程 二 GPIO输入 输出 前言 一 GPIO功能概述 二 GPIO的HAl库驱动 三 GPIO使用示例 1 示例功能 四 代码讲解 五 总结
  • STM32F4 通过软复位跳转到引导加载程序,无需 BOOT0 和 BOOT1 引脚

    我问这个问题是因为可以在这里找到类似问题的答案 通过应用程序跳转到 STM32 中的引导加载程序 即从用户闪存在引导模式下使用引导 0 和引导 1 引脚 用户 JF002 JF002回答 当我想跳转到引导加载程序时 我在其中一个备份寄存器中
  • STM32F103概要

    The STM32F103x4 STM32F103x6 STM32F103xC STM32F103xD and STM32F103xE are a drop in replacement for STM32F103x8 B medium d
  • STM32 GPIO工作原理详解

    STM32 GPIO介绍 1 STM32引脚说明 GPIO是通用输入 输出端口的简称 是STM32可控制的引脚 GPIO的引脚与外部硬件设备连接 可实现与外部通讯 控制外部硬件或者采集外部硬件数据的功能 以STM32F103ZET6芯片为例
  • [屏驱相关]【SWM166-SPI-Y1.28C1测评】+ 有点惊艳的开箱

    耳闻华芯微特许久了 看到论坛得评测活动赶紧上了末班车 毕竟对有屏幕得板子也是很喜欢得 京东快递小哥客客气气 微笑着把快递给了我 好评 直接拆了包 在此之前没看过视频号 所以这个圆盘盘得模具还是有点惊喜的 正面照如下 开机有灯光秀 还有动画
  • 解决KEIL编译慢问题

    两种方案 使用v6版本的ARM Compiler 如果v6版本编译不过 必须使用v5版本的 则可以勾选掉Browse Information选项 提升很明显 1分多钟能优化到几秒 看代码量 但是这个有个弊端 在KEIL中会影响函数跳转 建议
  • VS Code 有没有办法导入 Makefile 项目?

    正如标题所说 我可以从现有的 Makefile 自动填充 c cpp properties json 吗 Edit 对于其他尝试导入 makefile 的人 我找到了一组脚本 它们完全可以实现我想要实现的目标 即通过 VS Code 管理
  • 在 Atollic TrueStudio、STM32CubeMX 中导入 C 库

    我目前正在开发 STM32F767ZI Nucleo 板和一个小安全芯片 microchip atecc508a 通过 i2c 连接进行连接 该芯片有一个可用的库加密验证库 https github com MicrochipTech cr
  • 最终启动顺序错误 - STM32L476 的 Eclipse System Workbench 调试

    我正在尝试调试和运行 STM32L476 的简单汇编代码 我已经设置了 Eclipse Oxygen 在 Eclipse 中安装了最新版本的 System Workbench 插件并安装了 ST Link 驱动程序 IDE 成功构建了程序
  • STM32F207 I2C 测试失败

    我正在使用 STM32F207 微控制器在 STM3220G EVAL 板上学习嵌入式开发 我尝试通过连接同一芯片上的两个 I2C2 和 I2C3 模块并发送 接收字符来测试 I2C 接口 这是我当前编写的代码 使用 mdk arm 5 i
  • 无法使用 OpenOCD 找到脚本文件

    我正在尝试按照本教程将 OpenOCD 与我的 ST 发现板一起使用 https japaric github io discovery README html https japaric github io discovery READM
  • Freertos低功耗管理

    空闲任务中的低功耗Tickless处理 在整个系统运行得过程中 其中大部分时间都是在执行空闲任务的 空闲任务之所以执行 因为在系统中的其他任务处于阻塞或者被挂起时才会执行 因此可以将空闲任务的执行时间转换成低功耗模式 在其他任务解除阻塞而准
  • for循环延时时间计算

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 pandas是什么 二 使用步骤 1 引入库 2 读入数据 总结 前言 之前做led点亮的实验 好像是被delay函数影响了 因为delay参数设置的不对
  • 嵌入式 C++11 代码 — 我需要 volatile 吗?

    采用 Cortex M3 MCU STM32F1 的嵌入式设备 它具有嵌入式闪存 64K MCU固件可以在运行时重新编程闪存扇区 这是由闪存控制器 FMC 寄存器完成的 所以它不像a b那么简单 FMC 获取缓冲区指针并将数据刻录到某个闪存
  • STM32 上的位置无关代码 - 指针

    我已成功在 STM32 上构建并运行位置无关的代码 向量表和 GOT 已修补 一切正常 但我对这样的代码有问题 double myAdd double x return x 0 1 double ptrmyAdd double myAdd
  • HAL_Delay() 陷入无限循环

    我被 HAL Delay 函数困住了 当我调用此函数 HAL Delay 时 控制陷入无限循环 在寻找问题的过程中 我发现了这个 http www openstm32 org forumthread2145 threadId2146 htt

随机推荐

  • 大数据——基于Spark Streaming的流数据处理和分析

    基于Spark Streaming的流数据处理和分析 流是什么 为什么需要流处理 流处理应用场景 如何进行流处理 Spark Streaming简介 Spark Streaming流数据处理架构 Spark Streaming内部工作流程
  • 实验室项目——连接mysql服务器报错(驱动版本不一致)

    mysql right syntax to use near OPTION SQL SELECT LIMIT 15 at line 1 问题描述 OPTION SQL SELECT LIMIT XXX 问题原因 项目使用的mysql驱动和m
  • 集线器、交换机和路由器(图解)

    一 物理层 使用 MAC 解决设备的身份证问题 1 通信的原始时代 很久很久之前 你不与任何其他电脑相连接 孤苦伶仃 直到有一天 你希望与另一台电脑 B 建立通信 于是你们各开了一个网口 用一根网线连接了起来 用一根网线连接起来怎么就能 通
  • UEFI/Legacy bios简介与grub安装教程

    目录 一 BIOS简介 二 UEFI与Legacy 启动模式简介 Legacy启动模式 UEFI启动模式 具体不同 三 grub安装 grub软件包的安装 grub源码下载 grub本地编译安装及使用 Ubuntu 环境下 四 参考 一 B
  • 华为机试-8.计算面积(绘图机器的绘图笔初始位置在原点)

    计算面积 绘图机器的绘图笔初始位i在原点 0 0 机器启动后其绘图笔按下面规则绘制直线 1 尝试沿着横向坐标轴正向绘制直线 直到给定的终点值E 2 期间可通过指令在纵坐标轴方向进行偏移 井同时恰制直线 偏移后按规则1绘制直线 指令的格式为X
  • chatgpt赋能python:Python输出中出现的None值:问题、解释和解决方案

    Python输出中出现的None值 问题 解释和解决方案 在Python编程中 经常会出现输出中包含None值的情况 这会给程序员带来一些困扰 因为它可能会在应用程序中导致错误或不正确的结果 在本篇文章中 我们将探寻这个问题的原因 介绍有关
  • Cascade EF-GAN: 局部聚焦渐进式面部表情编辑

    目前面部表情编辑存在的问题 生成性对抗网络 GAN 的最新进展表明 面部表情编辑有了显著的改进 然而 当前的方法仍然容易在表达密集型区域周围产生伪影和模糊 并且在处理大间隙表达转换 例如从愤怒到大笑的转换 时 经常引入不希望的重叠伪影 本文
  • Java中为什么只有值传递?

    开始之前 我们先来搞懂下面这两个概念 形参 实参 值传递 引用传递 形参 实参 方法的定义可能会用到 参数 有参的方法 参数在程序语言中分为 实参 实际参数 用于传递给函数 方法的参数 必须有确定的值 形参 形式参数 用于定义函数 方法 接
  • 面向对象三大基本特征及五大基本原则介绍

    目录 前言 一 面向过程和面向对象区别 二 面向对象的三大基本特征 封装 继承 多态 1 封装 2 继承 3 多态 三 面向对象的五大基本原则 1 单一职责原则 SRP 2 开放封闭原则 OCP 3 里氏替换原则 LSP 4 依赖倒置原则
  • python 如何将代码中的输入保存到txt里边

    一 在 print 前建立一个txt python3 f open print txt w print this is a txt file f f close python2 f open print txt w print gt gt
  • 摄影基础之---景深

    正在上传 重新上传取消 1 概述 先看两个例子 拍摄花 昆虫等照片时 背景拍的比较模糊 突出被拍物 但当拍摄纪念照 风景等照片时 却会把背景拍摄得和被拍对象一样清晰 这两者就是不同景深 前者为浅景深 拍摄聚焦到被拍物上 只能拍清一小段距离
  • 什么是MMU,MMU的作用

    I 什么是MMU MMU的作用 MMU是Memory Management Unit的缩写 针对各种CPU MMU是个可选的配件 MMU负责的是虚拟地址 O1663 O1664 物理地址的转换 提供硬件机制的内存访问授权 现 代的多用户多进
  • 类与对象(初级)

    目录 1 面向对象的初步认知 1 1 什么是面向对象 官方解释 1 2 面向对象与面向过程的对比 2 类 2 1 简单认识类 2 2 类的定义格式 3 类的实例化 3 1 什么是实例化 3 2 类和对象的说明 4 构造方法 构造器 4 1
  • 教妹学Java(十四):switch 语句详解

    大家好 我是沉默王二 一个和黄家驹一样身高 和刘德华一样颜值的程序员 本篇文章通过我和三妹对话的形式来谈一谈 switch 语句 教妹学 Java 没见过这么有趣的标题吧 语不惊人死不休 没错 本篇文章的标题就是这么酷炫 接受不了的同学就别
  • 论文阅读(21 CVPR):Adaptive Cross-Modal Prototypes for Cross-Domain Visual-Language Retrieval

    跨域 跨模态检索 Setting Unsupervised Domain Adaptation UDA sampled from joint distributions P v s s and Q v t t 在一个联合分布上进行采样 并非
  • 灰度重心法公式大全

    1 型心法 可理解为灰度重心法的特例 用于二值图像 2 灰度重心法 version 1 3 灰度重心法 version 2
  • 前端面试题集锦——HTML+CSS篇

    前端面试题集锦 HTML篇 1 你是怎么理解 HTML 语义化 1 HTML的语义化就是从代码层次表达人的想法 思路 同时描绘出网站页面的结构 因为页面不止是给人看的 机器也要看 2 网页结构清晰更方便开发维护 html语义化就是规定一些h
  • ARTS挑战打卡第六周

    打卡第六周 两个21天 01 Algorthm leetcode 1302 Deepest Leaves Sum https leetcode com problems deepest leaves sum 思路1 遍历树 PostOrde
  • 《机器学习》第2章中find-s算法的python实现

    开坑记录 机器学习 学习过程中的一些小程序 思路等 FIND S 即寻找极大特殊假设 第2章中关于FIND S的算法伪码如下 表2 3 FIND S算法 1 将h初始化为H中最特殊假设 2 对每个正例x 对h的每个属性约束a i 如果x满足
  • STM32使用USB虚拟串口+YMODEM实现IAP升级

    USB虚拟串口 基于USB CDC可以将USB做成虚拟串口 这块ST已经给我们做好了 直接使用相关封装好的接口就可以了 具体使用参考 https blog csdn net mirco mcu article details 1060819