A. stm32 iap的程序怎麼模擬
IAP程序也是自己寫的另一個工程,你按照普通APP那樣下載模擬即可,只是需要連接通信口進行獲取升級文件代碼,需要上位機或手動發送。要是以文件的形勢訪問,則無需通信,只需要讀取文件的相關代碼和IAP代碼即可。
B. 怎樣寫stm32 iap應用程序
不用重新寫,只需要在你原來的沒有IAP的工程代碼上加上一些東西。
最重要的一點就是向量表需要重新定位,使用相關函數即可,具體的你稍微搜索一下就能知道如何重新定義一個中斷向量的偏移地址。
另外需要說明的是,根據我的經驗,app裡面不像網上說的那樣,從IAP跳轉到APP後,AAP第一句代碼就是重新設置向量偏移,應該要先初始化系統時鍾,再執行向量偏移的修改。
除了向量偏移修改這個必選項之外,也可以自定義加一些代碼和IAP配合,用來實現如何通過命令來使得APP運行程序時可以跳轉到IAP,一般來說是按條件軟體復位,以及要讓IAP知道是跳轉還是升級代碼這一標志位如何傳遞等。
C. stm32 iap程序
很可能是中斷向量表沒有重定位,或者是沒有正確更新SP……
D. stm32的IAP怎麼實現啊
肯定是先復制到sram里,然後才燒寫到flash中。
flash編程是必須要看的,此外還要知道串口傳輸文件的協議,比如說Xmodem、Ymodem協議等等。
E. 【STM32】需要用串口進行IAP更新,串口發送數據直接寫入flash,不進行SRAM緩沖
STM32官方有示常式序。
F. 請教,對stm32的IAP程序的理解
STM32是可以實現多個APP的,你可以通過你的IAP來控制app,通過不同的地址你可以選擇跳轉到不同的APP,一般都直接使用的IAP像APP跳轉,逆向跳轉一般通過復位來實現,但也可以通過代碼跳轉,APP之間的跳轉也是一樣的。
需要注意的是每個APP包括IAP都有各自的中斷向量表,若在相應代碼中有使用中斷,跳轉前記得先關閉中斷,以免剛跳轉過去但你還沒來得及重新設置中斷向量表就進入中斷,程序可能跑飛。
你先實現了一個IAP+APP,那麼一個IAP+多個APP也就差不多懂了。
G. 請問stm32的IAP校驗怎麼加
嘗試給BIN文件加一個異或效驗,放在BIN文件頭部。然後STM32 上接收BIN文件時首先收到效驗位元組, 然後再接收BIN文件,接收時按位元組異或,最後與BIN文件頭的效驗位元組比較。
H. stm32 iap程序
iap是個好東西,開發板上講的很細很明白,在實際用途上來說,串口iap過程需要校驗。st官方給的例子很好用,超級終端ymodem協議發送,帶crc校驗。
1,bootloader介紹,修改的官方iap程序。官方的程序使用的它自己的開發板,要用按鍵進入bootloader然後選擇是否進入iap等等選項,我改成啟動時串口是否收到指定字元來判斷是否進入iap的bootloader(打開超級終端,連上自己開發板,鍵盤一直點字元『a』,然後重啟開發板就進入bootloader)。
2,原st官方給的bootloader程序中在跳轉到app程序後沒有給關掉中斷,我在調試stm32f103rb(20kram
128krom)中發現總是不能正常運行app程序,困擾了我很長時間,後來在bootloader加上了關閉中斷,後解決了這個問題,同時也隱藏了另一個問題3。
3,我換了cpu改成stm32f103rd(60kram)發現app程序不能進入中斷,我找了好久,最終發現是中斷關閉沒有打開,而stm32f103rb片子上卻沒有這個問題。。。我在代碼上做如下如理,解決了這個問題,終於解決了。。。
I. 怎麼使用stm32寫IAP的bootloader和APP
這個你就需要從IAP的作者那裡去了解了,IAP沒有固定的使用方式。
但大概的使用流程是,首先用J-Link之類的先把IAP部分的工程代碼寫到STM32,然後根據人家自己的APP做些修改(具體修改方法由IAP代碼決定,所以這里如何修改,找作者吧),接著把APP生成的源碼文件(bin或hex,具體用哪個找作者),通過某些方式(可以是內存卡,串口通訊,網口通訊等,具體找作者)把APP代碼傳送給已經燒錄IAP的STM32晶元,然後IAP就把你傳送的代碼寫到了指定位置。
你也看到了,IAP代碼決定了IAP升級程序的使用方式,所以很少有直接用別人的IAP,一般都自己寫,除非你在關鍵硬體上完全和IAP作者的一樣。
J. 晶元STM32F103加密後,還能更新IAP代碼嗎
這個倒沒注意過,按說讀保護不會跟防寫掛鉤。但是,如果確實有這種情況的話,你可以選擇另外一種折中的方案,把boot做成分兩步引導:第一步引導就放在快閃記憶體的最前面,這塊以後就不要動了,它的作用純粹是佔用所謂的可能被防寫的區域,當然也負責跳轉到第二步;第二步就是真正的boot,而且具備與升級APP有關的功能。 最後,再由第二步跳轉至第三步APP部分。
麻煩採納,謝謝!