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