我的開發環境是在 Windows 下建立,以 DOS command line 為主,再搭配 eclipse 作為編輯器和整合開發工具。
1.1 編譯工具
- GCC ARM Toolchain ( download page ): 下載最新 win32 版本的 zip 檔,解壓後放在自己習慣的目錄即可。我是建了一個 D:\ARM-SDK 目錄放 ARM 的開發工具,將 Toolchain 解壓縮到 D:\ARM-SDK\gcc-arm 中。
- Cygwin : 需要裡面的 make, bash 和 shell 命令。將 view 切到 Category ,預設會裝 Base ,只要再增加 Devel 下的 make 就足夠了。
- eclipse ( download page ): 下載 Eclipse IDE for C/C++ Developers 32bit 。雖然現在大家的 Windows 都是 64bit 的,但是 eclipse 是用 Java runtime environment (JRE) 上執行的,而大多數安裝的 JRE 都是 32bit 版本。為了必免不必要的麻煩,還是選擇 32bit 的就好。下載後解壓放在 D:\ARM-SDK\eclipse\ 中。
1.2 Debug 工具
- OpenOCD ( download page ) : OpenOCD 是一款 On-Chip Debug 工具,能經由 JTAG 或 SWD 介面連上 ARM 進行 debug 工作,也具備燒錄程式的能力。支援不少 Adapter,包含 STM32 使用的 ST-LINK V2。重點是它是 Open source 的免費軟體,適合個人開發使用。下載後解壓到 D:\ARM-SDK 中。
- Putty ( downlaod ) : Telnet 和 COM Port 的連線工具,用來連上 OpenOCD 和看 UART 的訊息。下蛓放在 D:\ARM-SDK 中。
1.3 STM32 開發板及相關工具
使用
NUCLEO-F446RE ( MCU :
STM32F446RE ) 做為開發板,選擇 NUCLEO 系列有幾個原因:
- 自帶一個 SWD 和 Virtual Com Port ,不需再另外準備 ST-LINK 和 USB 轉 serial port 的板子。
- Arduino compatible connector ,可使用 arduino shield 和 X-NUCLEO 擴充板,未來擴充較方便。
- 考慮到以後可能會想玩 mbed OS
- 選 F446RE 是因為 NUCLEO 系列價錢差不多,就選個 MCU 效能最好的
NUCLEO-F446RE 在台灣不容易買到,可以考慮在網路上購買,如
digikey 或
貿澤 。或選擇其他較容易買到的 NUCLEO 開發板,如
NUCLEO-F103RB、
NUCLEO-F401RE。
STM32 的開發資料很容易取得,只要在開發板和 MCU 的產品頁面點選 Design Resources 就能找到完整的資料。
1.4 建立 DOS 開發環境
- 在 D:\ARM-SDK\ 建立一個 gccenv.bat 來設定環境變數,將使用到的工具程式加到 PATH 中。
@echo off
set ARM_SDK_PATH=D:\ARM-SDK
set PATH=%windir%\system32
set PATH=%ARM_SDK_PATH%\gcc-arm\bin\;%PATH%
set PATH=%ARM_SDK_PATH%\gcc-arm\arm-none-eabi\bin\;%PATH%
set PATH=%ARM_SDK_PATH%\cygwin\;%PATH%
set PATH=%ARM_SDK_PATH%\openocd-0.9.0\bin\;%PATH%
set PATH=c:\Program Files (x86)\STMicroelectronics\STM32 ST-LINK Utility\ST-LINK Utility\;%PATH%
title ARM-SDK
- 將開始功能表中,"附屬應用程式"裡"命令提示字元"的捷徑複製一份到 D:\ARM-SDK\
- 修改 "Command Prompt.lnk" 的內容,開啟時自動執行 gccenv.bat 並將開始位置設到專案的工作目錄( ex: D:\STM32 )。以後直接雙擊 Command Prompt.lnk 就能快速打開 DOS 開發環境。
- 雙擊 Command Prompt.lnk 打開 DOS 開發環境,執行 make -v 確認是否設定正確。
1.5 其他工具
以下列出一些軟體開發會用到的工具和相關資源。
1.6 參考資料
留言
張貼留言