ISP 是In-System Programming(在系統(tǒng)編程)的縮寫(xiě),ICP 是In-Circuit Programming(在電路編程)的縮寫(xiě)。這兩種編程方法使得用戶可以在軟件控制下更新應(yīng)用程序代碼而不從實(shí)際終產(chǎn)品上取下MCU。下圖的“Megawin 8051 ISP-ICP Programmer”工具,將這兩個(gè)功能集成在一個(gè)U 棒體中。它既可以作為ISP 編程器,也可以作為ICP 編程器。另外,由于即將要用于編程的代碼可以存儲(chǔ)在編程器的非易失性存儲(chǔ)器中,因此本編程器也可以在沒(méi)有主機(jī)(PC)干預(yù)的情況下工作。這個(gè)特性在沒(méi)有PC 的場(chǎng)合尤其有用
ISP 編程器
當(dāng)做為ISP 編程器的時(shí)候,它的功能像主機(jī)和目標(biāo)MCU 之間的一座橋梁,主機(jī)提供新的編程數(shù)據(jù),而MCU 已寫(xiě)入引導(dǎo)程序。引導(dǎo)程序就是所謂的“ISP 代碼”,它須預(yù)先寫(xiě)入目標(biāo)MCU 的ISP 程序區(qū)。當(dāng)上電時(shí),目標(biāo)MCU 從ISP 程序區(qū)啟動(dòng)并且執(zhí)行ISP 代碼來(lái)檢測(cè)是否需要進(jìn)行ISP 操作。如果需要,目標(biāo)MCU 將從編程器接收編程數(shù)據(jù)并且使用在系統(tǒng)編程的方法寫(xiě)入到應(yīng)用程序區(qū)。在ISP 過(guò)程完成后,目標(biāo)MCU將會(huì)從應(yīng)用程序區(qū)重新引導(dǎo)來(lái)運(yùn)行新的應(yīng)用程序代碼,當(dāng)編程器已經(jīng)從目標(biāo)MCU 拔下的時(shí)候。如果不需要ISP 操作,目標(biāo)MCU 將會(huì)直接從應(yīng)用程序區(qū)重新引導(dǎo)并以標(biāo)準(zhǔn)模式來(lái)運(yùn)行應(yīng)用程序代碼









