终极EASY 51 PRO 2.0编程器 DIY——实战原理篇
先上个图,声明图是借别人的,这这个图网上版本很多,但是关键部分都是100%相同的,呵呵~不想自己画了,借用吧~~~先解释一下这个图,其实原理很简单的,先说下单片机编程,就好比我们电脑做系统一样,你要有WINDOWS光盘(程序),还得有光驱(编程器),才能把系统文件安装到硬盘上。目的就是把编译好的程序,烧录到芯片中去,通过AT89C51的规格书(也就是白皮书)可以知道,决定它工作状态的是是31脚,给他施加VPP电压,也叫编程电压。它就进入烧录状态(就好比电脑设置光驱启动一样)。
电脑做系统,需要计算机开机运行;单片机也是,要往他里面写程序,起码也得让它先工作,于是我们参考51规格书,在它18,19脚接一个晶体震荡器,加两个小电容, 一个单片机系统就搭建好了,这个时候通电它就开始工作了~和一台没有装操作系统的计算机一样~呵呵。它工作了以后,只要我们再把它的31脚加上VPP电压,它就进入编程状态,就可以往他里面写程序了。但是VPP取多少,怎么往里面写呢?得有个通讯的路啊,电脑做系统我们知道数据从光驱出来通过数据线进硬盘了,89C51肯定也得有吧? 对的,呵呵,我们通过再查89C51的规格书就能发现, VPP根据厂家和产品型号情况,一般是取+5V,+12V,比如我们用的89C51,89C2051就是12V,89CS51就是5V~ VPP知道了,继续看规格书,就能发现10RXD;11 TXD两个引脚,说到这里,有不少朋友应该知道了,呵呵,在有些交换机,串口通讯,猫,光收发器等设备常见到,就是数据收发引脚~呵呵,我们的数据写入和读出,也就是用这两个引脚。
好了,让我们来总结一下:想让51运行,就需要搭建个基本系统, 在18,19脚接个晶体震荡电路,给单片机提供一个工作的频率,通上电,就可以了;如果要给它编程,就在31脚加个VPP电压,那么就可以直接通过10,11脚进行数据的读写了。
参考一下上面的电路,相关的部分,能理解吧? 我们继续~ 再仔细看89C51规格书介绍,我们还能获取一个信息:89C51可以外接晶体震荡器来工作,但是也可以直接从外部引入一个震荡信号来工作,这样如果89C51的工作环境附近有稳定的震荡信号,就可以直接引过来接到19脚,18脚空着即可。从而省掉晶体震荡器。 我们上图右边那个IC座19脚正是用这一点,接到了左边的晶振上~看一下,这个应该也好理解吧?(这个地方注意,引入信号时,19,18脚别混了……)只要IC座上插上单片机,单片机就可以工作了,而不用再多接晶体震荡器。
另外,因为51单片机P1-P3输出内部都有上拉电阻,以提高输出电平,但是P0没有~ 所以我们需要把P0的8个输出接上8个10K上拉电阻和电源相连,直接用一个10K排阻最好`呵呵。至于为什么这样,我们日后深入
了再讨论~
继续, 我们刚才说过,电路接好了后,除了电源外; 还要VPP,有的需要12V,有的5V就可以了,怎么办呢?我们可以用跳线解决,不同的芯片跳不同电压,以前老编程器不少是这种方案,但是我们这里的改进的图就用了3个三极管解决了这个问题,3个三极管组成开关电路,在编程时,用软件选择芯片型号,89S51的监控芯片识别芯片后,控制开关状态,以输出12/5/0V VPP电压,呵呵。看上图,是不是也可以理解了?
再往后,我们这个编程器工作电压是5V,VPP电压高的有12V,这就要求我们要提供2种电压,直接用2个变压器增加投资,双输出电源有不太好找,另就是VPP电压虽然高,但是电流不大, 一般1-3mA左右。 这时候就到了MAX232芯片出马了,它是TTL/CMOS和RS232通讯转换专用IC,同时还带有个电荷泵,能产生±10V的电压,也就是电压差能达到20V!哈哈~12V不就有了么? 用个12V的稳压管,加个电解电容整下波形,12V电源不就出来了~呵呵。
正好,MSX232的 TTL输入输出接到51监控的通讯脚TXD,RXD上。另一端接 计算机的COM口就好了~
最后数据从监控芯片的读写信号脚出来进入目标芯片的输入脚 RXD,完成写芯片过程,呵呵~
至于电源,用变压器,用USB,还是用开关电源这个我认为就是凭个人的爱好,只要你的电源电压稳定方便就行, 至于具体用什么样子,我就不多说了,呵呵~~说难听点,用4节干电池加个5V稳压管都行!!! 唯一需要说明的是,以前流传的用变压器供电时稳压管用7805或者78M05,这个又浪费了~其实用个78L05就可以,比78051A的额定电流,100MA电流绝对够用,也省电,7805大约2元,78L05才3毛钱~呵呵~~
说到这里,整个编程器就被分解完了,不知道我说明白了没有,呵呵也但愿没有啥错误,欢迎广大菜鸟加我讨论,更欢迎广大高手对小弟指导! 多谢了~~
另外,具体制作,请参考下一篇,的动手篇~呵呵~~ 相信看完这篇的你肯定对制作这个编程器有了9成把握了已经~ :):):):):):):):) 不明白为什么IO口在编程的时候也要和监控芯片的IO口并联 非常不错。。。。。。。。。。。。。。。。。。。。。。。。。。 感谢分享,感谢分享 学习了!!!!!!!!!!!!!!
页:
[1]