STC IO 口配置为推挽输出

[复制链接]
11431|21
 楼主| D调胖子 发表于 2010-9-4 17:17 | 显示全部楼层 |阅读模式
STC IO 口配置为推挽输出,来驱动继电器,如图:有什么问题吗?小D先谢谢各位了!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
jc981 发表于 2010-9-4 17:23 | 显示全部楼层
在R9处增加一个二极管吧,因三极管损坏而烧IO口。
另外R11值太大,10K就好了。
 楼主| D调胖子 发表于 2010-9-4 17:35 | 显示全部楼层
呵呵,加过二极管了
teddeng 发表于 2010-9-4 18:08 | 显示全部楼层
如果继电器线圈功率不大,吸合电流在2,30MA的话,上电时继电器肯定会跳一下的。看下STC的文档,个人觉得比你这个好。
 楼主| D调胖子 发表于 2010-9-6 09:44 | 显示全部楼层
STC的单片机功耗蛮大的啊!!
 楼主| D调胖子 发表于 2010-9-6 09:49 | 显示全部楼层
再次请教一下各位:  
一下引用STC11FXX数据手册。
“推挽输出(强上拉输出,可达20mA,要加限流电阻)”
到底啥意思!
小D不懂!!
ayb_ice 发表于 2010-9-6 10:14 | 显示全部楼层
对了,为了避免开机瞬间继电器的吸合动作最好用高电平关闭继电器设计
 楼主| D调胖子 发表于 2010-9-6 10:40 | 显示全部楼层
LS我加了一个逻辑判断,上电复位不会继电器误动作!!
ayb_ice 发表于 2010-9-6 11:25 | 显示全部楼层
LS
程序都没有开始运行,你判断什么
chunyang 发表于 2010-9-6 11:45 | 显示全部楼层
建议采用负逻辑设计,这样就不用将IO配置成推挽输出,也不会存在上点暂态失控的现象,晶体管改为两级驱动即可。
yuyi21ic 发表于 2010-9-6 11:55 | 显示全部楼层
换个PNP的管子啊。
Galway-Zhang 发表于 2010-9-6 12:08 | 显示全部楼层
个人建议.用两个三极管.这样可以做到小电流驱动.可以让三极管关闭与开启更速度.
chunyang 发表于 2010-9-6 12:14 | 显示全部楼层
直接换PNP管是不行的,电压问题,MCU和继电器工作电压相同的话才可以。
 楼主| D调胖子 发表于 2010-9-6 21:15 | 显示全部楼层
完整的电路图是这样的:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| D调胖子 发表于 2010-9-6 21:25 | 显示全部楼层
原本来用5V的继电器,继电器太差,吸合时拉电流62.5mA,我设计时没料到会那么大的拉电流,设计:
5V /  330K  =  0.015ma  流入三极管基极电流0.0015ma   BJT hfe  = 200左右  继电器电流为0.3ma 本来以为会低功耗,结果出现,继电器吸合不稳等一堆问题!!
 楼主| D调胖子 发表于 2010-9-6 21:27 | 显示全部楼层
现在该继电器为12V的继电器,继电器吸合电流为20ma左右,那么功耗应该会降低吧??
xymxym 发表于 2010-9-7 08:46 | 显示全部楼层
继电器的工作电压能用高的就不要用低的
STC的没用过.配置I/O是在烧写时还是在程序运行中配置?如果是在程序运行时才配置,那复位期间还还一样是输出1?跟普通51没两样!所以还是得弄成负逻辑驱动
 楼主| D调胖子 发表于 2010-9-7 09:49 | 显示全部楼层
多谢LS:请看我的完整版的原理图,在14#  !!
复位时输出1时,继电器的驱动三极管的基极被拉低了,继电器不会动作,谢谢大家了!!
 楼主| D调胖子 发表于 2010-9-7 10:06 | 显示全部楼层
麻烦在请教一下xymxym:
为什么“继电器的工作电压能用高的就不要用低的” ???
faiwong 发表于 2010-11-14 18:20 | 显示全部楼层
把R11改为2K-5K就好了,因为STC上电时IO脚上只是47K左右的弱上拉,不足以此驱动继电器电路,而上电后将IO脚配置为推挽输出,20mA的电流也足以稳定的驱动此继电器电路。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:世人笑我太疯癫,我笑别人看不穿

13

主题

180

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部