原创 上拉电阻的目的

2010-11-11 15:38 2524 6 7 分类: MCU/ 嵌入式

上拉电阻的目的:
1、当TTL 电路驱动COMS 电路时,如果TTL 电路输出的高电平低于COMS 电路的最低高电平(一般为3.5V), 这时就需要在TTL 的输出端接上拉电阻,以提高输出高电平的值。
2、OC 门电路必须加上拉电阻,以提高输出的搞电平值。
3、为加大输出引脚的驱动能力,有的单片机管脚上也常使用上拉电阻。
4、在COMS 芯片上,为了防止静电造成损坏,不用的管脚不能悬空,一般接上拉电阻产生降低输入阻抗,提供泄荷通路。
5、芯片的管脚加上拉电阻来提高输出电平,从而提高芯片输入信号的噪声容限增强抗干扰能力。
6、提高总线的抗电磁干扰能力。管脚悬空就比较容易接受外界的电磁干扰。
7、长线传输中电阻不匹配容易引起反射波干扰,加上下拉电阻是电阻匹配,有效的抑制反射波干扰。
8、有些总线协议会将一些信号释放为高阻态,但是实际上电路的状态应该事确定的0 或1,所以上拉电阻可以提供一个确定的状态。
9、有时候雷击时候会产生浪涌,特别是火车上的车载电视啊等,电源上要加一些保护装置,如RClamp0504F 等能将电压嵌位
10、一般RST,CLK 管脚接上拉电阻
选择上拉电阻阻值的原则包括:
1、从节约功耗及芯片的灌电流能力考虑应当足够大;电阻大,电流小。
2、从确保足够的驱动电流,速度快的,考虑应当足够小;电阻小,电流大。
3、对于高速电路,过大的上拉电阻可能边沿变平缓(特别是吴源的信号)。
综合考虑以上三点,通常在1k 到10k 之间选取。对下拉电阻也有类似道理。
 

对上拉电阻和下拉电阻的选择应结合开关管特性和下级电路的输入特性进行设定,主要需要考虑以下几个因素:
1、驱动能力与功耗的平衡。以上拉电阻为例,一般地说,上拉电阻越小,驱动能力越强,但功耗越大,设计是应注意两者之间的均衡。
2、下级电路的驱动需求。同样以上拉电阻为例,当输出高电平时,开关管断开,上拉电阻应适当选择以能够向下级电路提供足够的电流。
3、高低电平的设定。不同电路的高低电平的门槛电平会有不同,电阻应适当设定以确保能输出正确的电平。以上拉电阻为例,当输出低电平时,开关管导通,上拉电阻和开关管导通电阻分压值应确保在零电平门槛之下。
4、频率特性。以上拉电阻为例,上拉电阻和开关管漏源级之间的电容和下级电路之间的输入电容会形成RC 延迟,电阻越大,延迟越大。上拉电阻的设定应考虑电路在这方面的需求。

 

下拉电阻的设定的原则和上拉电阻是一样的。
OC 门输出高电平时是一个高阻态,其上拉电流要由上拉电阻来提供,设输入端每端口不大于100uA,设输出口驱动电流约500uA,标准工作电压是5V,输入口的高低电平门限为0.8V(低于此值为低电平);2V(高电平门限值)。
选上拉电阻时:
500uA x 8.4K= 4.2 即选大于8.4K 时输出端能下拉至0.8V 以下,此为最小阻值,再小就拉不下来了。如果输出口驱动电流较大,则阻值可减小,保证下拉时能低于0.8V 即可。 当输出高电平时,忽略管子的漏电流,两输入口需200uA
200uA x15K=3V 即上拉电阻压降为3V,输出口可达到2V,此阻值为最大阻值,再大就拉不到2V 了。选10K 可用。
COMS 门的可参考74HC 系列 设计时管子的漏电流不可忽略,IO 口实际电流在不同电平下也是不同的,上述仅仅是原理,一句话概括为:输出高电平时要喂饱后面的输入口,输出低电平不要把输出口喂撑了(否则多余的电流喂给了级联的输入口,高于低电平门限值就不可靠了)

 

在数字电路中不用的输入脚都要接固定电平,通过1k 电阻接高电平或接地。
1. 电阻作用:
接电阻就是为了防止输入端悬空;减弱外部电流对芯片产生的干扰;保护cmos 内的保护二极管,一般电流不大于10mA ;上拉和下拉、限流;改变电平的电位,常用在TTL-CMOS 匹配。
在引脚悬空时有确定的状态 ;

增加高电平输出时的驱动能力;
为OC 门提供电流;
那要看输出口驱动的是什么器件,如果该器件需要高电压的话,而输出口的输出电压又不够,就需要加上拉电阻。
如果有上拉电阻那它的端口在默认值为高电平你要控制它必须用低电平才能控制如三态门电路三极管的集电极,或二极管正极去控制把上拉电阻的电流拉下来成为低电平。
尤其用在接口电路中,为了得到确定的电平,一般采用这种方法,以保证正确的电路状态,以免发生意外,比如,在电机控制中,逆变桥上下桥臂不能直通,如果它们都用同一个单片机来驱动,必须设置初始状态.防止直通!
PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户320184 2010-12-28 12:09

精辟~~~
相关推荐阅读
用户1314788 2012-02-03 15:20
评论:@jjldc(九九)的电子博客 博客中提到的“转一篇比较详细介绍FatFs文件系统移植的文章”
11...
用户1314788 2011-05-04 10:11
STM32 IAP
引导加载程序是存储在内部引导ROM存储器(系统内存),其主要任务是通过下载应用程序到内部FLASH通过USART1的通信接口. 从系统内存启动bootloader然后通过USART1接口外设下载应...
用户1314788 2011-04-11 09:31
基于AVR单片机队列的UART通信模块
对于堆栈来说,插入、删除操作是固定在一端进行的,这一端称为“栈顶”,另一端称为“栈底”。 堆栈指针(Stack  Pointer)用于指示栈顶位置(地址),在有些单片机中,堆栈指针可以通过程序去设置。...
用户1314788 2011-04-08 11:03
assert_param STM32的固件库 使用须知
在STM32的固件库和提供的例程中,到处都可以见到assert_param()的使用。如果打开任何一个例程中的stm32f10x_conf.h文件,就可以看到实际上assert_param是一个宏定义...
用户1314788 2011-03-30 16:50
单片机的非OS的事件驱动思考1
很多单片机项目恐怕都是没有操作系统的前后台结构,就是main函数里用while无限循环各种任务,中断处理紧急任务。这种结构最简单,上手很容易,可是当项目比较大时,这种结构就不那么适合了,编写代码前你...
用户1314788 2011-03-24 14:41
C
要从逻辑上删除一段C代码,更好的办法是用#if指令。 #if  0   statements#endif int *a;*a = 12;  //我们声明了这个指针变量,但从未对它进行过初始化,所以我们...
EE直播间
更多
我要评论
1
6
关闭 站长推荐上一条 /3 下一条