源: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。才会运行- -。。