前言:

继电器模块工作电压5V,吸合电流约70mA每路,带继电器状态指示灯;I/O信号输入直接与单片机IO口或数字电路连接,输入高电平继电器吸合,输入低电平继电器释放; 全贴片元件,最合理驱动电路设计,采用8050三极管驱动继电器动作。

背景:

鉴于项目的需求,用正点原子-精英板(STM32F103)去驱动一个5v的继电器模块控制USB加湿器。本以为就是单片机直接I/O口直接输出高低电平就能实现开关切换了(控制原理跟点LED灯差不多,而且通常就是这么控制的),可实际情况我实验失败了。。。

我买的继电器模块是5V工作电压、低电平触发的,而且是支持单片机I/O直接驱动控制,然而我发现控制不了。用开漏输出才能正常控制继电器的工作状态,而使用通用推挽输出模式继电器都是不工作没反应的(正常来说继电器都是用推挽输出驱动I/O的),想问一下,为什么精英板不能用推挽输出模式驱动5V继电器模块?

百度了下什么都没有,说什么单片机I/O驱动能力不够,需要做个三极管放大驱动,都TM子虚乌有,其实现在淘宝的继电器模块都是考虑这些的都做好了的,单刀直入就行的。度娘救不了,这可咋办?

解决方法:

更改I/O口(GPIO)的输出模式。一般我们常用的都是推挽输出模式(GPIO_Mode_Out_PP ),我们就改为开漏输出模式(GPIO_Mode_Out_OD ),改完重新编译烧录,即可解决这个问题。

原GPIO初始化配置(推挽输出):

改成开漏输出模式之后:

(1)推挽输出

推挽输出(push-pull out),就是有推push有拉pull,任何时候I/O口的电平都是确定的,而且不需要我们外接上拉或者下拉电阻。

(2)开漏输出

开漏输出,就等于输出口接了个NPN三极管,且只接了e,b。 c极是开路的,你可以接一个电阻到3.3V,也可以接一个电阻到5V,这样,在输出1的时候,就可以是5V电压,也可以是3.3V电压了。但是不接电阻上拉的时候,这个输出高就不能实现了。只可以输出强低电平,高电平得靠外部电阻拉高。输出端相当于三极管的集电极,要得到高电平状态需要上拉电阻才行。适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内)

谢谢观看,有问题需要请教的,请加入STM32学习交流群(QQ群号:470804974),本人QQ号2974278195有问题可添加看到必回。

【STM32-扩展模块】继电器模块Relay相关推荐

  1. raspberryPi_继电器模块(relay)+风扇模块(fan)连接原理图/硬件调试

    文章目录 继电器模块型号和样式 型号 样式1: 端口介绍 左侧 右侧(指示灯侧) 双侧图 样式2: DC/IN 引脚介绍 继电器的使用和接入 风扇的可用性调试 ⛔注意 测试代码 触发电平 code ( ...

  2. 基于STM32的ESP8266模块控制多路继电器

    基于STM32的ESP8266模块控制多路继电器 1.视频讲解 基于STM32单片机ESP8266物联网阿里云MQTT多路继电器控制 物联网视频教程STM32+ESP8266 2.实物设计 ESP82 ...

  3. 使用Blinker控制esp01s Relay继电器模块

    目录 一.ESP-01s和ESP-01区别 外观区别 电路区别 二.ESP-01s引脚 管脚示意图 管脚功能定义 电路原理图 三.控制esp01s Relay 安装blinker arduino库 申 ...

  4. 使用小度音箱+Blinker控制ESP01S Relay继电器模块

    一. 使用ESP01S模块,PIN脚定义如下: 管脚功能如下: ESP01S模块原理图: ESP01S模块比ESP01模块做了以下优化: LED灯的管脚发生变化,由ESP01的TXD0变成ESP01s ...

  5. 【STM32】继电器的使用

    一.认识继电器 二.继电器的原理和使用方式 这个就是大概的引脚图,VCC是电源正极,GND是电源负极,IN是通断信号的输入引脚. 而另一边,NC即常闭端(normal close),COM即公共端,N ...

  6. 继电器模块的基本使用(高低电平触发)

    一.继电器的基本原理 一个继电器拥有一个动触点以及两个静触点A和B. 当开关K断开时,继电器线路无电流通过,此时动触点与静触点B相接触,上半部分的电路导通.静触点B被称为常闭触点(NC) 常闭--NC ...

  7. Ardunio开发实例-使用继电器模块控制家用灯泡

    使用继电器模块控制家用灯泡 继电器(英文名称:relay)是一种电控制器件,是当输入量(激励量)的变化达到规定要求时,在电气输出电路中使被控量发生预定的阶跃变化的一种电器.它具有控制系统(又称输入回路 ...

  8. 浅谈STM32的DMA模块的使用

    浅谈STM32的DMA模块的使用 转自:http://blog.ednchina.com/jack_chang/123085/message.aspx http://article.ednchina. ...

  9. 使用STM32的USB模块中后对USB缓冲区的认识

    最近在使用STM32的USB模块开发个项目,还以为挺简单,结果搞了快两天才把USB的包缓冲区的访问搞定,在此做个小总结吧. STM32的USB模块包缓冲区有512B,但是在STM32的参考手册中的存储 ...

最新文章

  1. 网络发展的模式之一:新功能在应用系统涌现,然后逐渐迁移到基础设施
  2. 第九届蓝桥杯省赛JavaC组真题——详细答案对照(完整版)
  3. 不同编程语言能耗不同?看这27种语言对比!
  4. 2017西安交大ACM小学期数据结构 [线段树]
  5. netty中的引导Bootstrap服务端
  6. LintCode刷题笔记-- BackpackIII
  7. 滴滴否认柳青计划卸任:目前正积极全面配合网络安全审查
  8. zlib库对文件进行压缩和解压操作
  9. 单片机课程设计——《基于AT89S52单片机和DS1302时钟芯片的电子时钟(可蓝牙校准)》... 1
  10. Java零基础系列003——变量
  11. c语言 链表_小陈的C语言笔记---链表(详细讲解基本操作和概念)
  12. 【转载】Eclipse:Android开发中如何查看System.out.println的输出内容
  13. 如何防止session过期
  14. 数据仓库和数据挖掘复习
  15. 启发式测试策略模型(Heuristic Test Strategy Model,简称HTSM)
  16. 编译原理实验:自上而下语法分析
  17. AP微观和宏观经济学考察重点分析
  18. 从新建工程开始使用C++开发单片机(以STM32为例):一、项目介绍
  19. Kubernetes介绍
  20. PTA Review of Programming Contest Rules

热门文章

  1. 网站有反爬机制就爬不了数据?那是你不会【反】反爬!道高一尺魔高一丈啊!
  2. 红色极简风工作总结PPT模板
  3. Fluent Meshing中BOI设置的几个问题
  4. 产业区块链进场,2020年可能迎来拐点 | 你好2020
  5. vscode安装配置与应用技巧总结
  6. Maya 2013下载地址 包含32位 64位 及Mac版
  7. android新浪微博授权登录签名
  8. DPDK 内存管理---malloc_heap和malloc_elem
  9. 【MATLAB】几种求矩阵伪逆的方法
  10. 基于STM32F103的简易示波器设计