一、器件的选用

  制做并口ISP下载在网上有很多的电路和对应的PC端下载软件。很多人疑惑,不知该用哪张图,用哪个下载软件。我看了一下,采用的器件主要是74HC373、74HC541和74HC244。其实用哪个器件都可以,基本上用哪个软件也都可以使用。只要搞清了它们的并口引脚和控制线的控制方法。我先上这几个器件的图:

通过这几张图的逻辑和真值表可以看出它们的异同。

ISP下载线电路的实质也就是将PC端下载软件送出的4路串行编程信号通过4个缓冲器整形为TTL信号然后交给AT89S51的ISP口。只要把4路进入四路缓冲器的信号线接准确了,再把控制线的电平状态搞清接对了,就基本上成功大半了。
三个器件的基本接线原理图为:
1、74HC244

2、74HC541:

3、74HC373:

  上面三张图的用法是一样的,可以使用同一种PC端下载软件,控制端都是采用低电平缓冲器导通,高电平截止。

而74HC373还可以采用高电平导通,低电平截止的方案,如下图:

上图的控制线由OE改为了LE控制,OE端接地,输出缓冲器长期导通。整个电路的控制取决于D锁存器的控制,高电平时导通,低电平锁存。
下面我们通过分析电路图来看看采用的是哪种方案:
图1:

上图采用的是74HC373,1脚的OE是接了地的,而LE是接了并口的第17脚。说明此方案是高电平控制导通的。

图2:

这张图采用的是74HC541,G1和G2连在一起接到了并口的第5脚。他采用的方案是低电平控制导通方式的。

我们再来看看PC端下载软件。
1、ISP-30a

上面这个软件是官方的一个ISP下载软件,它配套的是上面采用74HC541的那张ISP PROGAMMER INTERFACE的图。它不能按自己的要求设置并口引脚。只能是5、6、7、9、10、18脚分别输出BE、SCK、MOSI、RST、MISO、地。也就是说,只要你按照这几个并口引脚号接线,采用上面低电平导通方案的三种器件都可以的。

2、Easy_51Pro2.0,包括现在的ISPlay1.5

在这个软件的运行目录里有EasyISP.ini文件,它可以对各功能输出的并口引脚号根据自己的实际接线来设置。并且还可以设置LE的导通是高电平还是低电平,OE的导通是高电平还是低电平。总之,这些都可以随你控制。如下图:

就是说,你要是使用这个软件,那么你可以采用上面三种器件的所有四种方案,只要进行相应正确的设置就可以完成。

二、并口下载线的调试

  有个并口调试软件对你制做ISP下载线是个很好的帮助,如下图:

利用这个并工具可以帮助你一步步完成制做ISP下载线的调试工作。
  1、首先是检测PC上并口的好坏。很多人做好了下载线忙活了很多天才发现自己PC上的并口是坏的。现在有了并口调试器就可以,首先检测你的并口是否是好的。分别在上面输出框的1-9、14、16、17    脚前点上勾。并用万用表测量对应的并口脚,当勾上时为高电平(5v),去掉勾为低电平(0v)。对于10-13、15这些只读脚的测量,首先按下面的“开始”钮。这时在输出框的白色图示区域不断显示这些引脚的电平状态,例如:如果你把用并口11脚用导线去触碰18-25脚这些接地脚,你会在图示区内看到该脚电平的变化。如下图:

这样你便知道了你并口上你每一个引脚的输入、输出是否正常。

  2、当你做好了ISP下载线后,把ISP下载线上的器件接上5v电源,并口接到PC的并口上,然后打开这个并口调试软件。例如我们就用上面的第一张ISP下载线原理图,

  这张图的控制线是LE高电平导通控制,控制线在并口上是17脚。其它MOSI,MISO,SCK,RST分别对应并口的14、15、1、16脚。这样你打开PC上的并口调试软件,先把17脚前点上钩。用万用表测量74HC373的第11脚(是器件的第11脚)是否已是高电平(5v),然后再把软件输入框的14脚前点上勾(一会儿再去掉勾),测量J2的MOSI端是否已随调试器点选的变化发生高低电平的变化。依次将几个引脚都测量一下。注意:MISO的意思是主器件接收,从器件发送信号。所以测量第15脚时,是把J2的MISO端用一个1K的电阻接地或接电源Vcc,观查调试器的输入框的第15脚的状态是否有变化(先要按下“开始”钮)。这样测试后,ISP电路的问题就基本完成,然后将J2的MOSI、MISO、SCK、RST分别正确的接到AT89S51的P1.5、P1.6、P1.7、和RST脚上。将ISP下载线的Vcc和GND和51板上的Vcc和GND接好。就可以连上PC用Easy_51Pro_v2.0来调试了,当然调试前还是要把Easy_pro目录里EasyISP.ini设置文件先设置正确了。这样你的并口ISP下载线就八九不离十了。注意,从J2到51板的连线要尽量短些,最好不要超过20CM。

再上张我做过几块下载线的图,来自于上面那张ISP PROGAMMER INTERFACE的图修为用74HC373:

电路板图:

实物图:

       最近网友成都cd713 提出说按我的电路做了,测量都是正确的,但用Easy51Pro2.0就是找不到器件,我就赶紧进行测试,真的是这样,我用ISP-30a和ISPlay1.5测试都是很稳定快速的。ISPlay1.5可以将速度调到100%也很稳定,但用Easy51Pro2.0就是检测不到器件。而ISPlay1.5是继Easy51Pro2.0后面出的并口版本,说明Easy51Pro在并口下载时的确是存在问题的。希望新手学习的时候留意,以免多走弯路。我上两张用ISP-30a和ISPlay1.5检测器件的图网友们,如需要的可以对照着从网上下载或向我索取。要注意的是:电脑并口地址要为378,模式为EPP或ECP都可以,中断号7、5都可以。尤其是笔记本上的并口,很多缺省状态下的并口地址不是378,要在BIOS中修改一下。这张是ISP-30a界面和检测到AT89S52的特征字的界面。 这张是用ISPlay1.5检测到AT89S52的特征字界面。 
这张是ISPlay1.5的设置

自制单片机之九……写给对制做并口ISP下载线有疑惑的朋友的更多相关文章

  1. 自制单片机之八……USB-ISP下载线

    现在的笔记本包括台式机都渐渐地舍弃了并口.串口:很多网友也跟我说,台式没有并口了,下载线没法用了,让我帮他想想办法.看来做个USB-ISP下载线是势在必行了. 在网上搜了下,主要有两种方案,一种是用F ...

  2. 自制单片机之二-----AT89S51ISP下载线的制做

    最小系统板做好了,接下来就是做根ISP下载线了.否则程序怎么写到AT89S51芯片里呢? 先来认识一下AT89S51上ISP(在线编程)功能脚的定义 看上图的左边AT89S51引脚图的P1.5.P1. ...

  3. 自制单片机之一------AT89S51最小系统制做

    C51最小系统电路在网上一搜一大把,大同小异.我略做改动后如图: 加一个11.0592MHZ的晶振是为了以后做串口通信时和PC有相同的波特率.可用短路帽切换.说说板子的布局:网上卖的最小系统都是把板子 ...

  4. 自制单片机之十八……无线通讯模块NRF24L01+

    (一)基础知识篇 今天刚调试好,先看图吧! 这张是AT89C2051控制NRF24L01+做发射调试. 看看NRF24L01细节吧! 这是LCD屏显示: AT89S52做接收测试: 正在接收时的显示: ...

  5. 自制单片机之十七……PC与单片机RS-232串口的通讯和控制

    这次我们来试着一步步的去掌握PC与单片机通过RS-232进行通讯和控制. 先说说我硬件的情况.我用的PC是个二手的IBM240小本本,十寸屏,赛扬400,机子很老了.但也有它的优点:1.串口,并口,P ...

  6. 自制单片机之七……RS232串口

    在我的板子上其它的部分都已完成了,现在就剩下RS232串口了.串口对于单片机很重要,有了它就可以和PC通信了,可以用PC来控制你的单片机,也可以将你单片机上采集的数据传到PC上. 留的位置好像有点挤. ...

  7. 单片机裸机下写一个自己的shell调试器(转)

    源: 单片机裸机下写一个自己的shell调试器

  8. 【Servlet】把文件写到Respond输出流里面供用户下载

    本文区分于<[Jsp]把Java写到Respond输出流里面供用户下载>(点击打开链接)把原本该打印到控制台的内容,直接打印到一个文本文件txt中给用户下载. 实际上是<[Strut ...

  9. 自制单片机之十二……AT89C2051烧写器的制做与调试

    现在都用S52了,还用C2051干嘛!价格也差不多.但是C2051的体积要比S51.S52小很多,而且引脚只有20只,在一些简单的控制中,这些引脚已足够了,小的体积更具有优势些.但目前好像还没有支持在 ...

随机推荐

  1. 设计模式(十三): Proxy代理模式 -- 结构型模式

      设计模式(十一)代理模式Proxy(结构型) 1.概述 因为某个对象消耗太多资源,而且你的代码并不是每个逻辑路径都需要此对象, 你曾有过延迟创建对象的想法吗 ( if和else就是不同的两条逻辑路 ...

  2. 黑马程序员_JavaIO流(一)

    IO(Input Output)流 概述: IO流(数据流)用来处理设备之间的数据传输. Java对数据的操作是通过流的方式. Java用于操作流的对象都在IO包中. 流按操作数据分为两种:字节流与字 ...

  3. 关于apriori算法的一个简单的例子

    apriori算法是关联规则挖掘中很基础也很经典的一个算法,我认为很多教程出现大堆的公式不是很适合一个初学者理解.因此,本文列举一个简单的例子来演示下apriori算法的整个步骤. 下面这个表格是代表 ...

  4. [置顶] ARM指令集和常用寄存器

    1) ARM指令集 32位的 ARM指令和 16位 的Thumb指令 1,寄存器寻址 MOV R1, R2  //将寄存器R2的值传给寄存器R1 2,立即寻址 MOV R0, #0XFF00 //数据 ...

  5. Swift补基础之Selector、条件编译、编译标记、NSObject

    在swift中使用条件编译比较直接 #if <condition> #elseif <condition> #else #endif 例如 :在debug模式和release模 ...

  6. GitHub 小试

    GitHub是什么? 它是用来进行版本控制的,就是用来保存项目的地方. 但是项目要是运行,还是需要你本地的环境,它只不过是用来保存代码罢了. GitHub如何操作? 可以通过客户端进行代码提交,更新. ...

  7. Web的工作机制

    简要的介绍一下Web的工作机制,以便对开发JavaWeb项目有个更好的理解. 一.Web的概念     1.1    何为Web:Web是万维网(World Wide Web)的简称.Web出现以前, ...

  8. jquery之onchange事件

    $(function(){ $("#opreateHtml").window("close"); $("#deliveryGrid").da ...

  9. python 下的数据结构与算法---1:让一切从无关开始

    这段时间把<Data Structure and Algorithms with python>以及<Problem Solving with  Algorithms and Dat ...

  10. 使用Razor来进行页面布局

    UI设计师们现在也讲究页面设计的语义化和结构化,把一个页面分成很多个模块,使用语义化的类名或id来标识这些模块.Razor推出了新的布局解决方案来迎合这一潮流. 这里涉及到Razor的一些语法,大家可 ...