-
1 # 小小極客迷
-
2 # 玩轉嵌入式
問STM32相關的使用軟體,說明學習思路很正確,微控制器是一門動手課程,沒有必要抱著書去看,而是要去實際動手操作,遇到具體問題了才去查詢資料解決問題。在學習STM32的過程中會用到以下軟體。
1.程式設計環境:Keil MDKSTM32微控制器需要程式設計,就必須用到程式設計環境,KEIL是應用最廣泛的STM32微控制器程式設計環境,該軟體介面友好、易操作、使用者體驗很好,很受歡迎。但是該軟體存在版權問題,在商業使用上可能需要購買license。
其實,支援STM32程式設計的軟體非常多,在ST的官網列出了足有15個之多,大部分都沒有聽說過,大家可以根據自己的實際使用情況去選用。
2.圖形配置軟體:STM32CUBE這個是官方推出的視覺化圖形配置軟體,透過該軟體可以具體的檢視每一款微控制器的引腳情況、複用功能情況、片上資源等,所有功能一目瞭然,就跟C8051F的交叉配置軟體一樣。但是目前該軟體還不支援程式碼生成功能。新增該功能的呼聲很高,希望官方能聽到及時推出。
3.原理圖設計軟體:Altium Designer學習微控制器是為了做產品,做產品必然要畫原理圖,這時就要用到原理圖和PCB設計軟體。這種軟體在國內比較流行的是Altium Designer、Cadence、Mentor等。使用這種軟體的目的是為了根據產品需求設計原理圖從而設計PCB做出板子除錯產品。大家可以根據自己的喜好和資源選用使用哪種軟體。
4.其他輔助軟體在學習微控制器和設計電子產品的過程中,根據不同的功能會用到各種各樣的軟體。在除錯串列埠通訊時要用到串列埠除錯軟甲,在設計點陣時要用到取字模軟體,在除錯藍芽功能時要用到藍芽除錯助手,在下載程式時可能用到MCUISP或者STVP等燒錄軟體。總之,會有比較多的軟體,這個在用到該功能時才去使用。
在學習之處,先把跟微控制器緊密相關的軟體,如程式設計環境軟體使用起來。
-
3 # 魚鷹談微控制器
首先說些最基本的軟體,也是必須的、最低配的。
MDK 軟體,即 KEIL:
這個軟體主要就是用來編輯、編譯、下載程式碼的,這個開發平臺一定要好好研究一下,因為這裡集成了很多強大的除錯功能,掌握了這些功能將極大的方便你尋找 BUG ,因為在軟體開發方面,沒人能說自己寫的程式碼一定沒有問題,所以掌握好的除錯手段就成了關鍵。STM32 除錯機制可以線上實時觀察資料的變化,設定斷點,單步執行,指令跟蹤等功能,而結合 MDK 軟體就能更方便的使用這些除錯功能。現在看一下這個平臺的輸出功能:
這樣你就不需要串列埠除錯助手了!
注意,如果你需要同時進行 51 和 STM32 開發的話,可以安裝 KEIL 4 的某一個版本,這個版本能同時相容 51 核心 和 ARM 核心。如果說不想用 KEIL 4,想用 KEIL 5,那麼你就可以同時安裝具備 51 核心開發的 KEIL 4 版本和具備 ARM 核心開發的 KEIL 5 版本。
偵錯程式:
有了 MDK 軟體還不行,你還必須要一個偵錯程式,比如 ST-LINK(上圖為ST-LINK),J-LINK 等,這樣你才能下載、除錯程式。而這個偵錯程式還需要驅動才能工作,所以你必須安裝一個對應的驅動才行。而 ST-LINK 驅動可以在 KEIL 安裝目錄下找到,或者自行在網上下載即可。
PDF 閱讀器
微控制器開發必然需要電路板原理圖才能進行開發,絕大部分情況下別人是不會提供完整工程圖的,而是將原理圖轉為 pdf 供人使用,所以需要一個 PDF 閱讀器,這裡推薦 福昕的,還不錯。而且作為一個軟體開發的人來說,只需要一個 PDF 原理圖就夠了,不必安裝龐大的畫電路板的軟體。
以上就是一個軟體開發人員最基本的軟體配置,還是很簡單的。
現在說一下輔助軟體:
Altium Designer
這個軟體是用來畫電路板的,如果說你有一塊板子的完整工程,那麼你就可以用它看佈線之類的,非常直觀。但這個軟體很龐大,好幾個 G,如果你自己不畫電路板的話,建議還是別安裝了。
ST-LINK Utility
這個是用來下載程式的,使用 ST-LINK,這個軟體和 MDK 下載不同的是它是一款專業的下載工具,所以它可以下載各種型別的程式檔案,比如 bin、hex 等,當然也能線上修改微控制器的資料。
mcuisp.exe
這個軟體用來串列埠下載的,如果說你一時之間沒有偵錯程式下載程式,那麼你就可以使用這個軟體下載 STM32 微控制器,因為 STM32 是可以透過串列埠下載的。
串列埠除錯助手
這個是用來進行串列埠除錯的,透過串列埠和微控制器通訊,接收和傳送串列埠資料。同樣的,這個軟體需要一個串列埠模組,一般是 USB 轉串列埠,同時還要安裝對應的驅動才能進行工作,不同的 USB 轉串列埠需要不同的驅動,這個可以透過驅動精靈之類軟體自動檢測安裝。
網路除錯助手
這個用於網路除錯的,如果說你要聯網,那麼就需要這個助手了。
虛擬示波器
有的時候可能需要觀察資料的持續變化情況,這個時候就要用虛擬示波器了,示波器有串列埠型,也有 J-LINK 型的、或者其他通訊方式。如果說你手上只有串列埠,那麼可以安裝串列埠型的示波器,如果是 J-LINK,那推薦使用 J-Scope。而如果說你不想用額外的安裝這些軟體,那麼你可以使用 MDK 自帶的邏輯分析儀進行波形觀察。比如這個:
Bus Hound
這個軟體用於 USB 匯流排監控的,如果你的開發和和 USB 有關,那麼你可以用這個軟體進行資料觀察。
-
4 # 科技電小二
想學習微控制器開發,最主要是熟悉stm32的軟體開發環境,目前stm32的開發環境,主流是KEIL和IAR,當然主要是windows版本執行。
兩個開發環境都是目前的主流,都用的很多,而且這兩種開發環境實際上差異不大,學好一個即可。我個人常用keil,雖然keil的版本很多,因為我常用的是STM32F1,所以KEIL4,就能滿足需求。
想完整完成一個Stm32的工程開發過程,需要學會新建工程,這個是微控制器開發工具基礎操作。
除此之外。還需要學會使用Keil進行模擬,寫程式碼肯定會遇到各種問題。怎麼找到問題造成的原因。就需要模擬查看了程式碼執行情況,當然也有其他的除錯手段,比如串列埠列印資料等。都可以整合運用。
除此之外,St官方推的stm32cubeMax,也是很好的輔助工具,可以幫助開發者配置相關外設的基本使用,並生成程式碼,提高工作效率。
這是開發程式設計環境。除此之外,還經常用到一些其他的小工具。如串列埠助手,藍芽串列埠除錯,進位制轉換等等。
STM32開發除了需要必須的開發環境,還需要開發除錯工具,常見Jlink,也有cmsis DAP,這部分沒有什麼要求,隨公司要求即可。
回覆列表
想學習並且玩轉stm32,首先至少要有一個stm32的最小系統板吧。
Altium Designer
Altium Designer是一款將原理圖設計、電路模擬、PCB繪製編輯、拓撲邏輯自動佈線、訊號完整性分析和設計輸出融合一體的軟體,推薦軟體主要是用來畫stm32原理圖和PCB設計圖,先弄出一塊stm32的開發板。
Keil
Keil是嵌入式處理器開發軟體,一個IDE軟體,可以完成stm32程式碼的編輯、編譯、連線、除錯、模擬等整個stm32開發流程。
注意:我指的Keil是MDK-ARM,這個是對應stm32開發的開發套件。
Source Insight
Source Insight是一個面向專案開發的程式編輯器和程式碼瀏覽器。Keil軟體編輯程式碼功能實在是太簡單了,對於複雜點的專案,效率比較低。用這個軟體用來編輯程式碼,提升不小的效率。
串列埠除錯助手
串列埠助手是一款透過電腦串列埠(現在都用usb轉串列埠方式)收發資料並且顯示的應用軟體,一般用於除錯stm32串列埠的通訊資料收發。
LCD點陣取模軟體
LCD點陣取模軟體是一款對字元進行處理的軟體,主要是應用在點陣屏的字元上。
TCP/UDP除錯助手
TCP/UDP除錯助手是一款除錯TCP/UDP資料收發工具,主要針對具有網路功能的stm32系列的除錯。