Linux下如何搭建stm32開發環境
Linux對于開發者來說真的是一個非常好的系統,為開發者來說應該不陌生,通常我們在Windows下開發stm32很方便,有非常多的工具,IDE等支持,同樣是操作系統,Linux開發STM32也一點不會差。
本文引用地址:http://www.j9360.com/article/201608/295191.htm1.使用makefile
2.使用eclipse
3.使用stm32cubemx+sw4stm32
4....
有大神使用第一種,本人對makefile一知半解,拿不出手。第二種,windows下可以使用eclipse開發,eclipse有linux版本,所以應該也是可以的,不過本人并沒有試過。這里要說的就是第三種,當然除了這些,像Mbed之類的在線開發工具,只要有網,無論什么平臺都能開發的就不說了。
stm32cubemx相信大家都已經很熟悉了,st推出的基于hal庫的圖形化配置和代碼生成工具,不記得從哪個版本開始,這個工具添加了對linux的支持,st大力發展linux用戶的野心昭然可見。除此之外,st還和ac6合作推出了stm32 ode,即sw4stm32,一款免費的可開發stm32的集成開發工具。sw4stm32是基于eclipse開發的,打開后的界面和eclipse基本完全一樣,也同時支持windows和linux兩種版本,這也說明了第二種方法是可行的。下面真正開始開發環境搭建工作:
1.準備工作
下載stm32cubemx:http://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-configurators-and-code-generators/stm32cubemx.html
下載sw4stm32:http://www.openstm32.org/Downloading+the+System+Workbench+for+STM32+installer
這兩個軟件都需要j**a運行時環境(JRE),所以需要先安裝好JRE,這里就不講了,百度一下都有。

2.安裝
其實這兩個軟件安裝方式做得很類似windows下的安裝了,解壓雙擊即可安裝,不過既然用了linux系統,就允許我裝一下逼,用命令行來安裝。
安裝步驟:
1.完成前面的下載后得到兩個文件:
en.stm32cubemx.zip install_sw4stm32_linux_64bits-v1.8.run
首先解壓壓縮文件包,
unzipen.stm32cubemx.zip
得到
Readme.html
SetupSTM32CubeMX-4.15.0.exe
SetupSTM32CubeMX-4.15.0.app
SetupSTM32CubeMX-4.15.0.linux
四個文件,exe后綴是windows下的安裝文件,很熟悉了,.linux后綴就是linux系統的安裝文件,此處用這個文件安裝,(前面已經說過,可以直接雙擊安裝),直接執行該文件:
./SetupSTM32CubeMX-4.15.0.linux
(如果出錯,查看文件是否有執行權限,加上權限后再執行)
效果如圖:

此時就會跳出圖形安裝界面,

這個界面都很熟悉了吧,和windows下一樣,按照提示一步一步安裝就可以了,甚至可以一路next到底就行。如果雙擊安裝,會直接來到這一步,后面的步驟省略!

到這里,安裝就完成了,再安裝文件夾下找到STM32CubeMX文件雙擊,或者通過命令行啟動該文件,就可以打開STM32CubeMX軟件,見到我們熟悉的界面,使用方法和windows下一模一樣,

安裝好相應的庫之后就可以建立工程了,不過我們還沒有開發環境,所以現在先安裝開發環境:SW4STM32軟件:
執行命令
chmod+x install_sw4stm32_linux_64bits-v1.8.run
給install_sw4stm32_linux_64bits-v1.8.run添加執行權限,可能需要超級權限,切換到root用戶或者命令前加sudo執行,然后該文件就有了執行權限(前面多了x,顏色變了)

然后執行文件
./install_sw4stm32_linux_64bits-v1.8.run
開始安裝,然后一路next,可以選擇自定義安裝路徑,期間有可能需要輸入root用戶密碼,安裝過程和windows基本一樣




出現這個界面的時候,恭喜,安裝完成了!!!


這個界面和eclipse完全一樣的,喜歡eclipse的會比較習慣這個,不過更方便的是直接安裝eclipse下的插件。
現在STM32CUBEMX和SW4STM32都安裝好了,接下來建一個工程測試一下,手邊剛好有一塊Nucleo-F429ZI的開發板,就用這塊板來測試,用Cube新建工程應該都熟悉了,這里就不詳細描述了



一般習慣不勾選Generate Under Root,這樣文件結構更合理

生成工程后有這么些文件,然后用sw4stm32打開:
選擇File->Import->General->Exist Project intoWorkspace

選擇剛剛生成的工程的文件夾,Finish

編譯一下工程,沒有錯誤,沒有警告,然后添加幾行測試代碼:

然后編譯,運行,就可以看到板子上LD2藍色LED以1 Hz的頻率閃爍,電腦上打開串口助手,就能接收到板子發送過來的測試信息,如下圖所示

至此,說明linux下編寫stm32程序的環境已經完全搭建成功,并且成功創建了第一個可以運行的測試程序,接下來,就可以愉快的開發自己的stm32應用程序啦
評論