什么ISP?什么是IAP?

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

一、ISP

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

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

二、IAP

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

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

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

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

更多GD32?MCU相關咨詢:https://www.gd32bbs.com/

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/45608.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/45608.shtml
英文地址,請注明出處:http://en.pswp.cn/web/45608.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

如何申請抖音本地生活服務商?3種方式優劣勢分析!

隨著多家互聯網大廠在本地生活板塊的布局力度不斷加大,以抖音為代表的頭部互聯網平臺的本地生活服務商成為了創業賽道中的大熱門,與抖音本地生活服務商怎么申請等相關的帖子,更是多次登頂創業者社群的話題榜單。 就目前的市場情況來看&#x…

Go語言--廣播式并發聊天服務器

實現功能 每個客戶端上線,服務端可以向其他客戶端廣播上線信息;發送的消息可以廣播給其他在線的客戶支持改名支持客戶端主動退出支持通過who查找當前在線的用戶超時退出 流程 變量 用戶結構體 保存用戶的管道,用戶名以及網絡地址信息 typ…

ARM功耗管理之功耗數據與功耗收益評估

安全之安全(security)博客目錄導讀 思考:功耗數據如何測試?功耗曲線?功耗收益評估? UPF的全稱是Unified Power Format,其作用是把功耗設計意圖(power intent)傳遞給EDA工具, 從而幫…

vscode OpenCV環境搭建

cmake 官網https://cmake.org/files/ 環境變量D:\Program Files\CMake\bin w64devkit 官網https://github.com/skeeto/w64devkit/tags 環境變量D:\Program Files\w64devkit\bin minGW32-make 拷貝并重命名為make OpenCV 在執行完后,把關于python的都給取消勾選…

mybatis-plus映射mysql的json類型的字段

一、對json里面內容建立實體類 Data AllArgsConstructor NoArgsConstructor public class RouteMetaEntity {private String title;private Boolean affix;private Boolean isAlwaysShow; }二、主類做映射 TableField(typeHandler JacksonTypeHandler.class)private RouteMe…

Codeforces Round 958 (Div. 2)補題

文章目錄 A題 (拆分多集)B題(獲得多數票)C題(固定 OR 的遞增序列) A題 (拆分多集) 本題在賽時卡的時間比較久,把這題想復雜了,導致WA了兩次。后來看明白之后就是將n每次轉換成k-1個1,到最后分不出來k-1個1直接一次就能…

Hive的基本操作(查詢)

1、基礎查詢 基本語法 select 字段列表|表達式|子查詢 from 表(子查詢|視圖|臨時表|普通表) where [not] 條件A and|or 條件B --先:面向原始行進行篩選 group by 字段A[,字段B,...] > 分組【去重處理】 having 聚合條件(非原始字段條件) --再&#x…

JMeter案例分享:通過數據驗證的錯誤,說說CSV數據文件設置中的線程共享模式

前言 用過JMeter參數化的小伙伴,想必對CSV Data Set Config非常熟悉。大家平時更關注變量名稱,是否忽略首行等參數,其余的一般都使用默認值。然而我最近遇到一個未按照我的預想讀取數據的案例,原因就出在最后一個參數“線程共享模…

深度學習中激活函數的演變與應用:一個綜述

摘要 本文全面回顧了深度學習中激活函數的發展歷程,從早期的Sigmoid和Tanh函數,到廣泛應用的ReLU系列,再到近期提出的Swish、Mish和GeLU等新型激活函數。深入分析了各類激活函數的數學表達、特點優勢、局限性以及在典型模型中的應用情況。通過系統的對比分析,本文探討了激…

樹莓派配置vsftpd主動模式

sudo apt-get install vsftpd /etc/vsftpd.conf anonymous_enableNO # 禁用匿名用戶 local_enableYES # 允許本地用戶登錄 write_enableYES # 允許修改權限 #chroot_local_userYES # 將用戶限制在其主目錄 systemctl restart vsftpd sudo adduser ftpuser sudo pa…

詳解MySQL中的遞歸查詢

MySQL中的遞歸查詢主要通過WITH RECURSIVE語句來實現,這在處理具有層級關系或樹形結構的數據時非常有用。下面將通過一個具體的例子來詳細解釋如何在MySQL中使用遞歸查詢。 示例場景 假設我們有一個部門表(departments),其中包含…

昇思訓練營打卡第二十五天(RNN實現情感分類)

RNN,即循環神經網絡(Recurrent Neural Network),是一種深度學習模型,特別適用于處理序列數據。以下是對RNN的簡要介紹: RNN的特點: 記憶性:與傳統的前饋神經網絡不同,R…

老板新招的牛人,竟然用1天搭建了一套完整的倉庫管理系統!

倉儲管理系統是什么? 倉儲管理系統(WMS)是一個全面的軟件解決方案,旨在幫助企業優化倉庫管理流程、管理和控制日常倉庫運營。通過數學模型和信息手段,對倉庫管理的各個環節進行優化和調控,涵蓋了從貨物入庫…

使用網關和Spring Security進行認證和授權

個人名片 🎓作者簡介:java領域優質創作者 🌐個人主頁:碼農阿豪 📞工作室:新空間代碼工作室(提供各種軟件服務) 💌個人郵箱:[2435024119qq.com] &#x1f4f1…

jquery發送jsonp請求

使用 jQuery 發送 JSONP 請求相對來說比較簡單,以下是示例代碼: $.ajax({url: "http://example.com/data",dataType: "jsonp",jsonp: "callback",jsonpCallback: "myCallback" }).done(function(response) {//…

Linux命令更新-sort 和 uniq 命令

簡介 sort 和 uniq 都是 Linux 系統中常用的文本處理命令。 sort 命令用于對文件內容進行排序。 uniq 命令用于去除文件中重復出現的行。 1. sort 命令 命令格式 sort [選項] [文件]選項: -n: 按照數字進行排序 -r: 反向排序 -c: 統計每個元素出現的次數 -…

怎么錄制視頻?電腦錄制,試試這3種方法

在數字化快速發展的時代,視頻已經成為我們傳遞信息、分享生活、表達情感的重要載體。每一個人都希望自己能夠掌握視頻錄制技巧,輕松駕馭影像的力量,創造出屬于自己的視覺盛宴。 那么,怎么錄制視頻呢?首先選擇一款好用…

vue腳手架配置代理請求

在 Vue 腳手架中,可以通過配置vue.config.js文件來設置代理請求,以解決跨域問題或實現其他代理需求。以下是兩種常見的配置方式: 方法一: 在vue.config.js中添加如下配置: module.exports {devServer: {proxy: http…

《信息與電腦(理論版)》是什么級別的期刊?是正規期刊嗎?能評職稱嗎?

問題解答 問:《信息與電腦(理論版)》是不是核心期刊? 答:不是,是知網收錄的正規學術期刊。 問:《信息與電腦(理論版)》級別? 答:省級。主管單位:北京電子控股有限責任公司 主辦…

AI安全入門-人工智能數據與模型安全

參考 人工智能數據與模型安全 from 復旦大學視覺與學習實驗室 文章目錄 0. 計算機安全學術知名公眾號1. 概述數據安全模型安全 3. 人工智能安全基礎3.1 基本概念攻擊者攻擊方法受害者受害數據受害模型防御者防御方法威脅模型目標數據替代數據替代模型 3.2 威脅模型3.2.1 白盒威…