请教一个把普通IO口利用三极管驱动输出5V的电路方案
时间:10-02
整理:3721RD
点击:
我用的处理器是STM32,一般来说普通的GPIO口的输出基本上是有3V左右,
我想通过加入三极管,来让GPIO口能够输出5V,但是都不成功。
具体要求就是GPIO口为低电平的时候,输出端那里是0V,GPIO口为高电平的时候,输出端那里是5V。
我最开始是这么设计的(如下图)
这样IO口为低电平的状态下是0V输出,但是IO口为高电平的时候,输出脚那里电压只有2.6V左右。
我本来以为可能是R84分压太多,后面把R84降到1.5K,结果还是差不多,反正还是没法把5V加到输出端。
后面我又尝试了第二种方案(如下图)
结果还是一样,后面在这个接法的基础上面,把R85换成1.5K,还是无法实现。
所以在这里请教一下各位大神,要设计出符合要求的方案应该是怎么接那个三极管合适?
我想通过加入三极管,来让GPIO口能够输出5V,但是都不成功。
具体要求就是GPIO口为低电平的时候,输出端那里是0V,GPIO口为高电平的时候,输出端那里是5V。
我最开始是这么设计的(如下图)
这样IO口为低电平的状态下是0V输出,但是IO口为高电平的时候,输出脚那里电压只有2.6V左右。
我本来以为可能是R84分压太多,后面把R84降到1.5K,结果还是差不多,反正还是没法把5V加到输出端。
后面我又尝试了第二种方案(如下图)
结果还是一样,后面在这个接法的基础上面,把R85换成1.5K,还是无法实现。
所以在这里请教一下各位大神,要设计出符合要求的方案应该是怎么接那个三极管合适?
第一个图R85 4.7欠欧 去掉试试
R85是不能去掉的,去掉之后没有分压电阻的话就相当于输出直接在GND上面,
这样的话当导通到5V下来的时候只有PN结本身几乎可以忽略不计的分压,
近乎于5V和地短路了。
加上拉电阻 电阻放在C级
以上两图是射极跟随器方式,无论如何调整电阻参数,输出高电平是不会高于输入高电平的。其实需要的是个逻辑电平转换电路。想用三家管实现的话,可以用两个三极管实现。
把IO设置成开漏输出,图发错了!
谢谢楼上各种回复~~~
不过我最终还是直接配置为开漏输出加上拉电阻了,这样虽然不能完全达到5V,但已经比3.3的输出要高不少了,而且节省了元器件,后期布线不添麻烦。
分压,第一个电路图的分压那个IO口4.7K将电压都吸收了,三极管B极的电压就达不到三级全开的状态了。第二个电路,分压了,不考虑BE极的话,两个4.7K电阻对分电压,也就是说B极只能是一半的电压
我怎么感觉是三极管没有完全导通造成的?我也做了个控制npn管的,用3.3v控制,测了Uce=2.3v。如果用5v控制,Uce=0.7v。个人认为是集电结没有正偏造成工作在放大状态。
输入0V时输出怎么还有2V啊