ST 裝置簡易檢測

ST 裝置簡易檢測

ST 出品的 Cortex-M STM32 系列晶片,由於 IP 產品線齊全、文件豐富、並不斷上架配備有各款晶片型號的測試開發主板,非常受到 makers、學校、研究機關與業界公司歡迎。由于這類開發套件相當簡單容易上手又價格廉宜,目前也算得上是業界標準,可以直接用於需求總量不大的量產產品內,大量需求當然還是自行製作專用的控制板更能切合需求。因為這些開發板幾乎都附帶有原廠燒錄器 ST-Link,所以基本上應該算是隨插即用,但是偶而也可能會遇到一些小狀況,例如 PC 開發機台連接不到開發板硬體之類的情形。

在此提供幾項簡單的檢測方法,快速幫你尋找可能的問題來源。

  1. 首先是當然是要確認你的開發主機能夠抓得到 USB 硬體裝置,可以參考這一篇 簡易識別 USB 裝置

  2. 如果驅動程式都裝好了,可是在某個 IDE 或是軟體開發工具中卻發生連接錯誤,可以採用下列方式排除問題看看。ST 的開發套件幾本上都自帶了 ST-Link 燒錄除錯器,所以先到 ST 官網瀏覽 ST-Link 工具軟體 看看有沒有滿足您需求的搭配軟體工具。最主要的有

  • STSW-LINK009 Windows USB 驅動程式。因為 Windows USB 架構隨著作業系統版本有重大改變,所以如果要在 Windows 上進行開發,最好還是採用最新版本的驅動程式,以免遇到奇怪的問題。

  • STSW-LINK007 韌體更新,用以更新 ST-Link 燒錄器上的韌體。基本上出廠時預燒的韌體版本也很足夠,但或許更新版本後會有某些驚喜的功能也說不定。現在安裝包中已經透過 Java binaries 方式支援跨平台,但內附的 Windows EXE 依然是最穩定、方便的選擇。

  1. 如果是在 Linux / Mac 等作業系統上工作,強烈建議安裝這套 Open source STM32 MCU programming toolset 工具程式,最好可以透過系統套件安裝管理命令 (apt, homebrew...) 等方式下載即可快速備妥上手。我們出貨測試時也是夠過這個工具產生 test reports。

ST-LINK 旁有一顆滿大顆的狀態提示三色 LED,可以簡便地觀察燈號顯示狀態來理解 ST-LINK 的目前運行狀態,燈號代表意義如下:

  • LED is blinking RED: the first USB enumeration with the PC is taking place. If it keeps blinking RED, maybe the USB driver is NOT found.
  • LED is RED: communication between ST-LINK/V2 and the PC is established (end of enumeration).
  • LED is blinking GREEN/RED: data are being exchanged between the target and the PC.
  • LED is GREEN: the last communication has been successful.
  • LED is ORANGE: ST-LINK/V2 communication with the target has failed.