关于单片机IO口接开关三极管的疑惑

关于以下问题的不完全解答:

1、对于NPN型管,高电平驱动。基极电阻与单片机IO内部上拉电阻为串联,增加基极电阻也就增加了该电阻的分压。当电阻较小时分压不够,可能使IO口电位低于达到高电平的最小电压,从而被外部拉低

2、对于PNP型管,低电平驱动。若如下面方式连接,则三极管实际只能工作在放大区和截止区,而开关电路通常需要的是饱和区(基极电流对集电极电流影响很小)和截止区,而为了这样,设计时通常将负载放在集电极

3、本问题实际还是未解决,待续。


前几天有吧友发过一个三极管做开关电路控制蜂鸣器的帖子,我就一直有个疑惑,为什么限流电阻较小的时候无法驱动负载?于是自己动手焊了个测试电路。

第一种情况,先不考虑单片机,原理图如下图所示。初始状态:两节干电池做Vcc,负载电阻R1=10欧(固定),限流电阻R2=5k欧(可变,0~5K欧),PNP三极管型号s8550。
在R2从5k欧调小的过程中(一直到10欧),测量R1两端的电压U1,得到U1随R2减小而增大。理论上来说,Vcc-Ie*R1-Ueb-Ib*R2=0,其中Vcc,Ueb,R1是固定的,若放大系数为s,则Ie=(s+1)*Ib。可以得出Vcc-Ueb=Ib*(R2+(s+1)R1),也就是随着R2减小Ib增大,从而U2=Ie*R1增大。理论与实验一致。
关于单片机IO口接开关三极管的疑惑_第1张图片
第二种情况,把限流电阻直接接单片机IO口(P1.0),原理如下图所示。初始状态:Vcc和地直接与单片机相应口相连,P1.0通过程序设为0,其他与第一种情况一样。
在R2从5k欧调小的过程中,测量R1两端的电压U1,一开始U1随R2减小而增大,但当R2降到2.5k欧左右时,U1突然降到接近0,Uec与Ubc接近5v,再降低R2,U1已基本不变。也就是三极管相当于开路了。在以前的应用中,都没怎么仔细考虑这个限流电阻大小的问题。这种情况与第一种明显不一样,也让我很不明白,是单片机IO口的属性引起的吗?为什么会这样?希望各位不吝赐教!
关于单片机IO口接开关三极管的疑惑_第2张图片

你可能感兴趣的:(问与答)