|
通常進(jìn)行單片機(jī)的實(shí)驗(yàn)或開發(fā)時(shí),編程器是必不可少的。仿真、調(diào)試完的程序需要借助編程器燒到單片機(jī)內(nèi)部或外接的程序存儲(chǔ)器中。普通的編程器價(jià)格從幾百元到幾千元不等,對(duì)于一般的單片機(jī)愛好者來說還是一筆不小的開支。另外,在開發(fā)過程中,程序每改動(dòng)一次就要拔下電路板上的芯片編程后再插上,也比較麻煩。
隨著單片機(jī)技術(shù)的發(fā)展,出現(xiàn)了可以在線編程的單片機(jī)。這種在線編程目前有兩種實(shí)現(xiàn)方法:在系統(tǒng)編程(ISP)和在應(yīng)用編程(IAP)。
ISP一般是通過單片機(jī)專用的串行編程接口對(duì)單片機(jī)內(nèi)部的Flash存儲(chǔ)器進(jìn)行編程,而IAP技術(shù)是從結(jié)構(gòu)上將Flash存儲(chǔ)器映射為兩個(gè)存儲(chǔ)體,當(dāng)運(yùn)行一個(gè)存儲(chǔ)體上的用戶程序時(shí),可對(duì)另一個(gè)存儲(chǔ)體重新編程,之后將控制從一個(gè)存儲(chǔ)體轉(zhuǎn)向另一個(gè)。
ISP的實(shí)現(xiàn)一般需要很少的外部電路輔助實(shí)現(xiàn),而IAP的實(shí)現(xiàn)更加靈活,通?衫脝纹瑱C(jī)的串行口接到計(jì)算機(jī)的RS232口,通過專門設(shè)計(jì)的固件程序來編程內(nèi)部存儲(chǔ)器。例如:ATMEL公司的單片機(jī)AT89S8252就提供了一個(gè)SPI串行接口對(duì)內(nèi)部程序存儲(chǔ)器編程(ISP),而SST公司的單片機(jī)SST89C54內(nèi)部包含兩塊獨(dú)立的存儲(chǔ)區(qū),通過預(yù)先編程在其中一塊存儲(chǔ)區(qū)中的程序就可以通過串行口與計(jì)算機(jī)相連,使用PC上專用的用戶界面程序直接下載程序代碼到單片機(jī)的另一塊存儲(chǔ)區(qū)中。
ISP和IAP為單片機(jī)的實(shí)驗(yàn)和開發(fā)帶來了很大的方便和靈活性,也為廣大單片機(jī)愛好者帶來了福音。利用ISP和IAP,不需要編程器就可以進(jìn)行單片機(jī)的實(shí)驗(yàn)和開發(fā),單片機(jī)芯片可以直接焊接到電路板上,調(diào)試結(jié)束即成成品,甚至可以遠(yuǎn)程在線升級(jí)或改變單片機(jī)中的程序。511測(cè)試網(wǎng)站的單片機(jī)自學(xué)、開發(fā)套件就是采用具有IAP功能的SST公司的單片機(jī)SST89C54來進(jìn)行開發(fā)的。
|