自制51編程器
AT89C51是一款應(yīng)用最為廣泛的8051單片機(jī),更重要的是他具有反復(fù)燒寫(FLASH)的特性。一般情況下可重復(fù)燒寫1000次,這樣為初學(xué)者試驗(yàn)提供了一個(gè)廉價(jià)的平臺。為了滿足廣大單片機(jī)愛好者動(dòng)手的需要,本人利用半個(gè)月的時(shí)間,參考國外資料,實(shí)際設(shè)計(jì)制作成功一款簡單的AT89C51/52/55單片機(jī)編程器。由于單片機(jī)編程時(shí)序不同,這一款編程器僅僅支持ATMEL公司的AT89C51, AT89C52, AT89C55芯片,不支持華邦或飛利浦兼容芯片。
對于很多像我這樣一些不算太年輕的從80年代組裝7管半導(dǎo)體收音機(jī)入門的電子愛好者來說,面對 單片機(jī) 似乎顯得有點(diǎn)怯場,但是事實(shí)上我以為他甚至比組裝一個(gè)收音機(jī)更簡單: 以下是它的硬件電路圖, 稍微有一點(diǎn)耐心,完全可以用面包板搭焊。
為了方便大家制作,我把電路簡化設(shè)計(jì)了一下:
Q2, Q4以及周圍的幾個(gè)元件構(gòu)成了電平轉(zhuǎn)換電路,這樣節(jié)省了1片max 232芯片,在要求不高的場合,這個(gè)電路在 單片機(jī) 通信中可以取代MAX232。
Q1, R2,R4,DW2,4個(gè)元件為編程器提供燒寫用12V電壓,其中,R4, R2構(gòu)成了分壓電路;平時(shí),監(jiān)控芯片89C51第13腳(P3.3)輸出高電平,Q1導(dǎo)通,R2(1K)將DW2(12V)拉低, 此時(shí)DW2電壓由R4,R2 分壓, 大約3-5V 之間;當(dāng)寫程序時(shí),監(jiān)控芯片第13腳(P3.3)輸出低電平,Q1截止,DW2(12V)直接送到被燒芯片的31腳,從而提供燒寫電壓。ATMEL官方網(wǎng)站提供的編程器器燒寫電壓是用LM317調(diào)整得到的,并且用到了兩個(gè)高精度電阻,電路復(fù)雜且成本高,該電路經(jīng)過本人數(shù)百臺的實(shí)驗(yàn)證明非常穩(wěn)定可靠.
電源變壓器要求為15V的電源,例如常見的3-12V直流可調(diào)電源, 注意其空載電壓不要低于13V ,濾波應(yīng)好一些,否則可能出現(xiàn)編程不可靠的情況。
監(jiān)控芯片用IC座安裝,另外找一個(gè)編程器燒寫好監(jiān)控程序EZ51.HEX后插入,方便調(diào)試。 燒寫卡座如果購買有困難,可以直接用一個(gè)IC座。組裝好后通電,用萬用表檢查:
1,7805輸出5V , D2 電源指示燈亮。(圖中我用的是78L05)
2,DW2電壓為3-5V。
4,將Q1的基極對地短接,DW2電壓為12V。
5,U1(89C51)的18,19腳電壓為2.2V, 2.1V,此電壓可作為電路是否起振的依據(jù)。
連接電纜用9對9一頭公一頭母的串口線, 注意市場上有些串口線的兩頭2,3腳是交叉的,最好用萬用表檢查一下是否為一一對應(yīng)。如果沒有串口線,也可拆一個(gè)老式的串口鼠標(biāo)自制,只要兩頭把2,3,5腳連接好即可。本電路對元件沒有特殊要求, 電阻用1/8W普通碳膜,三極管我用的是2SA1015,2SC1815, 實(shí)際上很多小功率管都可以, 例如9014,9015。只是需要注意他們的管腳排列區(qū)別。二極管1N4148可以用1N4004替代。另外12V穩(wěn)壓管最好挑選一下,精度要求為5%以內(nèi)。11.0592M晶體有條件的話應(yīng)當(dāng)測試一下,市場零售的晶體有些不起振。
這款編程器的燒寫軟件EZ31.EXE界面很簡單;全兼容于Windows9X-2000。僅有幾個(gè)按鈕,分別為打開文件(SEND),讀芯片(READ), 退出(EXIT), COM選擇,加密(LOCK CODE),以及校驗(yàn)(FAST VERILY)。大家用一下就知道了。注意目前提供下載的為它的升級版本ez4.0自動(dòng)監(jiān)測端口號和芯片。 使用更簡單!
連接好編程器的電源以及串口線,并插入燒寫的芯片,點(diǎn)擊COM1或COM2(以實(shí)際連接為準(zhǔn),本例中我連接的是COM2), 窗口右下腳顯示 89C51Found。 此時(shí)應(yīng)當(dāng)看到信號指示燈D6每2秒亮一下,表示聯(lián)機(jī)工作。
選擇一個(gè)需要燒寫的hex文件開始燒寫,如果一切正常,顯示的界面如上圖所示。
雙面板超級小型的PCB;注意監(jiān)控芯片在反面貼片安裝。因此整個(gè)電路板僅僅比火柴盒子稍稍大一點(diǎn),可能是您所能見到最小巧的編程器了。是不是非常漂亮?
看看這張圖: 想必您一定搞得定了!一共不到30個(gè)零件,確實(shí)很ez,按組裝一塊連插件到焊接測試只要半小時(shí)。
元件清單
Part Type Designator Footprint
1K R19 axial0.3
1K R2 axial0.3
1N4148 D5 diode0.4
1N4148 D1 diode0.4
3K R3 axial0.3
3K R4 axial0.3
4K7 R13 axial0.3
4K7 R11 axial0.3
4K7 R8 axial0.3
10K*8 R18 (排形電阻)
10K R7 axial0.3
10K R6 axial0.3
10K R5 axial0.3
10UF C8 RB.2/.4
10UF C14 RB.2/.4
10UF C7 RB.2/.4
10UF C6 RB.2/.4
11.0592M XT2 rad0.2 (晶體)
12V DW2 (穩(wěn)壓管)
15V IN 7257 (電源輸入插座)
18K R12 axial0.3
30P C15 RAD0.1
30P C16 RAD0.1
104 C4 RAD0.1
104 C5 RAD0.1
A1015 Q4 to-126
C1815 Q1 to-126
C1815 Q2 to-126
IN4148 D4 diode0.4
LEDD2 rb.2/.4 (發(fā)光二極管)
SINGAL D6 rb.2/.4 (發(fā)光二極管)
DB9 232插座
40PIN燒寫卡座
40PIN IC座(插監(jiān)控芯片用)
232串口線
PCB
89C51監(jiān)控芯片
15V電源
DIY安裝步驟:
1:安裝電阻,共11個(gè);元件插到位后焊接剪腳:
2:安裝二極管,三個(gè)1N4148 和一個(gè)12V穩(wěn)壓管DW2。請仔細(xì)看管子的表面有字:穩(wěn)壓管印有12V字樣,千萬別給搞混了。二極管是有極性的, 二極管的黑頭方向插向pcb的印有白色的一邊就對了:元件插到位后焊接剪腳:
3:安裝2個(gè)104和2個(gè)30p電容;11。0592晶體, 這些都沒有方向性隨便插:
4:插入三極管。電解電容,發(fā)光管:注意這些東西都是有極性的:如果搞反了可不行。電解電容和發(fā)光管很好辦,都是負(fù)極向下。三極管(2個(gè)2SC1815,一個(gè)2SA1015,)以及一個(gè)78L05的穩(wěn)壓IC:他們的方向在PCB上可以看到,屁股的方向就是半圓圈的方向。
5:插入排阻(排阻有一個(gè)白點(diǎn)的一端是公共端,他的位置在靠近PCB邊源的一端;電源插座,232插座就不用說了。
6:插監(jiān)控芯片的插座。
7:插燒寫卡座。由于他和監(jiān)控芯片是面對面的, 因此必須先焊接監(jiān)控芯片插座,最后焊燒寫卡座。否則等會(huì)不好動(dòng)烙鐵了。
8:如果您實(shí)在搞不清除元件的方向, 請睜大眼睛仔細(xì)看看上面的照片吧。
9:最后檢查一下電路板的各個(gè)地方有沒有插錯(cuò), 短路的。再按照上面的調(diào)試方法調(diào)試。如果沒有插錯(cuò)
基本可以一次調(diào)OK