单片机常用电路1-晶振电路
在单片机的学习中,不光是单片机程序的编写,还有电路的设计。有些公司可能会把单片机开发分成两块:电路设计、程序设计。然后负责电路设计的人只负责电路设计,不用考虑单片机编程;程序设计的人只管单片机编程,不设计电路。
不过我个人认为,只搞电路设计的人可以不用关心单片机是怎么编程的,但是搞单片机程序设计的人,却必须要对电路很熟悉,你可以不用亲自设计电路,但是必须对单片机项目中各种电路的原理足够了解,这样才能确保设计出来的程序稳定、健壮。
举个例子来说吧,假如一个单片机系统中用到了EEPROM存储芯片,EEPROM芯片的SCL和SDA是开漏输出的,需要外接上拉电阻,假设电路板上的EEPROM芯片的SCL和SDA的上拉电阻忘记焊上或者坏掉了,这时候调试EEPROM是调不通的,如果这时候电路设计人员不在,而单片机程序设计人员又对EEPROM的原理不熟悉,就会陷入到麻烦中:因为对电路不熟悉,就会一遍一遍的查找程序的原因。可是程序明明没有问题啊,这个程序在别的项目中一直都是正常的,为什么在这个板子上就不行了呢?
还有一点,一般带有微控制器的电路板,电路功能是否正常,是需要编写一定的验证程序来测试电路板的性能的,单靠电路设计人员使用万用表、示波器等工具是无法验证电路的好坏的。
综上所述,单片机程序设计人员一定要对电路的原理熟悉,这样才能设计出正确的程序。
从本篇文章开始,我们就来简单学习一下单片机开发中常用的电路。
当然,由于本人水平有限,关于这些电路的讲解只限于简单原理的讲解。如果有错误,欢迎批评指正。
1. 单片机常用电路1-晶振电路早期的单片机(比如经典的51单片机)系统,外接晶振是必须的(当然也可以外接时钟脉冲,但是很少用),因为单片机的运行必须依赖于稳定的时钟脉冲。但是随着技术的发展,现在很多单片机都已经集成了内部时钟,所以在一般的应用场合,可以不用外接晶振电路了。不过由于内部时钟容易受外界干扰,所以在要求严格的场合,晶振电路还是很有必要的。
晶振电路1
图1是典型的单片机外接晶振电路。
图1 单片机晶振电路
该电路不只是有一个晶振,还有两个电容,这两个电容有什么作用呢?
这两个电容一般称为“匹配电容”或者“负载电容”、“谐振电容”。晶振电路中加这两个电容是为了满足谐振条件。一般外接电容,是为了使晶振两端的等效电容等于或接近负载电容。只有连接合适的电容才能满足晶振的起振要求,晶振才能正常工作。
负载电容的值由如下公式计算:
负载电容无法满足的话一般会使晶体频率产生偏差,严重的话晶体无法起振。电路设计中要尽量满足晶体的负载电容需求,从而使晶体工作在最佳状态。负载电容计算公式如下:
CL = C1*C2 / (C1+C2) + CS
CL为晶振的负载电容值,一般通过查询晶振的数据手册获得。CS为电路板的寄生电容,一般取 3~5pF,取C1 = C2,那么公式可以简化成如下:
CL = C1 / 2 + CS
一般情况下,增大负载电容的值会使振荡频率下降,减小负载电容的值,会使振荡频率上升。
晶振电路2
我们有时候还会看到如图2所示的晶振电路。
图2 不带并联电阻和带并联电阻的晶振电路
该电路中晶振上又并了一个电阻,这是为什么呢?
这个电阻实际上是反馈电阻,是为了方便晶振起振的。对于COMS而言,这个电阻的阻值可以是1M以上,对于TTL则是需要视情况而定。最好的办法是看看芯片的数据手册,确认芯片晶振电路内部是否有电阻,如果没有,电路设计时最好加上。
晶振电路3
图3是有源晶振电路。
图3 有源晶振电路
有源晶振通常的用法:一脚悬空,二脚接地,三脚接输出,四脚接电压。有源晶振不需要CPU的内部振荡器,连接方式相对简单(主要是做好电源滤波,通常使用一个电容和电感构成的PI型滤波网络,输出端用一个小阻值的电阻过滤信号即可),不需要复杂的配置电路。相对于无源晶体,有源晶振的缺陷是其信号电平是固定的,需要选择好合适输出电平,灵活性较差,而且价格高。
51单片机引脚功能介绍
40只引脚双列直插封装(DIP)。40只引脚按功能分为3类:
(1)电源及时钟引脚: Vcc、Vss;XTAL1、XTAL2。
(2)控制引脚: PSEN*、EA* 、ALE、RESET (即RST)。
(3)I/O口引脚:P0、P1、P2、P3,为4个8位I/O口的外部引脚。
2.2.1 电源及时钟引脚
1.电源引脚
(1)Vcc(40脚):+5V电源;
(2)Vss(20脚):接地。
2.时钟引脚
(1)XTAL1(19脚):如果采用外接晶体振荡器时,此引脚应接地。
(2)XTAL2(18脚):接外部晶体的另一端。
2.2.2 控制引脚
提供控制信号,有的引脚还具有复用功能。
(1) RST/VPD(9脚):复位与备用电源。
(2) ALE/PROG*(30脚):第一功能ALE为地址锁存允许,可驱动8个LS型TTL负载。PROG*为本引脚的第二功能。为编程脉冲输入端。
(3) PSEN* (29脚):读外部程序存储器的选通信号。可以驱动8个LS型TTL负载。
(4) EA*/VPP (Enable Address/Voltage Pulse of Programing,31脚) EA*为内外程序存储器选择控制端。 EA*=1,访问片内程序存储器,但在PC(程序计数器)值超过0FFFH(对于8051、8751)时,即超出片内程序存储器的4K字节地址范围时,将自动转向执行外部程序存储器内的程序。EA*=0,单片机则只访问外部程序存储器。VPP为本引脚的第二功能。用于施加编程电压(例如+21V或+12V)。对89C51,加在VPP脚的编程电压为+12V或+5V。
2.2.3 I/O口引脚
(1) P0口:双向8位三态I/O口,此口为地址总线(低8位)及数据总线分时复用口,可驱动8个LS型TTL负载。
(2) P1口:8位准双向I/O口,可驱动4个LS型TTL负载。
(3) P2口:8位准双向I/O口,与地址总线(高8位)复用,可驱动4个LS型TTL负载。
(4) P3口:8位准双向I/O口,双功能复用口,可驱动4个LS型TTL负载。
要特别注意准双向口与双向三态口的差别。当3个准双向I/O口作输入口使用时,要向该口先写“1”,另外准双向I/O口无高阻的“浮空”状态。
相关问答
为什么 单片机接地 的引脚有的要串一个电阻,直接接地不行吗?可以啊,这个下拉电阻是有含义的吧。是不是你有时这个引脚要拉高?电阻接地都是考虑驱动能力,或者是防止电流过大。功耗大。大致如此吧可以啊,这个下拉电阻...
单片机 系统中的 接地 和接电源负极有什么区别,如何实现 接地 ?单片机的确有个GND引脚,连到电源负极就可以了。但是其余部分如果要接地,最好接到单片机GND脚上,不要直接接到电源负极。同时注意模拟地和数字地要分开。。。...
51 单片机 怎么 接地 ?单片机不一定要接地,地只是个相对的概念,你可以把单片机VDD脚接310V,但是你的VSS脚就只能接305V的电压,也就是说要保证单片机的VDD比VSS高5V就可以了。至于其...
51 单片机 哪个引脚 接地 ?早期型号的51单片机只有一个接地引脚,也就是GND,这个引脚要接电源负极,也就是`地'。目前生产的新型号51单片机有3个接地引脚,分别是DGND、Ⅴref-、AGND。DGN...
51 单片机 中 接地 是哪个?引脚GND。。。。。。引脚GND。。。。。。
单片机 开发板要不要 接地 ?一般开发板上的数字地和模拟地都是分开的,以达到隔离作用,防止相互干扰!一般开发板上的数字地和模拟地都是分开的,以达到隔离作用,防止相互干扰!
单片机 :直流电源插座上有三个管脚,正极,负极, 接地 ,请问负极...[最佳回答]正极+5V接VCC接地接GND负极-xV悬空(单片机一般较少用到负压,除非用到双电源DAC或双电源运放等...)正极+5V接VCC接地接GND负极-xV...
单片机 有几个引脚?40个引脚按引脚功能大致可分为4个种类:电源、时钟、控制和I/O引脚。⒈电源:⑴VCC-芯片电源,接+5V;⑵VSS-接地端;注:用万用表测试单片机引脚电流...
单片机 受强电干扰?由于单片机控制系统应用系统的工作环境往往是比较恶劣和复杂的,其应用的可靠性、安全性就成为一个非常突出的问题。单片机控制系统应用必须长期稳定、可靠地运...
【STC89C52 单片机 的P1口如果没用到也需要接上拉电阻么】作业帮[最佳回答]如果你不用的话,也可以不用接.不过在单片机里P1口的驱动能力比其他三个要差,所以外加上拉电阻就可以提高,我觉得接还是好点,方便你以后要用P1口.如...