這是STM通用的刷固件方法,不僅僅適用於.Net Micro Framework,支持我們當前所有板子,包括阿波羅、探索者和雅典娜三個系列。
單片機可以看做是CPU、內存和硬盤的集合體,其中的Flash就是硬盤,RAM就是內存。我們所謂的刷機(刷固件)就是把系統(固件)安裝(刷)到單片機上。固件一般是bin文件,也有hex。傳統單片機程序,系統程序和用戶程序都混在一個bin里面,而我們的MF,一般刷TinyCLR.bin,然后用戶程序通過另外的軟件刷進去(比如MFDeploy和vs2010)。
一 般的單片機都有專用的固件燒寫設備,比如51的編碼器,TI和STM的JLink和ULink等。探索者一號二號上都有一個20P(10*2)的方形插 座,那就是給JLink等用的JTAG接口,我們用C寫單片機程序,或者移植MF的時候,用的就是它,方便刷寫,還可以調試。只是這些設備都不便宜,最便 宜的JLink也都七八十塊錢,所以一號二號都沒有配。
STM單片機為什么能通過串口刷寫固件呢?其實那是因為STM單片機片內Flash里面有一段只讀的程序,稱為系統程序,那是不可覆蓋的,它就是專門用於通過串口讀寫片內Flash。一般STM開發板上都會有Boot0/Boot1兩組跳線,每一組有3根針,跳線帽連接其中兩根,另外一根空出來。我們只需要把Boot0的跳線帽換到另一邊,中間那根針連接本來空着的那一根,即可設置單片機從系統程序啟動。
(注意:以下所有接線操作,包括跳線操作,都必須在斷電的情況下進行,最后才接上供電)
探索者一號的Boot跳線在JP8/JP9(如下圖),默認兩個跳線都是接右邊兩針,JP8(上面一個)是Boot0,把跳線帽改為接左邊兩針。(記住原來的接法,刷了固件以后要復原的)
探索者二號的Boot跳線很容易找,靠近四個按鈕的那個是Boot0,板子上也寫有,默認接左邊兩針(值為0),現在改為右邊兩針(值為1)
准備好開發板以后,下面就是准備串口線,連接上電腦。而因為我們現在的電腦一般已經沒有串口,用的是USB轉串口線,這就涉及一個驅動程序的問題。不同廠家的USB轉串口線有不同的驅動程序。
探索者一號USB串口線驅動
探索者二號USB串口線驅動
串口線連接開發板和電腦,其中探索者一號還需要接上USB線來給板子供電,二號的USB串口線自身就有供電功能,接右邊的USB方口(靠近邊角)。電腦發現新設備后,即可開始安裝驅動程序。安裝完成后,記得到計算機管理里面查看串口COMx中的x是幾,后面要用到。
下一步我們來安裝“STM32串口ISP下載軟件” Flash_Loader_Demonstrator_V2.1.0_Setup
啟動軟件,選擇COM口后,一路Next
到這里進入了主界面, 開始刷機。選擇下載到設備,選擇固件,一般做一個全局擦除(藍色框框),然后下載完成后做一下驗證。
到此,刷機完成!不過我們還需要把Boot0改回來到原來的接法,(一定要記得先斷電),這樣子單片機才會從我們刷進去的固件啟動。
單片機可以看做是CPU、內存和硬盤的集合體,其中的Flash就是硬盤,RAM就是內存。我們所謂的刷機(刷固件)就是把系統(固件)安裝(刷)到單片機上。固件一般是bin文件,也有hex。傳統單片機程序,系統程序和用戶程序都混在一個bin里面,而我們的MF,一般刷TinyCLR.bin,然后用戶程序通過另外的軟件刷進去(比如MFDeploy和vs2010)。
一 般的單片機都有專用的固件燒寫設備,比如51的編碼器,TI和STM的JLink和ULink等。探索者一號二號上都有一個20P(10*2)的方形插 座,那就是給JLink等用的JTAG接口,我們用C寫單片機程序,或者移植MF的時候,用的就是它,方便刷寫,還可以調試。只是這些設備都不便宜,最便 宜的JLink也都七八十塊錢,所以一號二號都沒有配。
STM單片機為什么能通過串口刷寫固件呢?其實那是因為STM單片機片內Flash里面有一段只讀的程序,稱為系統程序,那是不可覆蓋的,它就是專門用於通過串口讀寫片內Flash。一般STM開發板上都會有Boot0/Boot1兩組跳線,每一組有3根針,跳線帽連接其中兩根,另外一根空出來。我們只需要把Boot0的跳線帽換到另一邊,中間那根針連接本來空着的那一根,即可設置單片機從系統程序啟動。
(注意:以下所有接線操作,包括跳線操作,都必須在斷電的情況下進行,最后才接上供電)
探索者一號的Boot跳線在JP8/JP9(如下圖),默認兩個跳線都是接右邊兩針,JP8(上面一個)是Boot0,把跳線帽改為接左邊兩針。(記住原來的接法,刷了固件以后要復原的)


探索者二號的Boot跳線很容易找,靠近四個按鈕的那個是Boot0,板子上也寫有,默認接左邊兩針(值為0),現在改為右邊兩針(值為1)


准備好開發板以后,下面就是准備串口線,連接上電腦。而因為我們現在的電腦一般已經沒有串口,用的是USB轉串口線,這就涉及一個驅動程序的問題。不同廠家的USB轉串口線有不同的驅動程序。
探索者一號USB串口線驅動
-
- 探 索者一號USB轉串口線驅動.rar (115.01 K, 下載次數:2)
探索者二號USB串口線驅動
-
- 探 索者二號USB串口線驅動.zip (2.26 M, 下載次數:0)
串口線連接開發板和電腦,其中探索者一號還需要接上USB線來給板子供電,二號的USB串口線自身就有供電功能,接右邊的USB方口(靠近邊角)。電腦發現新設備后,即可開始安裝驅動程序。安裝完成后,記得到計算機管理里面查看串口COMx中的x是幾,后面要用到。


下一步我們來安裝“STM32串口ISP下載軟件” Flash_Loader_Demonstrator_V2.1.0_Setup
-
- Flash_Loader_Demonstrator_V2.1.0_Setup.rar (7.54 M, 下載次數:4)
啟動軟件,選擇COM口后,一路Next








到這里進入了主界面, 開始刷機。選擇下載到設備,選擇固件,一般做一個全局擦除(藍色框框),然后下載完成后做一下驗證。


到此,刷機完成!不過我們還需要把Boot0改回來到原來的接法,(一定要記得先斷電),這樣子單片機才會從我們刷進去的固件啟動。