在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

IAP編程的流程及IAP的應(yīng)用場所

FPGA那點事兒 ? 來源:CSDN技術(shù)社區(qū) ? 作者:Tweedle Dee ? 2021-08-11 09:27 ? 次閱讀

IAP是什么

有時項目上需要遠(yuǎn)程升級單片機(jī)程序,此時需要接觸到IAP編程

IAP即為In Application Programming,解釋為在應(yīng)用中編程,用戶自己的程序在運行過程中對User Flash的部分區(qū)域進(jìn)行燒寫。即是一種對單片機(jī)Flash擦寫的一種編程方案。

通常情況下,一片STM32單片機(jī)的Flash只有一個用戶程序,而IAP編程則是將單片機(jī)的Flash分成至少兩大區(qū)域,一部分叫做bootloader區(qū),一部分叫做app用戶代碼區(qū),還可留出一部分區(qū)域為代碼備份區(qū)。

IAP的應(yīng)用場所

通常情況下我們給STM32單片機(jī)燒錄更新程序時是通過SWD、J-link或者通過設(shè)置BOOT引腳后,使用串口進(jìn)行程序下載,這樣的方式直接一次性將程序文件下載到單片機(jī)的Flash中,比較適合絕大部分的應(yīng)用。

但是當(dāng)產(chǎn)品投入實際應(yīng)用時,封裝完成后在后期的使用過程中遇到某些程序上的bug或者是根據(jù)客戶需求需要增加一些功能的時候,使用傳統(tǒng)代碼燒錄的方法就可能需要拆除封裝,而使用IAP編程在bootloader區(qū)提前寫入與外部通信接口用于升級單片機(jī)代碼,使得我們不用對已完成包裝的產(chǎn)品進(jìn)行拆除既可以更新代碼,這樣既節(jié)約了成本,也更加方便快捷。

IAP編程的流程

IAP編程將Flash區(qū)分成的兩個區(qū)域,bootloader區(qū)和app用戶代碼區(qū)具有截然不同的功能。

bootloader區(qū),主要實現(xiàn)接收程序文件,并將該程序?qū)懹谔囟ㄎ恢玫腇lash區(qū)域。而這里接收外部程序文件,就需要實時和外部通信了。STM32單片機(jī)與外部通信大多是通過自身的串口接收和發(fā)送數(shù)據(jù),不過STM32單片機(jī)的串口可以外接多種通訊接口。

例如422、485、GPRSESP8266等。即我們可以通過串口外接藍(lán)牙模塊、WiFi模塊或者是其他網(wǎng)絡(luò)模塊,就可以實現(xiàn)遠(yuǎn)程的文件傳送更新單片機(jī)程序了。

app用戶代碼區(qū)則是主要實現(xiàn)我們所需要的功能操作,除此之外app用戶代碼區(qū)還需要實時檢查代碼運行情況,通過判斷更新程序的標(biāo)志位來判斷是否需要升級程序。若是需要升級程序則進(jìn)入bootloader區(qū)進(jìn)行代碼更新;若不需要則繼續(xù)運行功能函數(shù)代碼即可。

根據(jù)運行流程,我們可以總結(jié)出簡單幾條bootloader設(shè)計過程中需要注意的地方:

精簡、程序盡可能精簡。在單片機(jī)Flash有限的情況下,bootloader代碼占用Flash的空間越小,則APP程序代碼就可占用更多,實現(xiàn)更多功能函數(shù)。

標(biāo)志位不受復(fù)位的影響。

Bootloader中盡量不使用中斷。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3685

    瀏覽量

    94927
  • IAP
    IAP
    +關(guān)注

    關(guān)注

    2

    文章

    165

    瀏覽量

    24875
  • 單片機(jī)程序
    +關(guān)注

    關(guān)注

    1

    文章

    12

    瀏覽量

    9649

原文標(biāo)題:STM32代碼遠(yuǎn)程升級之IAP編程

文章出處:【微信號:gh_94c30763133f,微信公眾號:FPGA那點事兒】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    STM32代碼遠(yuǎn)程升級之IAP編程

    有時項目上需要遠(yuǎn)程升級單片機(jī)程序,此時需要接觸到IAP編程
    發(fā)表于 11-17 10:51 ?3446次閱讀

    STM32加入IAP后的程序運行流程是怎樣的

    IAP是什么?STM32加入IAP后的程序運行流程是怎樣的?
    發(fā)表于 12-08 06:45

    Bootloader UART IAP流程是怎樣的

    IAP是什么?Bootloader功能主要有哪些?Bootloader UART IAP流程是怎樣的?
    發(fā)表于 12-13 06:57

    IAP編程下的單片機(jī)運行流程是怎樣的

    IAP是什么?IAP有哪些應(yīng)用?IAP編程下的單片機(jī)運行流程是怎樣的?
    發(fā)表于 12-14 06:52

    IAP是什么?IAP升級流程是怎樣的

    IAP是什么?IAP升級流程是怎樣的?IAP應(yīng)用編程有哪些實例啊?
    發(fā)表于 12-14 06:53

    IAP在應(yīng)用中編程及其應(yīng)用

    IAP——在應(yīng)用中編程。即用戶的應(yīng)用代碼可以在運行過程中,自行對Flash 存儲系統(tǒng)進(jìn)行修改。IAP 程序是Thumb 代碼,位于地址0x7FFF FFF0。在ARM 系統(tǒng)中實現(xiàn)狀態(tài)轉(zhuǎn)換的指令是“BX Ad
    發(fā)表于 07-19 15:01 ?14次下載

    STM32的IAP技術(shù)入門提高

    言簡意賅介紹STM32在線編程IAP的技術(shù)原理,配合官方源碼,能迅速入門,并深入了解。通過該文檔,自己也能修改IAP程序,實現(xiàn)各種功能。
    發(fā)表于 01-12 10:49 ?5次下載

    IAP編程模式介紹

    IAP編程模式介紹,好東西,喜歡的朋友可以下載來學(xué)習(xí)。
    發(fā)表于 01-18 17:04 ?21次下載

    SST單片機(jī)IAP編程示例(C語言)

    SST 單片機(jī)IAP 編程示例(C 語言),好東西,喜歡的朋友可以下載來學(xué)習(xí)。
    發(fā)表于 01-18 17:04 ?17次下載

    STM32在應(yīng)用編程IAP)使用USART

    當(dāng)發(fā)生重置時,程序計數(shù)器被設(shè)置為執(zhí)行IAP驅(qū)動程序。應(yīng)該是 檢查特定條件的緊湊代碼,例如鍵的組合是 按下。當(dāng)滿足此條件時,IAP驅(qū)動代碼要么執(zhí)行一個分支。 更新用戶應(yīng)用程序或直接(通常默認(rèn)情況下
    發(fā)表于 09-12 16:19 ?8次下載

    STM32 IAP 應(yīng)用編程幾個要點

    STM32 IAP應(yīng)用編程幾個要點
    的頭像 發(fā)表于 03-08 11:42 ?9913次閱讀

    MCU之IAP升級

    IAP升級簡介IAP是In Application Programming的首字母縮寫,IAP是用戶自己的程序在運行過程中對User Flash的部分區(qū)域進(jìn)行燒寫,目的是在產(chǎn)品發(fā)布后可以方便地通過預(yù)留的通信口對產(chǎn)品中的固件程序進(jìn)
    發(fā)表于 10-25 13:06 ?18次下載
    MCU之<b class='flag-5'>IAP</b>升級

    AN0001 AT32 IAP 使用 USART

    前言對于AT32 MCU,除了出廠固化的bootloader,用戶也可以在應(yīng)用程序中編寫自己的bootloader程序,用于最終產(chǎn)品的固件更新。此功能稱為應(yīng)用程序內(nèi)編程IAP)。本應(yīng)用筆記的目的
    發(fā)表于 01-14 12:52 ?4次下載
    AN0001 AT32 <b class='flag-5'>IAP</b> 使用 USART

    Megawin 8051 MCU的IAP(應(yīng)用程序編程)示例代碼

    Megawin 8051 MCU的IAP(應(yīng)用程序編程)示例代碼分享
    發(fā)表于 07-01 10:36 ?3次下載
    Megawin 8051 MCU的<b class='flag-5'>IAP</b>(應(yīng)用程序<b class='flag-5'>編程</b>)示例代碼

    常用的幾種IAP升級技術(shù)方案是哪些

    關(guān)于 IAP 技術(shù),做過 bootloader 的想必很熟悉(IAP全稱 In Application Programming,即應(yīng)用編程),和 ISP(全稱 In System
    的頭像 發(fā)表于 02-15 15:42 ?1949次閱讀
    常用的幾種<b class='flag-5'>IAP</b>升級技術(shù)方案是哪些
    主站蜘蛛池模板: 性久久久久久 | 特级全黄一级毛片免费 | 成人午夜性a一级毛片美女 成人午夜性视频欧美成人 成人小视频在线 | 午夜激情婷婷 | 日本一卡二卡≡卡四卡精品 | 国产精品天天看天天爽 | 欧美极品bbbbⅹxxxx | 鸥美毛片 | 狠狠干视频网 | 手机在线看片你懂的 | 亚洲福利一区二区三区 | 色偷偷伊人 | 高清色黄毛片一级毛片 | 欧美黑人性色黄在线视频 | 正在播放久久 | 天天色综 | 色四虎| 亚洲大香伊人蕉在人依线 | 色午夜视频 | 午夜手机视频 | 色多多视频网站 | 精品卡1卡2卡三卡免费网站视频 | 毛片午夜| 婷婷激情综合网 | 视频免费播放 | 天天干天天操天天碰 | avtt加勒比手机版天堂网 | 久久香蕉国产线看观看精品yw | 夜夜骑夜夜操 | 亚洲精品蜜桃久久久久久 | 午夜免费毛片 | japanese日本护士xx亚洲 | 最新中文字幕在线资源 | 日韩有色 | 午夜免费网站 | www一级毛片 | 国产美女视频一区二区二三区 | 一级片免费在线观看 | 欧美另类高清 | 国产精品一区二区三区四区 | 丁香色综合 |