<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么ISP?什么是IAP?

聚沃科技 ? 2024-01-28 09:26 ? 次閱讀

單片機開發工程師經常會聽到兩個詞:ISP和IAP,但新手往往對這兩個概念不是很清楚,今天就來和大家聊聊什么是ISP,什么是IAP?

一、ISP

ISP的全稱是:In System Programming,即在系統編程,該操作是通過MCU廠商出廠BootLoader來實現,通過ISP可以對主flash區域進行擦除、編程操作,還可以修改芯片的選項字節等。我們來看下GD32F30x用戶手冊中引導模式:

wKgZomW1rPCALbo_AAB-EooS260843.png

通過BOOT引腳可以讓MCU有不同的引導模式,其中將BOOT0接高,BOOT1接低,此時上電后,MCU跑的是引導裝載程序,該程序就是GD公司MCU出廠固化的BootLoader。簡單而言就是,在這個模式下,MCU是在跑一段程序的,這個程序可以讓你通過MCU上的一些固定接口如串口、USB等來實現對主flash區域等的操作,而通過這個程序進行主flash的燒寫過程就是ISP。一般而言,ISP都需要一些上位機來配合操作,GD官方的是All-in-one工具:

wKgaomW1rPWAQaucAADHLESiS7s439.png

二、IAP

IAP的全稱是:In Applicatin Programming,即在應用編程,該操作需要工程師自己寫BootLoader來實現。IAP需要兩段程序:一段在主flash最開始的地方,為用戶BootLoader;

wKgZomW1rPqAJ5BFAACJYyIwbgc150.png

另一段在主flash中的其他區域,為APP,比如保存在0x08008000地址的程序:

wKgaomW1rP6AQuWYAABvWmVT9Jg132.png

當MCU剛上電時,會執行用戶BootLoader程序(需要注意:這里需要選擇將BOOT0接低,也就是讓從主flash中啟動),工程師需要在用戶BootLoader中實現接收數據并對非本程序所在地址flash區域編程的功能,這樣用戶將APP的bin文件發給用戶BootLoader程序,BootLoader程序將APP的數據寫到特定的地址中,比如0x08008000開始的地址,這樣就實現了通過用戶BootLoader燒錄APP的功能。燒錄完成后,用戶BootLoader程序中需要實現一個跳轉指令,讓程序直接跳到APP中,這樣嶄新的APP程序就跑起來啦。上面這一整個流程,就叫做IAP。

好了,現在小伙伴們知道什么是ISP,什么是IAP了嗎?還有不懂的,歡迎評論區留言哦,悄悄說一句,我們有GD各系列的用戶BootLoader Demo程序哦。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6008

    文章

    44065

    瀏覽量

    622671
  • mcu
    mcu
    +關注

    關注

    146

    文章

    16104

    瀏覽量

    344594
  • 嵌入式
    +關注

    關注

    5001

    文章

    18397

    瀏覽量

    291100
  • ISP
    ISP
    +關注

    關注

    6

    文章

    459

    瀏覽量

    51076
  • IAP
    IAP
    +關注

    關注

    2

    文章

    162

    瀏覽量

    24002
收藏 人收藏

    評論

    相關推薦

    STM32單片機的ISP、IAP、ICP三種燒錄方式

      內容包括ISP、IAP、ICP三種燒錄方式的詳細介紹,STM32單片機與宏晶STC單片機燒錄方法,STM32單片機自動ISP的詳細介紹(附電路原理圖)。
    發表于 08-09 15:21 ?2.9w次閱讀
    STM32單片機的<b class='flag-5'>ISP</b>、<b class='flag-5'>IAP</b>、ICP三種燒錄方式

    ISP、IAP 功能

    void ISP_IAP_enable(void){EA = 0;ISP_CONTR = ISP_CONTR & 0x18;ISP_CONTR =
    發表于 05-13 17:36

    單片機燒錄方式ISP/IAP和ICP的區別

    單片機ISP、IAP和ICP幾種燒錄方式的區別
    發表于 01-29 06:23

    ISP、IAP和ICP的區別是什么

    ISP、IAP和ICP的區別是什么ISPIAP有什么區別ISPIAP的工作原理及在單片機中的
    發表于 03-10 06:47

    單片機ISP、IAP和ICP燒錄區別是什么?

    單片機ISP、IAP和ICP幾種燒錄方式的區別ISPIAP的工作原理ISPIAP在單片機中的
    發表于 04-02 07:01

    ISP、IAP、ICP的區別與聯系是什么

    STM32的ISP下載原理引言正文ISP的概念ISP、IAP、ICP的區別與聯系什么是DFUISP下載原理引言上一篇提到了ISP,這篇文章給
    發表于 07-13 09:22

    ISPIAP的區別有哪些?它們之間有啥聯系?

    ISP的原理是什么?ISPIAP的區別有哪些?它們之間有啥聯系?
    發表于 09-23 08:36

    ICP、ISP、IAP是啥意思

    首先來了解以下ICP、ISP、IAP是啥意思?ICP:In Circuit Programing,在電路編程;ISP:In System Programing,在系統編程;IAP:In
    發表于 01-26 07:42

    ISPIAP介紹和比較

    1,ISPIAP介紹和比較STM32F103單片機默認支持ISP(在系統編程In System Programming, ISP),即通過ISP
    發表于 02-15 06:06

    ISPIAP的區別

    ISPIAP的區別       IAP: in applicatin progr
    發表于 12-28 11:28 ?1578次閱讀

    ISPIAP的區別詳解

    本內容詳細解釋了ISPIAP的區別,但兩者的操作方式,結果和應用場合有什么區別
    發表于 02-02 15:14 ?1.3w次閱讀

    淺析ICP與ISP、及IAP三種單片機燒錄方式

    首先來了解以下ICP、ISP、IAP是啥意思?ICP:In Circuit Programing,在電路編程;ISP:In System Programing,在系統編程;IAP:In
    發表于 12-02 11:36 ?9次下載
    淺析ICP與<b class='flag-5'>ISP</b>、及<b class='flag-5'>IAP</b>三種單片機燒錄方式

    STC單片機在線ISP IAP OTA

    STC單片機在線ISP IAP OTA
    發表于 12-03 18:21 ?23次下載
    STC單片機在線<b class='flag-5'>ISP</b> <b class='flag-5'>IAP</b> OTA

    單片機三種燒錄方式ISP、IAP和ICP有什么不同?

    單片機三種燒錄方式ISP、IAP和ICP有什么不同?
    發表于 12-03 18:36 ?14次下載
    單片機三種燒錄方式<b class='flag-5'>ISP</b>、<b class='flag-5'>IAP</b>和ICP有什么不同?

    單片機三種燒錄方式ISP、IAP和ICP有什么不同?

    單片機三種燒錄方式ISP、IAP和ICP有什么不同?
    發表于 12-03 19:06 ?12次下載
    單片機三種燒錄方式<b class='flag-5'>ISP</b>、<b class='flag-5'>IAP</b>和ICP有什么不同?
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>