久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > stm32 升級程序方案

stm32 升級程序方案

作者: 時間:2016-11-13 來源:網絡 收藏
STM32芯片自帶固化的ISP程序,在芯片上電的時候會檢查BOOT0BOOT1電平狀態,如果
BOOT0=1
BOOT1=0
則會進入自帶的ISP程序,基本可以滿足程序升級需要。
但是如何進入這個模式,是一個問題,網上有人使用串口的握手信號來控制,但是這樣會超過3條線(RXTXGND)。
昨天測試了一個方法,上位機發出一個指令,STM32用戶自己的程序解析后,利用自己的IO口,控制一個簡單的延時電路來拉高BOOT0,然后芯片重新啟動,則進入ISP。刷新完成后,跳入用戶程序運行,控制權交回用戶程序。
程序中設置PB8為ISP_DRV,推挽輸出;輸出一定時間后,充滿電容后,可以使用NVIC_SystemReset()重新啟動(3.12庫)。即可進入ISP模式。
另外,需要在程序中設置如下向量表地址,才可以在勾選ISP程序的jumptouserapplicationafterflash后,進入用戶程序。
/*SettheVectorTablebaselocationat0x08000000*/
NVIC_SetVectorTable(NVIC_VectTab_FLASH,0x0);

測試了若干次沒有發現異常。


關鍵詞: stm32升級程

評論


技術專區

關閉