你的位置:首页 > 互连技术 > 正文

网友发问:电路中上拉电阻有必要吗?

发布时间:2015-10-19 责任编辑:sherry

【导读】上拉电阻通过将不确定的信号来起到限流的作用。在部分电路当中,上拉电阻的作用非常重要,但这并不意味着所有的电路都需要添加上拉电阻。文本将以I2C器件AT24C02为例,对在设计中是否应该添加上拉电阻进行探讨。
 
在研究AT24C02的电路图时,可以看到在SDA、SCL这两个脚上接了4.4K或10K的上拉电阻,而有些则没有添加上拉电阻。根据数据手册来看,建议AT24C02在实际使用中添加拉电阻的。
 
而在51单片机系统中,不添加上拉电阻并不影响使用,并且也能够正确读写数据。以51单片机为例,除了P0口,另外3个口内部都有弱上拉。所以似乎外部不用再加上拉电阻也可以。但是毕竟单片机内部上拉电阻能力有限,只能微弱上拉。
 
另外对于很多单片机,其内部有上拉电阻,但是无一例外,上拉电阻的组织是比较大的,也就是说其上拉能力有限。
 
根据I2C总线规范,总线空闲时两根线都必须为高:这条准则必须严格遵守,这是之所以规定空闲时必须为高的一个原因,如果要保持“低”,那么就不可能成为“多主”总线的。
 
上拉电阻的问题:各个I2C接口工作时只检测高、低电平即可,上拉电阻实际上不是十分必要。但问题是,如果直接采用电源的来实现高的话,一旦其他器件拉低就有可能发生危险。
 
上拉电阻有保护作用。如果确信直接采用电源没问题(比如有短路保护等),也可进行尝试。问题的关键在于主器件要能正确的拉低或置高,从器件要能明确地区分高、低即可,这是问题的关键,另外时序问题同样不能混乱。
 
电阻大小的问题:这牵涉到两方面的问题,首先是功耗的问题,其次是速度的问题,二者互相矛盾,如果想尽量提高速度,那么必然牵涉到总线电容问题。上拉电阻与总线的电容形成RC,高速时将直接影响通讯。因为总线拉高时有充电时间以及高电平的阀值,如果还没有充电到足以保证从器件能够识别的高电平的阀值时,主器件就以为完成了一个总线动作的话,那么通讯肯定是不能进行。
 
如果想尽可能降低功耗,那么就要尽量增大电阻以最大可能的减小电路各部分消耗电流。从而实现整体降低功耗!但不可能无限大,否则充电时间会很成问题。
 
本文针对电路中上拉电阻是否必要的问题进行了探讨,总的来看,电路中是否需要添加上拉电阻主要需要参考实际电路设计情况,希望大家在阅读过本篇文章之后能够有所收获。
特别推荐
技术文章更多>>
技术白皮书下载更多>>
热门搜索
 

关闭

 

关闭