sp小说mf古风鞭笞臀缝:单片机、P0口、上拉电阻

来源:百度文库 编辑:偶看新闻 时间:2024/05/05 23:03:07

单片机、P0口、上拉电阻  

   P0口作为I/O口输出的时候时 输出低电平为0 输出高电平为高组态(并非5V,相当于悬空状态)。也就是说P0 口不能真正的输出高电平,给所接的负载提供电流,因此必须接上拉电阻(一电阻连接到VCC),由电源通过这个上拉电阻给负载提供电流。

由于P0口内部没有上拉电阻,是开漏的,不管它的驱动能力多大,相当于它是没有电源的,需要外部的电路提供,绝大多数情况下P0口是必需加上拉电阻的。1.一般51单片机的P0口在作为地址/数据复用时不接上拉电阻。 2.作为一般的I/O口时用时,由于内部没有上拉电阻,故要接上上拉电阻!!3.当p0口用来驱动PNP管子的时候,就不需要上拉电阻,因为此时的低电平有效;4.当P0口用来驱动NPN管子的时候,就需要上拉电阻的,因为此时只有当P0为1时候,才能够使后级端导通。简单一点说就是它要驱动LCD显示屏显示就必须要有电源驱动,否则亮不了,而恰好P0口没有电源,所以就要外接电源,接上电阻是起到限流的作用;如果接P1、P2、P3端口就不用外接电源和电阻了。 
P0口是开漏的,不管它的驱动能力多大,相当于它是没有电源的,需要外部的电路提供,绝大多数情况下P0口是必需加上拉电阻的
51单片机的P0口用作数据和地址总线时不必加上拉电阻。

多数网友认为:

1、P0口作为普通I/O输入口时,需要外接上拉电阻

2、若外电路可提供高电平,则P0口是否外接上拉电阻没什么影响

我在想,若外电路可提供高电平,则对输入的高电平应该是没影响。

但——是,

要知道,有些IC的驱动能力并不强,如果P0口作为输入而加了不必要的上拉,有可能驱动IC无法将其拉回到低电平,从而使输入失败!

如果是驱动led,那么用1K左右的就行了。如果希望亮度大一些,电阻可减小,最小不要小

于200欧姆,否则电流太大;如果希望亮度小一些,电阻可增大,增加到多少呢,主要看亮度情

况,以亮度合适为准,一般来说超过3K以上时,亮度就很弱了,但是对于超高亮度的LED,有时候

电阻为10K时觉得亮度还能够用。通常就用1k的。

对于驱动光耦合器,如果是高电位有效,即耦合器输入端接端口和地之间,那么和LED的情

况是一样的;如果是低电位有效,即耦合器输入端接端口和VCC之间,那么除了要串接一个1——

4.7k之间的电阻以外,同时上拉电阻的阻值就可以用的特别大,用100k——500K之间的都行,当

然用10K的也可以,但是考虑到省电问题,没有必要用那么小的。

     对于驱动晶体管,又分为PNP和NPN管两种情况:对于NPN,毫无疑问NPN管是高电平有效的,

因此上拉电阻的阻值用2K——20K之间的,具体的大小还要看晶体管的集电极接的是什么负载,对

于LED类负载,由于发管电流很小,因此上拉电阻的阻值可以用20k的,但是对于管子的集电极为

继电器负载时,由于集电极电流大,因此上拉电阻的阻值最好不要大于4.7K,有时候甚至用2K

的。对于PNP管,毫无疑问PNP管是低电平有效的,因此上拉电阻的阻值用100K以上的就行了,且

管子的基极必须串接一个1——10K的电阻,阻值的大小要看管子集电极的负载是什么,对于LED类

负载,由于发光电流很小,因此基极串接的电阻的阻值可以用20k的,但是对于管子的集电极为继

电器负载时,由于集电极电流大,因此基极电阻的阻值最好不要大于4.7K。

     对于驱动TTL集成电路,上拉电阻的阻值要用1——10K之间的,有时候电阻太大的话是拉不

起来的,因此用的阻值较小。但是对于CMOS集成电路,上拉电阻的阻值就可以用的很大,一般不

小于20K,我通常用100K的,实际上对于CMOS电路,上拉电阻的阻值用1M的也是可以的,但是要注

意上拉电阻的阻值太大的时候,容易产生干扰,尤其是线路板的线条很长的时候,这种干扰更严

重,这种情况下上拉电阻不宜过大,一般要小于100K,有时候甚至小于10K。

     根据以上分析,上拉电阻的阻值的选取是有很多讲究的,不能乱用。

 P0口作为I/O口输出的时候时 输出低电平为0 输出高电平为高组态(并非5V,相当于悬空状态)。也就是说P0 口不能真正的输出高电平,给所接的负载提供电流,因此必须接上拉电阻(一电阻连接到VCC),由电源通过这个上拉电阻给负载提供电流。由于P0口内部没有上拉电阻,是开漏的,不管它的驱动能力多大,相当于它是没有电源的,需要外部的电路提供,绝大多数情况下P0口是必需加上拉电阻的。1.一般51单片机的P0口在作为地址/数据复用时不接上拉电阻。 2.作为一般的I/O口时用时,由于内部没有上拉电阻,故要接上上拉电阻!!3.当p0口用来驱动PNP管子的时候,就不需要上拉电阻,因为此时的低电平有效;4.当P0口用来驱动NPN管子的时候,就需要上拉电阻的,因为此时只有当P0为1时候,才能够使后级端导通。简单一点说就是它要驱动LCD显示屏显示就必须要有电源驱动,否则亮不了,而恰好P0口没有电源,所以就要外接电源,接上电阻是起到限流的作用;如果接P1、P2、P3端口就不用外接电源和电阻了。 P0口是开漏的,不管它的驱动能力多大,相当于它是没有电源的,需要外部的电路提供,绝大多数情况下P0口是必需加上拉电阻的51单片机的P0口用作数据和地址总线时不必加上拉电阻。多数网友认为:1、P0口作为普通I/O输入口时,需要外接上拉电阻2、若外电路可提供高电平,则P0口是否外接上拉电阻没什么影响我在想,若外电路可提供高电平,则对输入的高电平应该是没影响。但——是,要知道,有些IC的驱动能力并不强,如果P0口作为输入而加了不必要的上拉,有可能驱动IC无法将其拉回到低电平,从而使输入失败!如果是驱动led,那么用1K左右的就行了。如果希望亮度大一些,电阻可减小,最小不要小于200欧姆,否则电流太大;如果希望亮度小一些,电阻可增大,增加到多少呢,主要看亮度情况,以亮度合适为准,一般来说超过3K以上时,亮度就很弱了,但是对于超高亮度的LED,有时候电阻为10K时觉得亮度还能够用。通常就用1k的。对于驱动光耦合器,如果是高电位有效,即耦合器输入端接端口和地之间,那么和LED的情况是一样的;如果是低电位有效,即耦合器输入端接端口和VCC之间,那么除了要串接一个1——4.7k之间的电阻以外,同时上拉电阻的阻值就可以用的特别大,用100k——500K之间的都行,当然用10K的也可以,但是考虑到省电问题,没有必要用那么小的。     对于驱动晶体管,又分为PNP和NPN管两种情况:对于NPN,毫无疑问NPN管是高电平有效的,因此上拉电阻的阻值用2K——20K之间的,具体的大小还要看晶体管的集电极接的是什么负载,对于LED类负载,由于发管电流很小,因此上拉电阻的阻值可以用20k的,但是对于管子的集电极为继电器负载时,由于集电极电流大,因此上拉电阻的阻值最好不要大于4.7K,有时候甚至用2K的。对于PNP管,毫无疑问PNP管是低电平有效的,因此上拉电阻的阻值用100K以上的就行了,且管子的基极必须串接一个1——10K的电阻,阻值的大小要看管子集电极的负载是什么,对于LED类负载,由于发光电流很小,因此基极串接的电阻的阻值可以用20k的,但是对于管子的集电极为继电器负载时,由于集电极电流大,因此基极电阻的阻值最好不要大于4.7K。     对于驱动TTL集成电路,上拉电阻的阻值要用1——10K之间的,有时候电阻太大的话是拉不起来的,因此用的阻值较小。但是对于CMOS集成电路,上拉电阻的阻值就可以用的很大,一般不小于20K,我通常用100K的,实际上对于CMOS电路,上拉电阻的阻值用1M的也是可以的,但是要注意上拉电阻的阻值太大的时候,容易产生干扰,尤其是线路板的线条很长的时候,这种干扰更严重,这种情况下上拉电阻不宜过大,一般要小于100K,有时候甚至小于10K。     根据以上分析,上拉电阻的阻值的选取是有很多讲究的,不能乱用。 

请教一个单片机P0口的问题 单片机 P2 P0 单片机 P2 P0 口作为普通IO口,怎么用?稍微详细一点:)谢谢 单片机P0~~P3口如果作为输出用,那么它是电压还是电流? 单片机的P0~~P3这32个口,能不能全部用来做输入与输出? 什么是上拉电阻?什么是高阻态,限流电阻怎么限流? 上拉电阻和下拉电阻的区别 上拉电阻有什么用?为什么称为上拉电阻? 固态继电器如何与单片机PWM(P0.0管脚)连接? 固态继电器如何与单片机PWM(P0.0管脚)连接? at89c51 p1做键盘 上拉电阻多大较合适? 单片机P0~~P3口如果作为输出用,那么它是电压还是电流?如果是电压是多少伏,电流是多少安? MCS-8051单片机有没有"CLR P0(或者P1.P2.P3)";(P0.0~P0.7位全部清零)的指令? 什么型号的单片机具有8051的指令系统,但是它的输入输出(8051的P0~~P3)只有一组(P0)? 什么型号的单片机具有8051的指令系统,但是它的输入输出(8051的P0~~P3)只有一组(P0)?? INTEL什么型号的单片机具有8051的指令系统,但是它的输入输出(8051的P0~~P3)只有一组(P0)?? INTEL什么型号的单片机具有8051的指令系统,但是它的输入输出(8051的P0~~P3)只有一组(P0)? 拉电阻的 外部数据从单片机的P0脚输入到单片机里是不是要在指令前加上一个"MOV P0,#FFH"? 单片机电阻测量软件硬件如何设计 上拉,下拉电阻为什么能提高输出电平,增强驱动? 光电隔离电路光电耦合器件tlp521-4的上拉电阻应该怎么加? 请问什么是上拉电阻?它的用途和意义是什么? 外部数据从8051单片机的P0(或P1~P3)脚输入到单片机里是不是要在指令前加上一个"MOV P0(或P1~P3),#FFH"?