一種基于CH340T 的STC89C52RC 編程器設(shè)計
編程器通過USB 接口與PC 上位機通訊,用戶只需要通過PC 上位機GUI 的簡單操作,就可以實現(xiàn)對STC 89C/S51XX/52XX 等系列單片機的擦除、編程、校驗和加密。經(jīng)過STC89C52RC 等單片機反復(fù)測試,該編程器功能穩(wěn)定、速度快、價格低和易用性強等優(yōu)點。
1 引言
STC(宏晶科技)公司推出的STC 89C/S 51XX/52XX 等系列單片機,具有價格便宜、無法解密、低功耗、高速、高可靠、強抗靜電、強抗干擾等優(yōu)點,其指令代碼完全兼容傳統(tǒng)8051 單片機,片內(nèi)資源非常豐富,且均內(nèi)置可反復(fù)擦寫的Flash 存儲器,并提供了ISP(In-System Programming)編程模式。STC89C52RC 作為STC 89C/S51XX/52XX 系列單品機的一個典型代表,其特征主要有,8K 字節(jié)可編程閃爍存儲器、1000 次寫/ 擦循環(huán)壽命、10 年的數(shù)據(jù)保留時間、三級程序存儲器鎖定、512 內(nèi)部RAM、32 可編程I/O 線、兩個16 位定時器/ 計數(shù)器、5 個中斷源、可編程串行通道、低功耗的閑置和掉電模式以及片內(nèi)振蕩器和時鐘電路等。因而這款功能強大和超高性價比的單片機,在國內(nèi)應(yīng)用極為廣泛。
ISP 在線編程是一種徹底顛覆了傳統(tǒng)的編程模式的技術(shù),它不會損壞芯片的引腳,同時下載速度很快,從而縮短了設(shè)計時間,降低了研發(fā)成本、加速了產(chǎn)品的上市,大大提高了工作效率。一般編程器的采用方法都是使用PL2303、CP2102、FT232 等主控芯片,但往往成本較高,而且有的芯片穩(wěn)定差,極少數(shù)芯片固件版本有Bug,鑒于此,本文提出以國產(chǎn)CH340T 芯片為主體的ISP 編程器的設(shè)計方案,經(jīng)過STC89C52RC 等芯片反復(fù)測試,功能穩(wěn)定,性能出色。
2 系統(tǒng)硬件設(shè)計
2.1 系統(tǒng)總體結(jié)構(gòu)圖
系統(tǒng)總體結(jié)構(gòu)圖如圖1 所示。其中USB 供電和數(shù)據(jù)傳輸模塊主要負責(zé)為單片機和CH340T 等模塊供電,并將來自計算機的USB串行數(shù)據(jù)經(jīng)CH340T 轉(zhuǎn)換為串口數(shù)據(jù)后和單片機通信,為單片機編程提供數(shù)據(jù)通道。
2.2 核心芯片CH340T 介紹
CH340T 是南京沁恒電子有限公司設(shè)計生產(chǎn)的一款接口轉(zhuǎn)換及單片機外圍芯片,支持USB2.0.可以實現(xiàn)USB 轉(zhuǎn)串口、擴展計算機異步串口和USB 轉(zhuǎn)IrDA 紅外等功能。本設(shè)計僅作USB 轉(zhuǎn)串口使用,轉(zhuǎn)換后的串口為全雙工串口,內(nèi)置收和發(fā)緩沖區(qū),支持通訊波特率從50bps 到2Mbps,發(fā)送允許波特率誤差< 0.3%,接收允許波特率誤差<2%.其使用方法比較簡單,外圍元器件只需要晶體、電阻和電容即可。
CH340T 有20 個標(biāo)準(zhǔn)引腳接口。主要有1、UD+ 和UD- 引腳,這些引腳內(nèi)置了USB 上拉電阻,可以直接接到USB 總線上。2、GND和VCC,即接地和電源引腳,支持5V 或者3.3V 電源電壓。3、數(shù)據(jù)傳輸引腳TXD 和RXD,分別為串口數(shù)據(jù)發(fā)送和接收引腳。輸入空閑時,一般RXD 是高電平,但是如果R232 引腳為高電平,且啟用輔助RS232 功能,RXD 引腳內(nèi)部會自動插入一個反相器,默認變成低電平;輸出空閑時,一般TXD 是高電平。4、其他引腳。包括MODEM 聯(lián)絡(luò)信號引腳和輔助引腳。
2.3 系統(tǒng)原理圖
原理圖如圖2 所示。
圖中,USB 接口P1 除用于數(shù)據(jù)傳輸外,還經(jīng)過LM7805 穩(wěn)壓后為CH340T 芯片和單片機和其他部件供電,當(dāng)使用5V 工作電壓時,CH340 芯片的VCC 引腳輸入外部 5V 電源,并且V3 引腳應(yīng)該外接容量為4700pF 或者 0.01uF 的電源退耦電容。CH340T 轉(zhuǎn)接芯片將UD1+ 和UD1- 轉(zhuǎn)換為串口信號串口數(shù)據(jù)和單片機串口進行通信。需要注意的是,CH340T 芯片的串行接收口CRXD 需要和單片機的P3.1(串行輸出口TXD)通過PNP 三極管Q1 接成射極發(fā)生器的形式,以到達數(shù)據(jù)的緩沖和隔離的作用。
單片機子系統(tǒng),采用40 引腳的試驗用插座,為了正常編程,外接必備的單片機復(fù)位電路和晶振電路。特別地,為提高編程器的適用性,晶振電路采用跳線開關(guān)J1 為單片機提供12MHz 和11.0592M共2 種工作頻率。
3 系統(tǒng)測試
ISP 編程涉及的軟件主要有USB 驅(qū)動程序、單片機固件程序和計算機應(yīng)用程序三部分構(gòu)成。單片機固件程序用來實現(xiàn)計算機讀取和編程STC 單片機內(nèi)部的E2PROM(數(shù)據(jù)Flash),已提前固化在單片機內(nèi)部。
測試之前,必須首先安裝USB 驅(qū)動軟件USB DriverInstaller.exe,該驅(qū)動可以將接入計算機USB 接口的編程映射為虛擬串口,一般是COM3 或COM4.然后安裝STC 單片機在線編程燒錄軟件STC-ISP.STC-ISP 是針對STC 系列單片機而設(shè)計的軟件,可下載STC89 系列、12C2052 系列和12C5410 等系列的STC 單片機,功能強大,使用簡便。本編程器要求版本在V3.0 以上。
測試步驟是,將單片機STC89C52RC 插入編程器插座,整體插入計算機USB 接口(或用USB 線將編程器和計算機連接)。然后打開STC-ISP 軟件,依次在主界面中選擇MCU 單片機型號(MCUTYPE),導(dǎo)入Hex 文件(Open File/ 打開文件),選擇串口(COM :
COM3 或COM4 等)和波特率,最后點擊下載按鈕。下載成功的主界面如圖3 所示。
經(jīng)過多次反復(fù)測試本文設(shè)計的編程器,功能正常,性能可靠。
4 結(jié)束語
本文介紹了一種簡單實用、價格低的ISP 編程器。該編程器具有功能穩(wěn)定、速度快、價格低和易用性強等優(yōu)點,適合STC 89C/S51XX/52XX 等系列單片機的程序燒錄。另外,本系統(tǒng)擴展性較好,原理圖稍加改動,借助于SPI 接口,實現(xiàn)對Atmega8515/ Atmega162(AVR 芯片)等更多的單片機的ISP 編程下載。