1、电子竞赛必备超强51单片机知识接触过单片机的朋友们都时常会听到别人提最小系统这个词.那到底什么是最小系统,有怎样设计称上最小呢?下面让依依电子来告诉大家:单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统. 对51系列单片机来说,单片机+晶振电路+复位电路,便组成了一个最小系统.但是一般我们在设计中总是喜欢把按键输入、显示输出等加到上述电路中,成为小系统。 应用89C51(52)单片机设计并制作一个单片机最小系统,达到如下基本要求:1、具有上电复位和手动复位功能。2、使用单片机片内程序存储器。3、具有基本的人机交互接口。按键输入、LED显示功能。4、具有一定的可扩
2、展性,单片机I/O口可方便地与其他电路板连接。 51单片机学习想学单片机,有一段时间了,自己基础不好,在网上提了许多弱智的问题,有一些问题网友回答了,还有一些为题许多人不屑一顾。学来学去,一年多过去了,可是还是没有入门,现在我就把我学习中遇到的一些问题和大家分享一下,希望在大虾的帮助下能快速的入门:) 在学习之前我在网上打听了一下atmel公司的单片机用的人比较多,avr系列这几年在国内比较流行,但是考虑到avr还是没有51系列用的人多,51系列的许多技术在实践中都已经的到了前人的解决,遇到问题后,有许多高人可以帮助解决,所以这次学习,选用了atmel公司的at89s52,来进行学习。学习单片
3、机是需要花费时间实践的;学之前我们先准备好所需的东西一、所需硬件 at89s52一片;8m晶振一个,30pf的瓷片电容两个;10uf电解电容一个,10k的电阻一个;万用板(多孔板)一块;其他的器件如电烙铁一把30w的,松香,焊锡若干,如果是第一次学习,不知道这些东西,没关系,以下是它们的照片:Atmel公司生产的at89s52 8m晶振 22pf瓷片电容 电解电容图 1/4 w 10k 的电阻 普通的电木万用板 好了,有了这些东西,我们就可以把它们组合到一起做成我们的最小系统了:)有了这些东西我们怎么焊接丫?不用着急,过一会我们把原理图给大家画出来大家就会了。 二、51单片机最小系统原理图。
4、这张图是组成51单片机的最小系统图了,我们把他的功能在这里简单的介绍一下核心器件: 单片机,周围的东西都是使单片机更好的工作而设立的; 1、震荡器 单片机系统正常工作的保证,如果振荡器不起振,系统将会不能工作;假如振荡器运行不规律,系统执行程序的时候就会出现时间上的误差,这在通信中会体现的很明显:电路将无法通信。他是由一个晶振和两个瓷片电容组成的,x1和x2分别接单片机的x1和x2,晶振和瓷片电容是没有正负的,注意两个瓷片电容相连的那端一定要接地。 2、复位端 复位电路, 给单片机一个复位信号(一个一定时间的低电平)使程序从头开始执行;一般有两中复位方式:上电复位,在系统一上电时利用电容两端电
5、压不能突变的原理给系统一个短时的低电平;手动复位,同过按钮接通低电平给系统复位,这时如果手按着一直不放,系统将一直复位,不能正常工作,如果我们买的小按钮有问题,我们又没有仔细的检查,那可有点麻烦了,呵呵,我估计我们的运气不会那么差,哈哈,在这里我们需要注意用的电容是电解电容,是有正负的,如果接反了,他就会爆炸,哈哈做实践真是不容易,有时要冒着危险的,哈哈。 我们可以用并口或者串口把程序下到单片机中,这样我们就可以省去了买烧录器, 3、电源, 说了半天还没有说到电源,要不单片机怎么工作呀,图中没有给出,第20管脚是地GND,第40管脚是电源VCC,一般我们在电源vcc处。加一个0.1uf的瓷片电
6、容,滤掉电源中的高频雑波,使系统更安全。注意51单片机使用的是5付直流电源。第一课:51单片机最小系统 实际上,51单片机核心外围电路是很简单的,一个单片机一个看门狗一个晶振2个磁片电容; 1. 单片机:atmel的89C51系列、winbond的78E52系列,还有philips的系列,都差不多;现在有一些有ISP(在线下载的),就更好用了; 2. 看门狗:种类很多,我常用的有max691/ca1161和DS1832等,具体看个人习惯、芯片工作电压、封装等。Max系列和DS系列,还有IMP公司的,种类很多,一般只需要有最基本的功能就可以了;原来我使用max691,但是max691比较贵,因为
7、它有电池切换功能,后来新设计电路板,就都采用ca1161了。 很早以前的电路设计中,现在可能还有人使用,使用一个电阻和一个电容达成的上电复位电路;但是,这样的复位电路一个是不可靠,为什么不可靠,网络上能找得到专门论述复位电路的文章;更重要的是,51系列的单片机比较容易受到干扰;没有看门狗电路是不行的,当程序跑飞时,回不来了,死在那里。 常规的做法是买一个专门的看门狗电路,完成复位电路和看门狗电路的功能。 这些芯片的资料很容易在网络上找到,通常使用XX搜索就可以了;单片机和单片机抗干扰能力是不一样的。如果你的产品是工作在干扰比较大的环境,可以试试选用不同品牌的单片机;原来我在一个光电所,做YAG
8、激光治疗机的控制部分,脉冲激光机的电源放电的时候,能量是很大的,在采取了所有能够想到的光电隔离等措施之后,还是不行;后来,选用了intel的8031,就可以了。小声的说:当时的philips的单片机抗干扰性能是最差的,可能跟Philips主要是用在民用领域有关。现在不知道怎么样了,有人知道的话告诉我。 单片机的输入输出口线是最容易引进干扰的地方;在严重干扰的情况下,需要将所有的口线光电隔离。 3. 晶振:一般选用11.0592M,因为可以准确地得到9600波特率和19200波特率;也可以使用36.864M,这个频率是1.8432M的20倍,看别人的电路板上用过,我也没有用到。这2种晶振很容易买
9、到,价钱跟12M的一样。书上说,12M的晶振也能得到9600的波特率,但是,实际用的时候,会每隔一段时间就出错一次,好像累积误差一样,比较奇怪。 即使你的单片机系统不使用RS232接口,也可以做一个Rs232,留着做测试,或者预留等等,没有坏处。除非你的单片机系统的口线不够用了。 4. 磁片电容:22pf30pf,可以在有些书上找到什么晶振频率对应什么容量的磁片电容,但是,我都是随便拿来使用,反正在11.0592M下,都没有问题;如果你用到了更高的频率,最好还是找找资料看看。 参见以下电路图: 如果你的单片机系统没有工作,检查步骤如下: 1. 查看门狗的复位输出,可能的话在电路板上加一个LED
10、,下拉,这样看起来就更方便;要是看门狗复位信号有,往下; 2. 查单片机,看看管脚有没有问题;一般编程器能够将程序写入,说明单片机是好的;最好手头上准备一个验证过的单片机,内部有一个简单的程序,比如,在某个口线上输出1个1秒占空比的方波等,可以使用万用表测量。 加一句:设计产品时,要在关键的地方:电源、串口、看门狗的输出和输入、I/O口等加不同颜色的LED指示,便于调试;作为批量大的产品,可以去掉部分LED,一方面是降低成本、一方面是流程保密; 3. 再查磁片电容,有些瓷片电容质量不行,干脆换了;顺便说一下,换器件最好使用吸锡带,将焊盘内的锡吸干净,再将器件拔出,这样不会损伤焊盘内的过孔;再将
11、新的瓷片电容焊接上去的时候,用万用表量量是好的再焊; 4. 最后只有换晶振了;切记要买好的晶振,有些品牌质量比较好。 5. 以上按照以上步骤检测时,将无关的外围芯片去掉;因为有一些是外围器件的故障导致单片机最小系统没有工作。第二课 基本的芯片和分立器件 2.1 简述 有必要对以下系列的芯片和分立器件进行介绍。 除了单片机作为控制器的核心外,作为一个产品,由很多东西构成;所以,在讲系统之前,先将这些零零碎碎的东西一并交待。就好像一栋房子,有各种各样的构件组成,下面的这些东东就像砖瓦一样,没有不行。 2.2 74系列芯片 74系列的芯片的下载地址: .tw/asp/class36_40.htm 7
12、4系列的芯片是古老的一族,大部分的芯片现在均已不用了,但是,实际上,在目前的系统中,还能看到一些芯片,有些芯片现在还在系统中使用,例如: 1、 7404 6个反相门 下载地址: 将输入的TTL逻辑反相,如:0-1,1-0 2、 7407 6个集电极开路门 下载地址: 由于集电极开路门可以外接高电压,可以最高到DC30V,电流最大到39mA,通常我用它驱动8字数码管和继电器等大电流的负载;开路门内部结构是达林顿管的,输出的逻辑是正的; 与其类似的芯片是7406,只不过是反相开路门。 3、 74LS573与74LS373 8 数据锁存器 74LS373下载地址: 74LS573下载地址: 引入几个
13、概念: 1. 真值表 参见74LS373的PDF的第2页: Dn LE OE On H H L H L H L L X L L Qo X X H Z 这个就是真值表,表示这个芯片在输入和其它的情况下的输出情况。 每个芯片的数据手册(datasheet)中都有真值表。 布尔逻辑比较简单,在此不赘述; 2. 高阻态 就是输出既不是高电平,也不是低电平,而是高阻抗的状态;在这种状态下,可以多个芯片并联输出;但是,这些芯片中只能有一个处于非高阻态状态,否则会将芯片烧毁; 高阻态的概念在RS232和RS422通讯中还可以用到。 3. 数据锁存 当输入的数据消失时,在芯片的输出端,数据仍然保持; 这个概念
14、在并行数据扩展中经常使用到。 4. 数据缓冲 加强驱动能力。74LS244/74LS245/74LS373/74LS573都具备数据缓冲的能力。 OE:output_enable,输出使能; LE:latch_enable,数据锁存使能,latch是锁存的意思; Dn:第n路输入数据; On:第n路输出数据; 再看这个真值表,意思如下: 第四行:当OE1是,无论Dn、LE为何,输出端为高阻态; 第三行:当OE0、LE0时,输出端保持不变; 第二行第一行:当OE0、LE1时,输出端数据等于输入端数据; 结合下面的波形图,在实际应用的时候是这样做的: a OE0; b 先将数据从单片机的口线上输出
15、到Dn; c 再将LE从0-1-0 d 这时,你所需要输出的数据就锁存在On上了,输入的数据在变化也影响不到输出的数据了;实际上,单片机现在在忙着干别的事情,串行通信、扫描键盘单片机的资源有限啊。 在单片机按照RAM方式进行并行数据的扩展时,使用movx dptr, A这条指令时,这些时序是由单片机来实现的。 后面的表格中还有需要时间的参数,你不需要去管它,因为这些参数都是几十ns级别的,对于单片机在12M下的每个指令周期最小是1us的情况下,完全可以实现;如果是你自己来实现这个逻辑,类似的指令如下: mov P0,A ;将数据输出到并行数据端口 clr LE setb LE clr LE ;
16、上面三条指令完成LE的波形从0-1-0的变化 74ls573跟74LS373逻辑上完全一样,只不过是管脚定义不一样,数据输入和输出端各在一侧,PCB容易走线;所以大家都喜欢使用这个芯片。 4、 74LS244 数据缓冲器 下载地址: 数据输出能力比较强,输出电流可以到40mA以上; 4个缓冲器分成2组,具有高阻态控制端口 5、 74LS245 总线缓冲器 双向数据接口,通常在ISA板卡上可以看到; 早期的51系统中,为了扩展RAM、eprom、A/D、D/A、I/O等经常可以看到这个片子; 为了增强驱动能力,有时是为了隔离输入和输出,主要是布线方便,象74LS573一样,输入、输出在一侧,经常
17、用到这个片子 6、 74LS138 三八译码器 在早期的51系统的扩展中,作为地址选通的片子,可以经常看到。 另外一个类似的芯片是74LS154,是4-16译码器,现在更是少见了。 有兴趣的可以研究一下何立民的经典著作中的有关章节。 知道有这么一个芯片就可以了。 2.3 CD4000系列 CD4000系列的芯片,除了跟74系列的电气特性有所区别外,例如: 1) 电压范围宽,应该可以工作在3V15V,输入阻抗高,驱动能力差外,跟74系列的功能基本没有区别; 2) 输入时,1/2工作电压以下为0,1/2工作电压以上为1; 3) 输出时,1=工作电压;0=0V 4) 驱动能力奇差,在设计时最多只能带
18、1个TTL负载; 5) 如果加上拉电阻的话,至少要100K电阻; 6) 唯一现在使用的可能就是计数器,CD4060的计数器可以到14级二进制串行计数/分频器,这个74系列的做不到这么高; 下载地址: .tw/asp/class36_40.htm .tw/pdf_file/CD4060.PDF 2.4 ULN2003/ULN2008 它的内部结构也是达林顿的,专门用来驱动继电器的芯片,甚至在芯片内部做了一个消线圈反电动势的二极管。ULN2003的输出端允许通过IC 电流200mA,饱和压降VCE 约1V左右,耐压BVCEO 约为36V。用户输出口的外接负载可根据以上参数估算。采用集电极开路输出,
19、输出电流大,故可以直接驱动继电器或固体继电器(SSR)等外接控制器件,也可直接驱动低压灯泡。 经常在工控的板卡中见到这个芯片。 有个完全一样的型号:MC1413,不过现在好像不怎么见到这个型号了,但是管脚与2003完全兼容。 ULN2003可以驱动7个继电器;ULN2008驱动8个继电器。 ULN2003下载地址: ULN2008下载地址: 没有找到。奇怪啊。 2.5 光耦 光耦是做什么用的?光耦是用来隔离输入输出的,主要是隔离输入的信号。 在各种应用中,往往有一些远距离的开关量信号需要传送到控制器,如果直接将这些信号接到单片机的I/O上,有以下的问题: 1) 信号不匹配,输入的信号可能是交流
20、信号、高压信号、按键等干接点信号; 2) 比较长的连接线路容易引进干扰、雷击、感应电等,不经过隔离不可靠 所以,需要光耦进行隔离,接入单片机系统。 常见的光耦有: 1) TLP521-1/ TLP521-2/ TLP521-4,分别是1个光耦、2个光耦和4个光耦,HP公司和日本的东芝公司生产。 下载地址: .tw/pdf_file/TLP521-1-2,4.PDF 发光管的工作电流要在10mA时,具有较高的转换速率; 在5V工作时,上拉电阻不小于5K,一般是10K;太小容易损坏光耦; 2) 4N25/4N35,motorola公司生产 下载地址: .tw/pdf_file/4N25-8,35-
21、7,H11A1-5.PDF 隔离电压高达5000V; 3) 6N136,HP公司生产 下载地址: .tw/pdf_file/6N135-6.PDF 要想打开6N136,需要比较大的电流,大概在1520mA左右,才能发挥高速传输数据的作用。 如果对速率要求不高,其实TLP5211也可以用,实际传输速率可以到19200波特率。 选择光耦看使用场合,tlp521-1是最常用的,也便宜,大概0.71元; 要求隔离电压高的,选用4N25/4N35,大概在3元左右; 要求在通讯中高速传输数据的,选用6N136,大概在4元左右。 光耦应用的原理框图如下所示: 1. 输入干接点隔离 2. 输入TTL电平隔离
22、3. 输入交流信号隔离 4. 输出RS232信号隔离 5. 输出RS422信号隔离 光耦除了隔离数字量外,还可以用来隔离模拟量。将在今后的章节中描述。 2.6 三极管 2.7 光电管 2.8 电容 2.9 电阻 2.10 固态继电器 2.11 继电器 2.12 变压器与整流桥 2.13 三端稳压器 2.14 开关电源芯片 2.15 封装知识、芯片批号等 2.16 接插件 2.17 器件选购的知识 2.6 三极管 2.6.1 三极管的4种工作状态 1) 饱和导通状态 饱和导通=0 2) 截止状态 饱和导通=1 3) 线性放大状态 作为低频放大器时使用,具体的可参见有关电子线路的书籍; 4) 非线
23、性工作状态 在无线电通信系统中,作为混频器等使用。具体的可参见有关电子线路的书籍; 愚记得南京工学院也就是现在的东南大学在80年代初期有一套电子线路5本,是电子专业的书籍,比较难懂;现在,即使是在电子专业的学生中,也应该降低了对三极管的哪些复杂的参数的要求了吧;在实际使用时,即使是模拟电路、非线性电路,也都是集成电路了,谁还使用三极管自己做呢?如果万一需要,现学也来得及。这套书很强的。编写人在那个年代肯定都是牛人。 学三极管这些参数很繁琐的,要是现在的非电子类的大学生或者大专生们还学这些玩意,我只能说是学校在误人子弟了。 好多学校都在扩招,很多学生念了4年下来,学了一堆过时的理论,跟实际的东西
24、一点没有接轨,不知道7407是干什么用得,不知道三极管的几个状态;我只能无话可说。 所以,念了4年下来,跟企业的需求还有一段距离,还需要从头来过;聪明的学生赶紧抓住机会去学习,去实习,这样,还可以赶紧补上实际应用的这一课。 言归正传。 参见下图: 当单片机的口线输出电平为1时,三极管的be结导通,ce结导通,输出的电压值为0V; 当单片机的口线输出电平为0时,三极管的be结不导通,ce结截止,输出的电压值为5V; 在这种数字电路的应用中,相当于三极管是一个反相开路门。 计算是否导通,公式如下: IB(放大倍数,希腊字母的贝塔)Ibe 当Ice 相差越大,饱和程度越深,Vce越小,三极管的输出内
25、阻越小; 这个概念要用到光电管中。 设计使用时大概算算,心里有个数;在电路板上试试,行的通,那就是它了。可以测量Vce值,至少要小于0.1V就可以了。 常用的PNP三极管是2N5551,驱动40mA的LED(电压在24V)、蜂鸣器等均没有问题。 2.6.2 三极管的具体应用 实际上,已经有象7407、ULN2003可以取代三极管在数字电路中的作用;但是,有时是受到PCB面积的制约,有时是为了降低成本,有时是因为布局方便,在12个输出点时,还是可以使用三极管来做驱动的。 例如:驱动一个蜂鸣器;往往系统中的蜂鸣器跟其它驱动设备,继电器等,距离较远;这时,没有必要使用一片7407,或者ULN2003
26、来驱动;驱动的接口如下: Re:从51初学者到电子工程师(转帖)2.7 光电管 我这里所谓的光电管有2种: 1) 反射型光电管 2) 对射型光电管 这2种产品在市场上又可分为调理好的和没有调理好的; 这2种光电管在电子产品世界和电子技术应用杂志上都有大量的广告。随便找一本都有。 我所说的调理好的指的是内部已经加了限流电阻和输出的放大驱动电路了。它的特点是只有3根线,电源2根,输出信号一根,TTL电平的;但是,有时受到某种限制,需要使用没有调理好的,怎么办呢? 参见下图:光电管原理框图 这种没有调理好的光电管在使用时,需要做一块小的电路板,在发光管加限流电阻,在光电三极管的集电极加上拉电阻到5V
27、,如下图所示:光电管工作框图1。 但是,在使用中我发现,输出的信号不稳定,尤其是在使用比较长的电缆传输到单片机的时候;究其原因,我认为是由于反射或者对射的红外光落在光电三极管的靶面上,光强未能导致光电三极管深度饱和,使得输出的内阻偏大,环境的噪声和电缆的干扰信号容易在线路上叠加的缘故; 为了可靠工作,仿照达林顿管的结构,在光电三极管的输出端加一个限流电阻接到NPN的B结,当无光的时候,2N5551饱和导通,输出电压为0V;实际测量小于0.1V;当有光,甚至是弱光时,2N5551截至,输出电压为5V。将3K电阻换成更大或更小的电阻,可以调整光电三极管的输出的灵敏度。 具体工作过程可以自行分析,做
28、个实验。 2.8 电容 2.8.1 电容的主要种类 电容有以下几大类: 1) 电解电容 2) 独石电容 3) 磁片电容 4) 胆(左金右旦)电解电容 5) 涤纶电容等 电容的指标是:耐压值和电容容量。例如:220u/50V,就是说,这个电解电容耐压值为50V,容量为220u。 电容的容量跟电容的介质有关。 顾名思义: 电解电容为电解质作为介质的,铝作为电极; 独石电容是使用石头作为介质的; 磁片电容是磁片作为介质的; 胆(左金右旦)电解电容使用电解质作为介质,但是,电极采用胆(左金右旦)金属。 涤纶电容采用涤纶作为介质。 有兴趣的网友可以拆一个电容看看。 2.8.2 电容的使用场合 1. 电源稳压和滤波 电解电容主要是用来稳压和低频交流滤波的;高频滤波是使用磁片电容和独石电容。 当电解电容作为稳压时,接在整流桥和三端稳压器的输出端,起到稳定电压的作用。其工作机理相当于一个水库,从上游来的带有波浪的水到了水库,就变的平滑了。 但是,铝电解电容的电解质随着时间的推移会干涸,所以在设计时需要留有
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1