高集成度编程工具软件STM32代码烧录编程实战

发布者:会哭的蓝精灵最新更新时间:2023-09-12 来源: elecfans关键字:高集成度  STM32 手机看文章 扫描二维码
随时随地手机看文章

凡用过STM32的用户应该知道,当你完成程序调试后,想对STM32芯片进行程序代码烧录编程的话可以有多种方式。若通过调试接口【JTAG/SWD】来烧写程序,一般要使用STVP或STLinkUtility工具软件来完成;若通过UART接口来烧写程序,往往要下载个基于PC 端的flash烧录工具软件STM32 Flash loader demo配合;若通过USB接口来烧写程序,往往需下载DfuSe USB 固件升级工具软件来实现。如今ST推出了新的高集成度编程工具软件STM32CubeProgrammer,以后就不用这么麻烦了,因为它同时支持上述三类编程接口,而且还兼具其它功能。


一、STM32CubeProgrammer具备如下功能特性:

1、可对片内flash进行擦除或编程以及查看flash内容;

2、支持S19,HEX,ELF及BIN等格式的文件;

3、支持调试接口或bootloader接口;

---STLINK 调试接口【JTAG/SWD】

---UART或USBDFU bootloader 接口

4、支持对外部的存储器的擦除或编程;

5、支持STM32芯片的自动编程【擦除、校验、编程、选项字配置】;

6、支持对STM32片内OTP区域的编程;

7、既支持图形化界面操作也支持命令行操作;

8、支持对STLINK调试器的在线固件升级功能;

9、配合STM32 Trusted Package Creator tool实现固件加密操作;

10、支持WINDOWS,LINUX,MAC OS多种操作系统;


二、与STM32CubeProgrammer有关的几个用户手册

与STM32CubeProgrammer操作有关的用户手册目前有DB340,UM2237,UM2238等.可以前往ST官方网站www.st.com自行搜索下载。

三、操作界面演示


四、几点提醒

针对上述的几种接口及编程模式,我用多块STM32开发板连接测试过,都是OK的。不过有几点提醒跟大家分享下。

1、安装STM32CubeProgrammer前需安装或升级JAVA,安装过程中会有提醒。


2、使用STM32CubeProgrammer通过STLINK连接目标板时,有时可能会出现连接不上的情况。除了硬件连接因素外,还有就是你手头的STLINK内部的固件版本偏低,目前需要手动升级,这可以借助STM32CubeProgrammer工具进行在线升级,升级时可能需要重新插拔一两次。


此时你点击上图中右下角的Firmware upgade后出现下面的界面:

然后你点击Open in update mode,直到出现firmware version的版本后,Upgrade变成有效时就可以进行STLINK的固件在线升级了,升级完成后即可再次连接。再次连接时建议先点击SLTINK序列号后面的那个环形循环箭头【如下面箭头所指】,如果能显示序列号,此时就可以Connect了。


3、使用USB DFU模式进行程序烧录时,如果之前安装过STM32 DFU编程工具,记得先卸载之前的STM32 DFU驱动,否则会出现连接不上的情况。卸载之后再运行安装目录下的STM32Bootloader.bat文件。【特别提醒!】

4、其它更多使用方法及细节可以参考上面提到的用户手册,尤其是UM2237.至于该工具的下载可以前往官方网站www.st.com 直接搜索STM32CubeProgrammer即可找到相关资料。


关键字:高集成度  STM32 引用地址:高集成度编程工具软件STM32代码烧录编程实战

上一篇:解读关于STM32问题集之BOOT0和BOOT1的作用
下一篇:什么是stm32看门狗?独立看门狗和窗口看门狗工作原理解析

小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved