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