
說明:
本文原創作者『strongerHuang』
本文首發于微信公眾號『嵌入式專欄』,同時也更新在我的個人網站:EmbeddedDevelop
一、寫在前面
前兩篇文章講述的都是關于ST-Link的一些理論知識,建議初學者看看:
ST-Link資料01_ST-Link介紹,認識各版本硬件及特征
ST-Link資料02_ST-Link固件介紹,及固件命名規則
本文講述的就是實踐內容:升級固件和安裝驅動。這些內容大部分人都沒在意過,這里就帶領大家了解一下。
二、固件升級
升級固件的方法有很多,比如通過STM32CubePro、 MDK-ARM進行升級等。
這些升級方法有什么不同呢? 升級之后對ST-Link有什么影響?
想必有很多人存在疑問,不知道答案。下面羅列一些固件升級方法。
2.1 下載官網固件工具包升級(推薦)
地址: https://www.st.com/en/development-tools/stsw-link007.html

目前(2019年02月)官網最新版本為V2.33.25,包含ST-LINK, ST-LINK/V2, ST-LINK/V2-1, STLINK-V3最新的固件升級工具包。(如果想升級最新的固件,建議到官網下載,其它地方都是集成了這里的工具包)
最新固件(2019年02月):
ST-LINK:V1J13S4.
ST-LINK/V2:V2J33S7.
ST-LINK/V2-1:V2J33M25 (STM32) 或 V2M25S7 (STM8).
STLINK-V3SET:V3J3M2B3S1.
解壓固件升級工具包,可以看到兩種升級工具平臺:Windows和AllPlatforms。

2.1.1 Windows平臺
直接雙擊工具就可運行升級工具,連接ST-Link -> “Device Connect”連接ST-Link設備 -> 點擊“Yes”進入升級。

最后出現“Upgrade is successful”就升級成功了。

提示: 上面以V2版本ST-Link為例,自動識別硬件類型;
2.1.2 AllPlatforms
這是一個基于Java的新GUI,支持Windows、Linux和MacOS操作系統。
因此,需要在你系統中安裝JRE V7u51(或更新版本)。

同樣,出現“Upgrade successful”說明升級成功。
2.2 通過STM32 ST-LINK Utility升級
地址: https://www.st.com/en/development-tools/stsw-link004.html
使用過STM32 ST-LINK Utility的人,基本都知道ST-LINK菜單。通過下面子菜單Firmware update(如下圖),即可進去升級界面。

STM32 ST-LINK Utility是基于Windows平臺的一個編程軟件,通過上述方式進入升級界面和上面Windows平臺一樣。
提示: STM32 ST-LINK Utility工具中集成的ST-Link固件,版本可能不是最新的。
2.3 通過STM32CubeProg升級固件
地址: https://www.st.com/en/development-tools/stm32cubeprog.html
這個STM32CubeProg和上面STM32 ST-LINK Utility類似,都是一個編程軟件,只是這個STM32CubeProg工具中集成的ST-Link升級工具是“全平臺”版本。

同樣,這里的固件也可能不是最新的版本的。
2.4 通過MDK-ARM升級固件
Project -> Options for Target -> Debug -> Setting可以看見如下界面:

這里集成的升級工具是基于Windows平臺,所以,點擊Update之后,和上面Windows平臺操作方式一樣。
像這種開發STM32的IDE中很多都集成了這個升級工具,比如EWARM同樣也有。
同樣,這里的固件也可能不是最新的版本的。因此,推薦使用第一種方法下載官網最新的固件。
2.5 升級提示
A.通過類似STM32CubePro集成的固件不一定是最新的;
B.ST-Link可以從低版本升級到高版本,也可以從高版本 -> 低版本;
C.ST-Link可以自由升級不影響,如果山寨J-Link升級就需要謹慎。
三、驅動下載安裝
有些人ST-Link不能使用,有可能就是USB驅動有問題導致的。所以,如果你的ST-Link有問題了,可以更新一下驅動,看看是不是驅動導致的。
同樣,ST-Link驅動的安裝方法有很多種,依然建議大家通過下載官方最新的ST-Link驅動。
3.1 下載官方最新驅動
地址: https://www.st.com/en/development-tools/stsw-link009.html

目前(2019年02月)官網最新驅動版本為V2.0.1,基于ST-LINK, ST-LINK/V2, ST-LINK/V2-1, ST-LINK-V3,支持32或64位Windows 7、 8、 10操作系統。
如果連接ST-Link到電腦,在你的設備管理器中出現類似“未知設備”這種情況,可以選擇“更新驅動程序”。

3.2 其他安裝方式
我們上面說了固件升級的多種方式,其實,在STM32 ST-LINK Utility、 STM32CubeProg編程軟件,以及MDK-ARM、 EWARM這類IDE中同樣也集成了ST-Link的USB驅動程序,一般在安裝這些軟件的時候會提示安裝驅動。
如下圖,提示安裝驅動:

安裝成功:

同樣,這些工具中集成的USB驅動不一定是最新的,建議在官網下載最新驅動。
四、說明
1.該文檔僅供個人學習使用,版權所有,禁止商用。
2.本文由我一個人編輯并整理,難免存在一些錯誤。
3.為了方便大家平時公交、地鐵、外出辦事也能用手機隨時隨地查看該教程,該教程同步更新于微信公眾號『嵌入式專欄』,關注微信公眾號回復【ST-Link資料】即可查看全系列教程。
五、最后
我的博客:http://www.strongerhuang.com
我的GitHub:https://github.com/EmbeddedDevelop
我的微信公眾號(ID:strongerHuang)還在分享STM8、STM32、Keil、IAR、FreeRTOS、UCOS、RT-Thread、CANOpen、Modbus...等更多精彩內容,如果想查看更多內容,可以關注我的微信公眾號『strongerHuang』。