IAP與ISP的異同

2021-05-24 09:35:44 字數 980 閱讀 8235

優點:isp技術的優勢是不需要程式設計器就可以進行微控制器的實驗和開發,微控制器晶元可以直接焊接到電路板上,除錯結束即成成品,免去了除錯時由於頻繁地插入取出晶元對晶元和電路板帶來的不便。

原理:isp的實現相對要簡單一些,一般通用做法是內部的儲存器可以由上位機的軟體通過串列埠來進行改寫。對於微控制器來講可以通過spi或其它的序列介面接收上位機傳來的資料並寫入儲存器中。所以即使我們將晶元焊接在電路板上,只要留出和上位機介面的這個串列埠,就可以實現晶元內部儲存器的改寫,而無須再取下晶元。

實現方式:

1.基於電可擦除儲存單元的eeprom 或flash技術(譬如cpld),特點是,掉電資料不丟失,但程式設計次數有限,程式設計速度慢;

2.基於sram查詢表的程式設計單元(譬如fpga),特點是,配置次數無限,加電可隨時更改邏輯,但掉電後資料即丟失,下次上電需要重新配置;

3.基於反熔絲程式設計單元(譬如actel 的fpga

); 4.jtag方式;

easyarm2103開發板用的就是第一種方式。

1)檢查是否需要對第二部分**進行更新

2)如果不需要更新則轉到4)

3)執行更新操作

4)跳轉到第二部分**執行

第一部分**必須通過其它手段,如jtag或isp燒入;第二部分**可以使用第一部分**iap功能燒入,也可以和第一部分**一道燒入,以後需要程式更新是再通過第一部分iap**更新。

對於stm32來說,因為它的中斷向量表位於程式儲存器的最低位址區,為了使第一部分**能夠正確地響應中斷,通常會安排第一部分**處於flash的開始區域,而第二部分**緊隨其後。

在第二部分**開始執行時,首先需要把cpu的中斷向量表映像到自己的向量表,然後再執行其他的操作。

如果iap程式被破壞,產品必須返廠才能重新燒寫程式,這是很麻煩並且非常耗費時間和金錢的。針對這樣的需求,stm32在對flash區域實行讀保護的同時,自動地對使用者flash區的開始4頁設定為寫保護,這樣可以有效地保證iap程式(第一部分**)區域不會被意外地破壞。

ISP於IAP的區別

isp 於iap 的區別 用lpc2000的iap,你自己分配好flash空間,指定乙個block用來存放你的資料,然後通過iap進行寫操作。每次開機後,從這個block讀你的資料。iap的實現 通常在使用者需要實現iap功能時,即使用者程式執行中作自身的更新操作,需要在設計韌體程式時編寫兩個專案 ...

ISP 和 IAP 工作原理

一 isp in system programming,在系統程式設計 pc 機通過串列埠把 bin hex 檔案直接燒錄到微控制器內部 flash 中,比如利用 jlink 或者 usb 轉 ttl 進行燒錄。1 在實現 iap 功能時,微控制器內部一定要有兩塊儲存區,一般一塊被稱為 boot 區...

在系統程式設計ISP及在應用程式設計IAP

用寫入器將code燒入,不過,晶元可以在目標板上,不用取出來,在設計目標板的時候就將介面設計在上面,所以叫 在系統程式設計 即不用脫離系統 什麼是iap 1.由外部硬體電路 如vdd保持高電平,給rst連續3個脈衝 2.檢測狀態位 如ispen,為0時pc指標從0000h開始執行 為1時,通過 引導...