標籤:
源:ST Visual Programmer批量燒寫教程
參考:為什麼STM8 寫了保護後,用ST Visual Programmer 無法重新燒錄程式?
首先要說下為什麼要建立燒寫工程呢- -原因只有一個。因為你不可能將源碼工程交給別人去幫你燒程式。
- -然後要吐槽下ST官方的IDE。真的。用得我極度不爽。所以後來轉戰IAR。結果發現IAR沒法批量生產- -因為IAR少程式貌似一定要在工程下。不能直接將HEX檔案燒寫進板子裡。所以最後還是要用STVP來批量燒。
首先要準備好你的燒寫檔案。HEX或者S19。檔案。(用IAR或者STVD產生的,前提必須保證你程式沒問題- -這個肯定不用說)。
第一步:然後開啟STVP
。開啟之後是這樣的
第二步:點擊OPTION BYTE 。ROP ON。這個是每次燒寫完將FLASH鎖住。以免別人讀你的IC。
還有如果你晶振是24M的。WAITSTATE 要開啟。然後點File->Save。然後儲存。切記這個儲存的是OPTIOIN BYTE!!如果你時鐘是24M。或者程式要加鎖。一定要產生這個HEX檔案。
儲存OPTION BYTE
第三部: Project->New 建立自己個燒寫工程。儲存。然後會彈出Project Edition。
第一個菜單。Conifguration。選擇。ST-LINK。USB。SWIM。晶片型號
然後選擇Properties。勾選Unlock projtection....(這個是每次燒錄前先解鎖 自動保護。再進行燒錄)
勾選Prompt for new programming cycle. (這個是每次燒寫完之後會彈出詢問是否進行下一次燒寫)
然後點OPTION BYTE。ADD選擇你第一步產生的那個OPTION BYTE.HEX檔案。(這個hex檔案是專門配置你OPTION BYTE資訊的)
然後如果你有要EEPROM要燒的。就選擇DATA MEMORY。步驟同上。
最後是PROGRAM MEMORY。選擇你STVD或者IAR產生的程式檔案。然後點擊確定
然後關閉STVD。會提示你是否儲存。點擊是 。
重新開啟STVD。點擊Project->Open.開啟你剛才產生的工程檔案。
然後 板子串連上ST-LINK.上電。
在點擊。PROGRAM ALL TABS燒寫。
選擇”是“
選擇”是“
到這裡。就燒寫完畢。然後就提示是否進行下一次燒寫。這時候你只要連上新的板子。點擊”是“就可以開始新的一次的燒寫。
很多人會說。為什麼我燒寫完之後。沒有任何反應。我想一定無數人被這個問題坑死過。媽的。
STVP稍燒完程式後。除非。你把ST-LINK拔掉。從別的地方給你板子供電。或者。你在電腦上把STVP關閉。然後在重新給板子上電。
板子上的程式才能跑起來。因為程式你板子跟STVP的串連還沒有斷開!!
太坑爹了。IAR就不會這樣!!也許因為IAR燒完之後必須要點擊GO。或者run。才會運行- -。。
ST Visual Programmer批量燒寫教程