【STM32】STM32学习笔记-FlyMCU串口下载和STLINK Utility(30)

00. 目录

文章目录

    • 00. 目录
    • 01. 串口简介
    • 02. 串口连接电路图
    • 03. FlyMCU软件下载程序
    • 04. 串口下载原理
    • 05. FlyMCU软件其它操作
    • 06. STLINK Utility软件
    • 07. 软件下载
    • 08. 附录

01. 串口简介

串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此大部分电子设备都支持该通讯方式, 电子工程师在调试设备时也经常使用该通讯方式输出调试信息。

在计算机科学里,大部分复杂的问题都可以通过分层来简化。如芯片被分为内核层和片上外设;STM32标准库则是在寄存器与用户代码之间的软件层。 对于通讯协议,我们也以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性, 确保原始数据在物理媒体的传输。协议层主要规定通讯逻辑,统一收发双方的数据打包、解包标准。 简单来说物理层规定我们用嘴巴还是用肢体来交流,协议层则规定我们用中文还是英文来交流。

02. 串口连接电路图

在这里插入图片描述

串口下载只能使用UART1

03. FlyMCU软件下载程序

3.1 生成hex文件
在这里插入图片描述

编译信息

main.c: 2 warnings, 0 errors
compiling stm32f10x_wwdg.c...
compiling delay.c...
compiling stm32f10x_it.c...
compiling system_stm32f10x.c...
compiling stm32f10x_usart.c...
linking...
Program Size: Code=1140 RO-data=252 RW-data=0 ZI-data=1632  
FromELF: creating hex file...
"..\OBJ\Project.axf" - 0 Error(s), 2 Warning(s).
Build Time Elapsed:  00:00:03

3.2 STM32进入下载程序模式
在这里插入图片描述

3.3 打开hex文件,点击开始编程

在这里插入图片描述

04. 串口下载原理

存储器映像
在这里插入图片描述

启动配置

在这里插入图片描述

程序下载之后自动执行配置
在这里插入图片描述

05. FlyMCU软件其它操作

5.1 读Flash文件
在这里插入图片描述

5.2 清除芯片
在这里插入图片描述

5.3 选项字节
在这里插入图片描述

在这里插入图片描述

06. STLINK Utility软件

6.1 连接到STM32

在这里插入图片描述

6.2 选项字节配置
在这里插入图片描述

07. 软件下载

STLINK Utility.rar

FlyMcu程序烧录软件.rar

08. 附录

参考: 【STM32】江科大STM32学习笔记汇总

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/619390.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WebRTC入门:基础的核心协议与概念(二十三)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只…

uniapp中为什么会出现跨域问题,如何解决

在uniapp中,跨域问题通常是由于浏览器的同源策略引起的。同源策略要求请求的域名、协议、端口都必须一致,否则会产生跨域问题。 解决跨域问题有以下几种方法: 在后端服务器上配置跨域资源共享(CORS):在服务…

【C#】C#实现PDF合并

文章目录 一、下载iTextSharp.dll下载iTextSharp.dll命名空间引入 二、界面设计三、代码全局变量选择文件夹的按钮确认合并的按钮 四、导出结果五、完整源码 一、下载iTextSharp.dll 下载iTextSharp.dll 可使用联机方式或者文件下载方式。 命名空间引入 代码开始时引入了一…

Android Studio导入项目 下载gradle很慢或连接超时

AS最常见的问题之一就是下载gradle非常慢,还经常出现下载失败的情况,没有gradle就无法build项目,所以一定要先解决gradle的下载问题,下面教大家两种常用方法。 因为我的项目绝大多数使用的是gradle-5.6.4-all,下面就以…

如何正确了解应用高防IP

一、简介 随着互联网的快速发展,网络安全问题逐渐凸显。高防IP作为一项重要的网络安全服务,已经成为了守护网络安全的重要一环。高防IP通过提供强大的抗DDoS攻击能力和其他网络安全防护措施,保障用户业务的安全稳定运行。本文将详细介绍高防…

【搜索引擎设计:信息搜索怎么避免大海捞针?

在前面我们提到了网页爬虫设计:如何下载千亿级网页?中,我们讨论了大型分布式网络爬虫的架构设计,但是网络爬虫只是从互联网获取信息,海量的互联网信息如何呈现给用户,还需要使用搜索引擎完成。因此&#xf…

MYSQL分表分库 详解

目录 一、垂直拆分于水平拆分的区别? 垂直拆分 水平拆分 二、分表分库有哪些策略? Hash分片策略 枚举分片策略 日期分片策略 范围分片策略(用的较多) 三、分表分库之后,如何查询的呢? 四、分表分…

【RHEL】Vivado调用VCS+Verdi联合仿真报错解决

问题描述 在使用VCS Verdi仿真Vivado工程时,点击行为仿真按钮进度条窗口消失后,Verdi窗口并未出现,查看消息报错如下: vcs: line 34205: 119837 Segmentation fault (core dumped) ${TOOL_HOME}/bin/cfs_ident_exec -f ${X…

网络安全已死,趁早转行?

近年来,曾经被寄予厚望的网络安全行业似乎正逐渐失去昔日的辉煌。曾经一度备受瞩目的网络安全专业,如今却面临着降薪、裁员的困境。许多公司对网络安全的重视程度不高,网络安全岗位成了背锅的代名词。在这样的环境下,有人开始质疑…

智能小车项目(七)通过PID实现给定和实际速度值计算PWM输出

我们先看大脑(上位机nano) keybord_ctrl节点发布’cmd_vel’消息消息类型为Twist队列大小为1 pub rospy.Publisher(cmd_vel, Twist, queue_size1)if not stop: pub.publish(twist)driver_node订阅这个消息 当有消息时cmd_vel_callback回掉函数处理消息…

感染嗜肺军团菌是什么感觉?

记录一下最近生病的一次经历吧,可能加我好友的朋友注意到了,前几天我发了个圈,有热心的朋友还专门私信了我说明了他自己的情况和治疗经验,感谢他们。 ​ 那么关于这次生病的经历,给大家分享一下。 首先,这次…

【Linux】网络版计算器代码

网络应用层协议的demo 运输层基于TCP protocol.hpp #pragma once#include <iostream> #include <cstring> #include <string> #include <sys/types.h> #include <sys/socket.h> #include <jsoncpp/json/json.h>#define SEP " "…

redis夯实之路-持久化之RDB与AOF详解

数据库 初始化服务器时会根据redisServer的dbnum属性来决定创建多少个数据库&#xff0c;默认为16 使用select切换数据库 客服端状态redisClient结构的db属性记录了当前的目标数据库 RedisDb结构的dict字典保存了数据库的所有键值对&#xff0c;这个字典被称为键空间。 cru…

C++I/O流——(2)预定义格式的输入/输出(第二节)

归纳编程学习的感悟&#xff0c; 记录奋斗路上的点滴&#xff0c; 希望能帮到一样刻苦的你&#xff01; 如有不足欢迎指正&#xff01; 共同学习交流&#xff01; &#x1f30e;欢迎各位→点赞 &#x1f44d; 收藏⭐ 留言​&#x1f4dd; 含泪播种的人一定能含笑收获&#xff…

【MySQL】MySQL表的约束-空属性/默认值/列属性/zerofill/主键/自增长/唯一键/外键

文章目录 表的约束1.空属性 --null && not null2.默认值 -- default3.列描述4.zerofill5.主键6.自增长7.唯一键8.外键 表的约束 表的约束&#xff1a;表中一定要有各种约束&#xff0c;通过约束&#xff0c;让我们未来插入数据库表中的数据是符合预期的。约束的本质是…

桶排序(Java语言)

视频讲解地址&#xff1a;【手把手带你写十大排序】8.桶排序&#xff08;Java语言&#xff09;_哔哩哔哩_bilibili 代码&#xff1a; public class BucketSort {public void sortFunction(int[] array, int bucketNum) {int max Integer.MIN_VALUE, min Integer.MAX_VALUE;…

【QT】多层QTreeWidget与QStackedWidget的关联操作

通过点击多层QTreeWidget来控制QStackedWidget中的page页面切换 treeWidget设计 treeWidget设计&#xff1a; // treeWidget设计ui->treeWidget->clear();ui->treeWidget->setColumnCount(1);//第一层QStringList l;l<<"管理系统";QTreeWid…

JavaWeb-HTTP

一、概念 HTTP&#xff1a;HyperText Transfer Protocol&#xff0c;超文本传输协议。读者应该不是第一次接触这个名词&#xff0c;但可能仍然不是很理解&#xff0c;笔者将逐一解释。 HyperText&#xff08;超文本&#xff09;&#xff1a;根据维基百科&#xff0c;Hypertex…

Linux数据处理的几个命令

文章目录 Linux数据处理的几个命令文件内容搜索利器 - grep语法默认无参数增加文件夹反向查找不区分大小写显示行数&#xff0c;精准定位 没有规矩不成方圆 sort语法默认无参数根据第N列排序检查是否已经排序逆序排列 你是唯一的 uniq语法默认无参数统计出现频次仅仅显示重复的…

Go语言的调度器

简介 Go语言的调度器是一个非常强大的工具&#xff0c;它可以帮助我们轻松地实现并发编程。调度器的工作原理是将多个协程映射到多个操作系统线程上&#xff0c;并根据协程的状态来决定哪个协程应该在哪个线程上运行。 调度器有两种主要策略&#xff1a; 协作式调度&#xf…