EDA365电子论坛网

标题: 教你自制89C51编程器(分享) [打印本页]

作者: baojian510    时间: 2008-12-30 22:57
标题: 教你自制89C51编程器(分享)
最近本人买一个89C52,自己尝试着去做一个编程器!7 D4 o- J  W+ O0 b
AT89C51是一款应用最为广泛的8051单片机,更重要的是他具有反复烧写(FLASH)的特性。一般情况下可重复烧写1000,这样为初学者试验提供了一个廉价的平台。为了满足广大单片机爱好者动手的需要,本人利用半个月的时间,参考国外资料,实际设计制作成功一款简单的AT89C51/52/55单片机编程器。由于单片机编程时序不同,这一款编程器仅仅支持ATMEL公司的AT89C51, AT89C52, AT89C55芯片,不支持华邦或飞利浦兼容芯片。: a( O! F2 D3 K- F
对于很多像我这样一些初学者来说,面对单片机似乎还显得有点怯场,但是事实上我以为他甚至比组装一个收音机更简单: 以下是它的硬件电路图, 稍微有一点耐心,完全可以用面包板搭焊。+ i0 |- k9 P4 _: v
为了方便大家制作,我把电路简化设计了一下:  
! O1 g3 a  i- M1 P. J1 K1 x. r
! ^9 N9 X- \# H
Q2, Q4以及周围的几个元件构成了电平转换电路,这样节省了1max 232芯片,在要求不高的场合,这个电路在单片机通信中可以取代MAX232
" w0 J) Z# M' ^- A8 {Q1, R2,R4,DW24个元件为编程器提供烧写用12V电压,其中,R4, R2构成了分压电路;平时,监控芯片89C5113脚(P3.3)输出高电平,Q1导通,R2(1K)DW2(12V)拉低, 此时DW2电压由R4,R2 分压, 大约3-5V 之间;当写程序时,监控芯片第13脚(P3.3)输出低电平,Q1截止,DW2(12V)直接送到被烧芯片的31脚,从而提供烧写电压。ATMEL官方网站提供的编程器器烧写电压是用LM317调整得到的,并且用到了两个高精度电阻,电路复杂且成本高,该电路经过本人数百台的实验证明非常稳定可靠。( W1 X0 z" ^: P! o4 E. m$ D4 X
电源变压器要求为15V的电源,例如常见的3-12V直流可调电源, 注意其空载电压不要低于13V , 滤波应好一些,否则可能出现编程不可靠的情况。4 @( Z- D# B  h8 f4 L) M

: V$ h: P0 ]: ~! w) k- o/ f; D4 Y- B监控芯片用IC座安装,另外找一个编程器烧写好监控程序EZ51.HEX后插入,方便调试。 烧写卡座如果购买有困难,可以直接用一个IC座。组装好后通电,用万用表检查:
" B/ L* U6 x2 z# U6 B& @0 k1 B1,0 ~4 @7 ^# \( h. x
7805输出5V D2 电源指示灯亮。(图中我用的是78L05
3 R' w5 w  B# j& n! \2,
7 N1 P% T: m: @DW2电压为3-5V" T) y, t+ h! j7 z
4,
3 J  F. h7 D8 EQ1的基极对地短接,DW2电压为12V1 x: Q# ?* [, D0 n& |- z
5U1(89C51)1819脚电压为2.2V, 2.1V,此电压可作为电路是否起振的依据。5 L0 V8 w7 W9 W! B$ A
连接电缆用99一头公一头母的串口线, 注意市场上有些串口线的两头23脚是交叉的,最好用万用表检查一下是否为一一对应。如果没有串口线,也可拆一个老式的串口鼠标自制,只要两头把235脚连接好即可。本电路对元件没有特殊要求, 电阻用1/8W普通碳膜,三极管我用的是2SA1015,2SC1815, 实际上很多小功率管都可以, 例如9014,9015。只是需要注意他们的管脚排列区别。 二极管1N4148可以用1N4004替代。另外12V稳压管最好挑选一下,精度要求为5%以内。11.0592M晶体有条件的话应当测试一下,市场零售的晶体有些不起振。
% ]7 t: G; x, I0 A   {6 H6 u* V# g6 E
这款编程器的烧写软件EZ31.EXE界面很简单;全兼容于WINDOWS9X-2000。仅有几个按钮,分别为打开文件(SEND),读芯片(READ) 退出(EXIT) COM选择,加密(LOCK CODE),以及校验(FAST VERILY)。大家用一下就知道了。注意目前提供下载的为它的升级版本ez4.0自动监测端口号和芯片。 使用更简单!
: F8 c) f& i8 ?2 D7 y
连接好编程器的电源以及串口线,并插入烧写的芯片,点击COM1COM2(以实际连接为准,本例中我连接的是COM2), 窗口右下脚显示 89C51Found 此时应当看到信号指示灯D62秒亮一下,表示联机工作。, k/ S2 Q% W; ^' R+ U" d
  选择一个需要烧写的hex文件开始烧写,如果一切正常,显示的界面如上图所示。! _  j" U8 V! M! `) n

* R& p$ a& u* h7 q0 R% w
" X* l- S6 z* z* L( S3 Y9 i% t
双面板超级小型的pcb;注意监控芯片在反面贴片安装。因此整个电路板仅仅比火柴盒子稍稍大一点,可能是您所能见到最小巧的编程器了。是不是非常漂亮?
          看看这张图: 想必您一定搞得定了!一共不到30个零件,确实很ez,按组装一块连插件到焊接测试只要半小时。
元件清单
Part Type Designator Footprint   }7 e" ~4 _! P* e
1K R19 axial0.3 2 A9 ^! q$ L  N: T1 R3 a' I
1K R2 axial0.3

' F0 p' P# [5 d: L1N4148 D5 diode0.4 , u6 B, m; U1 z/ ?4 Y) r
1N4148 D1 diode0.4

5 w- d; b5 f5 ~4 X& H. F) O! E3K R3 axial0.3
1 ^0 u0 r- N! L1 p3K R4 axial0.3
: k+ T1 `( U( D7 {- T0 N4K7 R13 axial0.3
# g/ V! y4 U0 L% F( r$ D- B4K7 R11 axial0.3
" `$ H" J% ]9 ~4K7 R8 axial0.3
8 A3 v! t& p' M) E1 L10K*8 R18 (排形电阻)
0 W5 ^/ p1 R, \. H  B1 [# T) h10K R7 axial0.3
6 w) ~0 A" I) B! I0 _# ^10K R6 axial0.3
! q& E+ `* [7 z/ X& ~) R10K R5 axial0.3
$ U( T% Y# K0 i9 k10UF C8 RB.2/.4 7 y1 Q/ Z7 P0 \6 {, Q
10UF C14 RB.2/.4
1 R+ N% h) t8 x# U) Y3 ~3 K( s: h10UF C7 RB.2/.4
, [4 H. V8 C0 x% X, G- p) F10UF C6 RB.2/.4 ' o% k/ l$ W& q
11.0592M XT2 rad0.2 (晶体). m( m7 J* a3 W; G7 @( \4 E
12V DW2 (稳压管)0 k, X- p0 d' j0 p  l
15V IN 7257 (电源输入插座)
1 f( _7 r' [/ Y18K R12 axial0.3
1 n- \1 f* m1 Q3 N7 b; z9 F. L# d30P C15 RAD0.1 1 o# h6 p* v  P2 n
30P C16 RAD0.1 " U  L6 _- f( I" b0 A
104 C4 RAD0.1
" j2 U; Z/ W& x% b# n104 C5 RAD0.1 # Q  K$ y3 \; `+ f
A1015 Q4 to-126
  q$ l: T( n2 i: r* w/ K0 IC1815 Q1 to-126 9 a2 @- R0 y* d9 R$ z8 z1 }
C1815 Q2 to-126
  K) s8 S2 |! n8 SIN4148 D4 diode0.4 + h7 H: h0 S* f4 s7 |7 _
LED D2 rb.2/.4 (发光二极管)4 m$ h! [) d" p3 j& W8 c0 z
SINGAL D6 rb.2/.4 (发光二极管)
. h4 v5 c/ x$ q# r9 y                                 
DB9 232插座  
40PIN 烧写卡座
40PIN IC座(插监控芯片用)
232串口线
PCB
89C51监控芯片   
15V电源

# j" n( p( ?+ Q( V. f
PCB背面的照片:本来有一个大面积的铺铜的不知为啥给搞掉了:
 
DIY安装步骤:
1:安装电阻,共11个;元件插到位后焊接剪脚:
2:安装二极管,三个1N4148 和一个12V稳压管DW2。请仔细看管子的表面有字:稳压管印有12V字样,千万别给搞混了。二极管是有极性的, 二极管的黑头方向插向pcb的印有白色的一边就对了:元件插到位后焊接剪脚:
3:安装2个104和2个30p电容;11。0592晶体, 这些都没有方向性随便插:
4:插入三极管。电解电容,发光管:注意这些东西都是有极性的:如果搞反了可不行。电解电容和发光管很好办,都是负极向下。三极管(2个2SC1815,一个2SA1015,)以及一个78L05的稳压IC:他们的方向在PCB上可以看到,屁股的方向就是半圆圈的方向。
5:插入排阻(排阻有一个白点的一端是公共端,他的位置在靠近PCB边源的一端;电源插座232插座就不用说了。
6:插监控芯片的插座
7:插烧写卡座。由于他和监控芯片是面对面的, 因此必须先焊接监控芯片插座,最后焊烧写卡座。否则等会不好动烙铁了。
8:如果您实在搞不清除元件的方向, 请睁大眼睛仔细看看上面的照片吧。
9:最后检查一下电路板的各个地方有没有插错, 短路的。再按照上面的调试方法调试。如果没有插错
基本可以一次调OK
% \: W: Y$ H: z9 O+ Q

& L1 X+ D4 k+ _# \6 z& @/ ?# `5 o- z) ]4 S" W3 b+ e2 c- x; b1 ]" d
[ 本帖最后由 baojian510 于 2008-12-31 11:16 编辑 ]
作者: y175813652    时间: 2008-12-31 15:20
LZ 你不是说能下载吗 ?下载的文件呢?#35提供个
2 _' }! ?# ?- T7 f0 ~6 I. D( u! h上传不方便的话,发个邮箱:175813652@163.com,本人初学中




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2