在學(xué)習(xí)單片機(jī)和進(jìn)行單片機(jī)產(chǎn)品開發(fā)過程中,我們通常使用仿真器作為調(diào)試程序的有力工具。但仿真器價格昂貴,對于初學(xué)者和一般個人開發(fā)人員很難承受。為此,我們選用了帶ISP 功能的AT89S51/52 系列單片機(jī),不需要仿真器也能很輕易地完成系統(tǒng)調(diào)試和開發(fā)。所謂ISP,即In SystemProgrammerable 在線系統(tǒng)可編程。也就是說,單片機(jī)可在系統(tǒng)應(yīng)用板上進(jìn)行擦除和編程,然后立即運(yùn)行。AT89S51/52 系列單片機(jī)的內(nèi)部程序存儲器采用Flash 存儲器,可以反復(fù)擦寫1000 次以上。
一、電路構(gòu)成
具有ISP 下載與串口通訊功能的下載線的電路如圖1 所示。該下載線成本低廉,元件易得,既可完成在線系統(tǒng)擦除與編程,又可以作為單片機(jī)與PC機(jī)的串口通訊接口,進(jìn)行PC 機(jī)串口產(chǎn)品的開發(fā)。
圖1 具有ISP下載與串口通訊功能的下載線的電路
本電路中的核心元件是MAX232,起到PC 機(jī)的串口EIA 電平與單片機(jī)系統(tǒng)板的TTL 電平之間的電平轉(zhuǎn)換作用,其內(nèi)部有兩套共四路獨(dú)立的電平轉(zhuǎn)換電路。而單片機(jī)編程腳為⑥~⑨腳,其中⑨腳為復(fù)位腳,⑥~⑧腳為通訊腳;單片機(jī)串口通訊腳為⑩、腳。這樣需要轉(zhuǎn)換電平的信號有五路,為此,我們增加了一個雙刀雙擲撥動開關(guān)作為“ISP 下載”和“串口收發(fā)”切換開關(guān)。另外,在使用“ISP 下載”功能時,⑨腳必須是高電平+ 5V,而在單片機(jī)運(yùn)行時,⑨腳應(yīng)為低電平,所以我們在制作單片機(jī)系統(tǒng)板時必須要有手動復(fù)位電路。在使用“ISP 下載”功能時,需要一直按下手動復(fù)位鍵,編程結(jié)束后,只要釋放手動復(fù)位鍵,程序便立即運(yùn)行,如圖2 所示。
圖2 復(fù)位電路
這樣,有了具有ISP 下載與串口通訊功能的下載線,我們在制作電路時只要安裝一個7 針的插座,就可以調(diào)試和反復(fù)擦寫程序了,同時也可以實(shí)現(xiàn)單片機(jī)與PC 機(jī)串口通訊的產(chǎn)品開發(fā)。
二、串口下載線擦除和下載程序的使用方法
這里,我們以下載軟件“電子在線ISP 編程器v2.0”為例說明串口下載線擦除和下載程序的使用方法。
連接好下載線和單片機(jī)目標(biāo)板,目標(biāo)板加上+5V 電源。啟動電子在線ISP 編程器v2.0 軟件,如圖3 所示。
圖3 電子在線ISP編程器v2.0界面
首先選擇串行端口,根據(jù)下載線實(shí)際連接的端口進(jìn)行設(shè)置(如本例選擇COM1):
(1)點(diǎn)擊“鑒別”按鈕,檢查單片機(jī)型號,并驗(yàn)證線路是否通暢;(2)點(diǎn)擊“打開”按鈕,載入電腦中預(yù)先編譯好的HEX 文件;(3)點(diǎn)擊“擦除”按鈕,將單片機(jī)程序存儲器中原有內(nèi)容擦除;(4)點(diǎn)擊“寫入”按鈕,將打開的文件下載到單片機(jī)程序存儲器中。
也可以設(shè)置好自動選項(xiàng)后,點(diǎn)擊“自動”按鈕完成程序的擦除和寫入。
三、幾點(diǎn)說明
(1) 配用軟件可在網(wǎng)絡(luò)上免費(fèi)下載,自行搜索相關(guān)資源。
(2) 在使用本下載的“ISP 下載”功能時,一定要始終按下手動復(fù)位鍵,保證復(fù)位腳⑨保持編程所需的高電平。
(3) 如果只想制作具有ISP 下載功能的下載線,只需對電路略加修改即可;同樣如果想制作和開發(fā)單片機(jī)與PC 機(jī)通訊的產(chǎn)品,可以將本電路的串口通訊功能部分直接加到單片機(jī)系統(tǒng)板上。
(4)本文所述編程器只適用于Atmel 公司的AT89S51 和AT89S52 單片機(jī)。
更多資訊請關(guān)注:21ic模擬頻道