凡用过STM32的用户应该知道,当你完成程序调试要对芯片进行程序代码烧录编程的话可以有多种方式。若通过调试接口【JTAG/SWD】来烧写程序,一般要使用STLink Utility或STVP工具软件来完成;若通过UART接口来烧写程序,往往要下载个基于PC端的flash 烧录工具软件STM32 Flash loader demonstrator配合;若通过USB接口来烧写程序,往往需下载USB DfuSe工具软件来实现。如今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、配合STM32Trusted Package Creator tool实现固件加密操作;
10、支持WINDOWS,LINUX,MAC OS多种操作系统;
二、与STM32CubeProgrammer有关的几个用户手册
与STM32CubeProgrammer操作有关的用户手册目前有DB340,UM2237,UM2238.可以去www.st.com自行搜索下载。
三、操作界面展示
四、几点提醒
针对上述的几种接口及编程模式,在安装或使用过程中有几点提醒跟大家分享下。
1、安装STM32CubeProgrammer前需安装或升级JAVA,安装过程中会有提示。
2、使用STM32CubeProgrammer通过STLINK连接目标板时,有时会出现连接不上的情况。除了硬件连线因素外,注意选择正确的调试接口【JTAG或SWD】。
还有就是如果STLINK内部的固件驱动版本偏低的话,也会连接不上。目前需要手动升级,可以借助STM32CubeProgrammer工具进行在线升级,升级时可能需要重新插拔一两次。
此时你点击上图中右下角的Firmware upgade后出现下面的界面:
然后点击Open in update mode,直到出现firmware version的版本后,Upgrade按钮变成有效时就可以进行STLINK的固件在线升级了,升级完成后即可再次连接。再次连接时建议先点击SLTINK序列号后面的那个环形循环箭头,如果能显示序列号,此时就可以Connect了。
3、如果使用USBDFU模式进行程序烧录的话,特别提醒记得先卸载之前的STM32 DFU驱动,否则会出现连接不上的情况。卸载之前的DFU驱动之后再运行安装目录下的STM32Bootloader.bat文件。
4、其它更多使用方法及细节可以参考上面提到的用户手册,尤其是UM2237。至于该工具的下载可以前往www.st.com 直接搜索STM32CubeProgrammer即可找到相关资料。