博客最细 STM32CubeProgrammer 使用教程(学不会来找我)

        前言:编写不易,仅供参考学习,请勿搬运

文章相关介绍

        本篇主要是介绍 STM32CubeProgrammer 烧录软件的使用过程,随着ST开发生态已经完成闭环,(STM32CubleMX配置代码   STM32IDE写代码    STM32CubeProgrammer烧录代码)随着STMSTM32CubleMX 这个软件将ElipeseIDE 开发环境删除,或许有一天会限制下载烧录软件,作为ST生态的一环,这个软件以后可能会用的越来越多,同时附带软件下载连接,在文章末尾,个人观点哈。

        同时本文主要介绍页面工能,和烧录的教程,读写保护,读取flash  RAM准备写到续集二,需要可以看二。

STM32CubeProgrammer 相关介绍

        STM32CubeProgrammer是STMicroelectronics提供的一款用于管理STM32微控制器的通用软件工具。它提供了多种功能,包括芯片烧录擦除(擦除flash)读取保护设置的功能,同时它的前身是 ST-LINK Utility

支持STM32主流开发芯片:STM32CubeProgrammer支持STMicroelectronics的各种STM32系列微控制器,包括STM32F0、STM32F1、STM32F2、STM32F3、STM32F4、STM32F7、STM32H7等系列,可以说是主流的开发芯片都有了。

        支持从STM32微控制器读取Flash和RAM内容,用于验证和备份程序和数据。允许设置STM32芯片的安全功能,包括读保护写保护加密功能,以确保程序和数据的安全性和完性。

        支持通过ST-LINK调试器串口接口(UART)、USB接口等多种方式与目标设备进行连接和通信。提供直观的用户界面,支持图形化的操作和命令行接口(CLI),方便用户进行操作和调试。

        这里面真正强的功能是,从flash里面读取程序,还有读RAM里面变量寄存器的值,不需要通过程序写保护,读保护,跟加密了,真的很强,很厉害的功能。

STM32CubeProgrammer页面介绍

        这个软件打开的方式要通过,管理员方式打开,然后分别介绍一下,页面里面本篇教程使用到的功能。

STM32CubeProgrammer烧录实验

        首先这个软件是烧录 hex文件,首先需要配置KEIL5生成hex文件,当配置完成之后,会自动编译出 hex文件,在工程目录的下面

        这里注意,hex文件实在编译过后生成的,编译过后,在object文件目录下,找到hex文件

 #ST-linker烧录实验

        ST-Linker对单片机进行烧录,是通过的SWD接口(Serial Weir Debug),而ST-linker之所以能对单片机进行烧录是因为,利用了STM32的微控制器调试接口,和固件编程功能。

        STM32微控制器集成了标准的调试接口,SWD(Serial Wire Debug)和JTAG(Joint Test Action Group)这些集成的接口,允许外部调试器访问芯片(微控制器),flash 和 寄存器。 而这里用到的ST-linker下载器,是通过SWD这个接口,进行下载程序的,这个接口具体注释如下图表格所示。

SWDIO  (Serial Wire Debug Input/Output)双向数据线
SWCLK   (Serial Wire Debug Clock)时钟信号线
VCC电源
GND底线

 #基本配置

        然后使用ST-linker不需要进入Bootoloader模式,这个模式是(USB  USART),这些方式烧录,需要使用的专属模式,这里将ST-linker接好线之后,开始配置STM32CubeProgrammer的页面。

        点击烧录之后,系统有这样的提示,也就是通过ST-linker进行烧录完成了。

#串口烧录实验

        这里首先使用USB转TTL模块进行烧录教学,这个模块集成了ch340芯片,如果没有下载驱动识别不到芯片,这个模块需要使用CH340驱动,这里就不提供安装包了,按装之后电脑才能识别到,这个模块。

#基本配置

        STM32F103c8t6 ,usb转ttl模块。

#必要配置

         这里由于是通过 串口进行烧录程序,需要配置为系统存储器中的Bootloader启动模式,这种模式允许STM32通过特定的通信接口(USB SPI USART),接受和写入新的程序到 flash 里面,Bootloader这个模式是通过BOOT引脚的高低电平来配置的,默认配置的BOOTO引脚,是没有进入Bootloader 。

        通过配置BOOT引脚之后, 需要重新按RESET(复位按键),使其重新启动进入 Bootloader这个模式,复位按键不能忘记按。 

BOOT0BOOT1启动模式
00用户闪存(User Flash)
10系统存储器(System Memory,进入Bootloader模式)
11内部SRAM(Embedded SRAM)

        这里有的小伙伴就会问了,既然是用串口进行下载程序,STM32需要配置引脚复用串口功能嘛,需要,但是不用自己配置当配置BOOT引脚进入 Bootoloader 模式STM32会自动将引脚配置为串口功能这个过程由 Bootoloader 自动处理

        上面理解之后,通过杜邦线连接CH340和单电机GPIO引脚,连接方式在下面表格。

单片机CH340
GPIOA10 (TX)RX
GPIOA9 (RX)TX

        到此基本配置也就完成了,接下来需要配置STM32CUBLEMX的页面。                    

    这里要将ST-linker模式换成USART就行了,其他的过程都一样的,最后有这个提示就是成功了。

#USB烧录实验                                                                                        

        首先需要找一根USB数据线,但是这个实验STMF1是不支持这种方式进行烧录的具体原因向下看。

#基本配置

        STM32F407vet6(天空星) ,usb数据线。

#必要配置

       为什么不用 STM32F103c8t6    它的micro usb 只能用来供电,不能进行烧录程序,这里的话支简单描述一下原因,更具体的准备在写一篇博客 ,ST的F1不支持DFU烧程序 ,所以只能进行供电使用这个usb接口(小蓝板usb只能用来供电)

        这里使用 STM32F407vet6(天空星)这个板子,通过USB进行烧录,同样需要配置Bootoloader(系统引导加载程序)。

        通过USB连接过单片机之后,接下来配置STM32CubeProgrammer页面选项。

        最后又这个提示,就代表我们下载成功了。

                        欢迎指正,希望对你,有所帮助!!!

STM32CubeProg - STM32CubeProgrammer software for all STM32 - STMicroelectronics

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

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

相关文章

【时时三省】tessy 集成测试:小白入门指导手册

目录 1,创建集成测试模块且分析源文件 2,设置测试环境 3,TIE界面设置相关函数 4,SCE界面增加用例 5,编辑数据 6,用例所对应的测试函数序列 7,添加 work task 函数 8,为测试场景添加函数 9,为函数赋值 10,编辑时间序列的数值 11,执行用例 12,其他注意事项…

C++的链接指示extern “C“

目录 链接指示extern "C"A.What(概念)B.Why(extern "C"的作用)C.How (如何使用链接指示extern "C") 链接指示extern “C” A.What(概念) extern&quo…

Python每日一题:回文数

题干 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文&#xff0…

各种机器学习模型

一、监督学习 线性回归(Linear Regression) 多项式回归(Polynomial Regression) 岭回归(Ridge Regression) Lasso回归(Lasso Regression) 弹性网络回归(Elastic Net Reg…

AI基于大模型语言存在的网络安全风险

目的: 随着大语言模型(LLM)各领域的广泛应用,我们迫切需要了解其中潜在的风险和威胁,及时进行有效的防御。 申明: AI技术的普及正当的使用大模型技术带来的便利,切勿使用与非法用途&#xff…

鸿蒙开发:Universal Keystore Kit(密钥管理服务)【获取密钥属性(ArkTS)】

获取密钥属性(ArkTS) HUKS提供了接口供业务获取指定密钥的相关属性。在获取指定密钥属性前,需要确保已在HUKS中生成或导入持久化存储的密钥。 开发步骤 指定待查询的密钥别名keyAlias,密钥别名最大长度为64字节。调用接口[getKeyItemProperties]&…

MongoDB教程(七):mongoDB分片

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 文章目录 引言MongoDB 分…

书生大模型第三关-Git基础

1.任务1: 破冰活动:自我介绍 目标: 每位参与者提交一份自我介绍。 提交地址:https://github.com/InternLM/Tutorial 的 camp3 分支~ 行动: 首先Fork项目到自己Repo中,然后git clone在本地上 然后创建一个…

【Android】活动之间的穿梭

引入 在活动的初学建立了一个简单的活动,但只有一个活动不是过于简单,在你使用手机的时候按下一个按钮可能会跳转到下一个界面,此时就是活动之间的穿梭:使用Intent在活动之间穿梭 Intent:是android程序中各组件之间进…

Android Media3 技术应用详解

1、音视频基础 一个简单的音视频链路如下: 1)采集,音视频经过采集后分别生成音频流和视频帧,音频是流式的物理上没有帧的概念,但为了数据处理的方便实际数据处理中引入了音频帧的概念,一般中间插入静音数据…

《学会 SpringBoot · 定制 SpringMVC》

📢 大家好,我是 【战神刘玉栋】,有10多年的研发经验,致力于前后端技术栈的知识沉淀和传播。 💗 🌻 近期刚转战 CSDN,会严格把控文章质量,绝不滥竽充数,如需交流&#xff…

元宇宙深入解析

元宇宙(Metaverse)是一个新兴的概念,它激发了技术专家、艺术家和商业领袖的无限想象。它代表着数字互动的新前沿,提供了一个平行的数字宇宙,用户可以在其中实时互动,超越物理世界的限制。 元宇宙是什么&am…

一五六、Node+Vue 使用七牛上传图片,并配置个人域名

1. 七牛云ak/sk获取 点击注册🔗开通七牛开发者帐号如果已有账号,直接登录七牛开发者后台,点击这里🔗查看 Access Key 和 Secret Key 2. Node.js获取七牛token 安装qiniu npm install qiniu创建空间 Node获取token const qi…

美国INSTRUMENTS的L2/L6/L10/L20/L50线性放大器与ATA-L水声放大器

一、企业背景: Aigtek是一家来自中国的专业从事测量仪器研发、生产和销售的高科技企业。公司主要研发和生产功率放大器、功率放大器模块、功率信号源、计量校准源等产品。核心团队主要是来自西安交通大学及西北工业大学的专家教授等联合组成研发团队,目前…

QT开发笔记:信号和槽

乱码问题: 出现乱码问题原因只有一个:就是编码方式不匹配!!! 中文常见汉字4K,算上各种生僻字差不多六万字 仍然使用一个大表格,给每个汉字,分配一个整数即可。 字符集~~表示汉字的字符集&#…

FPGA实训报告DAY 1(Verilog HDL)

实习日志与总结 日期:2024 年 7 月 10 日 星期三 姓名:XXX 一、实习日志 上午 9:00 - 9:30 按时到达工位,参加部门早会,了解了今天的实习任务和目标,即初步学习 FPGA 简介和 Verilog 基础语法知识。 9:30 - 10:30…

LeetCode-随机链表的复制

. - 力扣(LeetCode) 本题思路: 首先注意到随机链表含有random的指针,这个random指针指向是随机的;先一个一个节点的拷贝,并且把拷贝的节点放在拷贝对象的后面,再让拷贝节点的next指向原链表拷贝…

免分助手神器-交管12123学法减分模拟考试题目及答案 #经验分享#其他

“驾照学法减分”为驾驶人提供了一种积极参与交通安全事业、减缓驾驶证扣分的方式,有益于促进驾驶人形成遵守交通规则、规范驾驶行为的良好习惯,提高道路交通安全意识和素养。然而,持有人仍需严格遵守道路交通安全法律法规,减少交…

1.MQ介绍

MQ 消息队列,本质是一个队列,先进先出,只不过队列中存放的内容是message而已。 为啥学习MQ 1.流量消峰 如果一个订单系统最多每秒能处理一万次订单,正常情况下我们下单1秒后就能返回结果。但是在高峰期,如果有两万…

VsCode远程ssh连接失败:Could not establish connection to XXX

一、问题描述 在VsCode中按下"F1",选择Remote-SSH:Connect to Host 选择一个已经配置好的SSH主机,比如我选择的是192.168.0.104: 结果提示:Could not establish connection to XXX 二、解决方法 观察VsCode的输出信息…