版權聲明:本文爲博主原創文章,未經博主容許不得轉載。git
1.下載eclipse須要的運行環境,JDK/JRE.github
在http://wiki.eclipse.org/Eclipse/Installation中,找到最新的eclipse版本須要的Java 版本,而後去相應網站下載JAVA。這裏我用的是Eclipse 4.5(Mars),它須要JAVA 7。windows
2.下載eclipseeclipse
在eclipse的官網下載 Eclipse IDE for C/C++ Developerside
3.下載bleeding-edge-toolchain,openOCD,windows-build-tool。工具
在網站http://www.freddiechopin.info/en/download,找到download,選擇bleeding-edge-toolchain,下載最新的便可。網站
以後接着點擊download,下載OpenOCD,一樣下載最新的。ui
這個網站上提供的windows-build-tool版本太老,沒法使用,建議到http://gnuarmeclipse.github.io/windows-build-tools/下載最新的windows-build-tools。.net
4.下載eclipse GNU ARM plug-in插件
在https://sourceforge.net/projects/gnuarmeclipse/上下載最新的便可。
5.下載Zadig
在http://zadig.akeo.ie/上下載便可
目前爲止,全部須要的都下載完了,解壓所有,除了eclipse plug-in。
6.調試
插入開發板,我這裏用的是原子的mini版,打開zadig,選擇 Options->list all devices,在下拉菜單中選擇 jlink。箭頭右邊選擇WinUSB,單擊 Replace Driver。
我這裏已經改過了,因此兩邊都是WinUSB。
7.安裝/啓動eclipse。安裝gnu arm plug-in
安裝jdk,以後直接進入eclipse目錄,啓動eclipse。以後安裝插件。選擇Help->install new software
選擇Add,Location選擇插件的路徑,如上圖中的ilg*.zip,Name隨你,而後OK。以後一路Next下去。
8.新建項目
打開eclipse,選擇File->New->C Project,選擇與你板子匹配的類型,我這裏是STM32F10X C/C++ Project,而後Next,這裏根據實際狀況作相應的改變,注意這裏的參數基本都須要改變,以你實際使用的芯片爲準;在Next,這裏根據你的喜愛設置,我保留了默認的設置;接着Next,這裏通常保留個Debug就好了,下面那個Release能夠勾掉;在Next,這裏的Toolchain Path選擇你下載解壓後的toolchain路徑,我這裏是D:\STM32\STM32-Toolchain\gcc-arm-none-eabi-5_3-160412\bin,點擊Finish。
9.開始工做
項目新建完成後,右鍵項目名,選擇build project。正常狀況下會順利完成。接下來就該把build以後的程序下到stm32裏了。選擇旁邊的三角形,選擇External Tools Configurations。在Program上右鍵選擇New,在Location裏選擇OpenOCD的路徑,以下
在working directory裏選擇項目的debug目錄,以下
在Arguments里根據你用的調試器寫入對應的參數,我用的是jlink,配置以下:
若是你用的是其餘的調試器,你能夠到openOCD的安裝目錄中scripts/interface目錄下着相應的文件。一樣使用的芯片也能夠到scripts/target目錄下找到。配置完成後,點擊Apply,以後點擊Run。一切正常的話,在Console窗口能夠看到已經讀出了芯片的相關信息:
以後繼續點擊剛剛那個圖標旁的三角,在剛剛那個配置上,右鍵選擇duplicate,以後會出現個如出一轍的配置,在新的配置裏將Argument裏最後三行參數刪掉,選擇Apply,以後點擊Run。
10.Debug
選擇工具欄上的蟲子圖標旁的三角,選擇Debug Configurations,在左側右鍵選擇GDB Hardware Debugging,選擇New。選擇Debugger選項卡,在GDB Command裏選擇下載的gnu-arm-none-eabi-gdb的路徑:
在Remote Target裏以下配置:
點擊Apply。在Startup選項卡中以下配置:
而後點擊Apply,最後點擊Debug。在彈出的對話框中選No。
到此,用eclipse調試stm32已經完成。