STM32控制低电平触发的继电器模块时始终是闭合解决方法

      前两天一个小的需求,需要使用到继电器模块控制门禁锁。本以为就是单片机直IO口直接输出高低就控制了(实际就是这么控制),但是我失败了。。。

     实验室的买的继电器模块是低电平触发的,而且是支持单片机IO直接控制,然而我发现控制不了。百度了下说IO驱动能力不够,需要外做三极管驱动。其实现在淘宝的继电器模块都是考虑这些的都做好了的。

    解决方法:

    更改IO口的模式。一般我们都常用的是推挽输出模式(GPIO_Mode_Out_PP ,改为开漏输出模式(GPIO_Mode_Out_OD )即可解决这个问题。

 

   顺便下去复习了下这两种模式的区别:参考学习http://www.openedv.com/posts/list/21980.htm(写得很形象)

   (1)推挽输出

       推挽,就是有推有拉,任何时候IO口的电平都是确定的,不需要外接上拉或者下拉电阻。
      

   (2)开漏输出

      开漏,就等于输出口接了个NPN三极管,并且只接了e,b。 c极是开路的,你可以接一个电阻到3.3V,也可以接一个电阻到5V,这样,在输出1的时候,就可以是5V电压,也可以是3.3V电压了。但是不接电阻上拉的时候,这个输出高就不能实现了。

    只可以输出强低电平,高电平得靠外部电阻拉高。输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内)

  • 9
    点赞
  • 97
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值