【STM32F103】继电器的用法

前言

因为最近用到了继电器,所以稍微记录一下继电器的用法。

如果我们需要点亮一个LED灯的时候,我们只需要用单片机的GPIO口去输出高低电平驱动就行。

但是我们需要通过单片机去控制大电压器件的开关的时候,我们就不能简简单单地用一个GPIO口去控制了,这时候我们需要用到继电器。

继电器

上图是我有的继电器(是磁吸式的,不过不重要),其他继电器的用法也大差不差。

可以看到有6个接口,分别是NO,COM,CN;VCC,GND,IN。

我这款继电器是5V直流驱动的(继电器表面最下面一行写的),所以我们需要在VCC接5V直流电压(实测STM32F103提供的3.3V带得不动我这款继电器,因此我使用了5V锂电池),GND就接地。IN随便接一个GPIO口用于驱动继电器。

接下来是重点,我们抛开原理不谈,直接说用法。当继电器工作时,也就是你的IN触发了继电器工作(具体看你的继电器是高电平驱动还是低电平驱动),COM和NO是连通的,而COM和CN是断开的。当继电器不工作时,COM和NO是断开的,而COM和CN是连通的。

一般情况下,我们要点亮一个灯是像上图这样的。

而我们要用单片机去控制一个灯的开关,并且默认灯是关着的时候是像下图这样的,原本直接连通的线我们破开,一路接COM,一路接NO。

这样默认情况下COM和NO是断开的,当我们给IN的电平驱动继电器工作时,COM和NO连通了起来,灯泡也就亮了,我们也就成功通过单片机控制继电器从而控制灯泡的开关。

当我们要用单片机去控制一个灯的开关,并且默认灯是开着的时候是像下图这样的,原本直接连通的线我们破开,一路接COM,一路接NC。

这样默认情况下COM和NC是连通的,当我们给IN的电平驱动继电器工作时,COM和NC断开,灯泡也就灭了,我们也就成功通过单片机控制继电器从而控制灯泡的开关。

通过STM32F103实测

#include "stm32f10x.h"                  // Device header
#include "Delay.h"int main(void){RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);GPIO_InitTypeDef itd;itd.GPIO_Mode=GPIO_Mode_Out_PP;                     //推挽输出itd.GPIO_Pin=GPIO_Pin_0;      //使用Pin_0号引脚itd.GPIO_Speed=GPIO_Speed_2MHz;                     GPIO_Init(GPIOA,&itd);while(1){GPIO_WriteBit(GPIOA,GPIO_Pin_0,1);Delay_s(1);GPIO_WriteBit(GPIOA,GPIO_Pin_0,0);Delay_s(1);}}

代码没什么可说的,就是让一个GPIO口高低电平切换,我们就是用这个GPIO口去接继电器的IN口来操控继电器的。

可以来看看我的接线。

我的LED以及继电器都是用的5V锂电池供电的(因为STM32F103的3.3V带不动继电器,因此用了锂电池,因为用了DC降压模块,实际电压差不多是4V),上图的线比较乱,我再画个平面图。

简单来说就是在LED通电的情况下,用继电器把原本连通的电路给阻断。

值得一提的是由于STM32F103的3.3V带不动继电器,因此用的额外的电池给继电器供电,但是需要STM32的GND和继电器的GND共地。一开始没有共地导致STM32F103即使是输出高电平也是触发了继电器工作,因为GND不同,因此电压的高低电平会有偏差,使得单片机即使是输出了高电平,在继电器眼里仍然是低电平(我的继电器是低电平触发),后来共地就好了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/622892.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux Tcp总结

Tcp连接建立时的影响因素 在Client发出SYN后,如果过了1秒 ,还没有收到Server的响应,那么就会进行第一次重传;如果经过2s的时间还没有收到Server的响应,就会进行第二次重传;一直重传tcp_syn_retries次。 对…

策略模式-实践

俗话说:条条大路通罗马。在很多情况下,实现某个目标的途径不止一条,例如我们在外出 旅游时可以选择多种不同的出行方式,如骑自行车、坐汽车、坐火车或者坐飞机,可根据实 际情况(目的地、旅游预算、旅游时间…

星河璀璨:飞桨星河文心SDK与Gurdance珠联璧合让大模型更像人!

星河璀璨:飞桨星河文心SDK与Gurdance珠联璧合让大模型更像人! 本项目效果惊艳,可以在AIStudio星河社区一键运行 只需要在cpu基础版下运行,妈妈再也不怕我的算力不够了! 1、引言 2023年8月22日,百度董事…

3.14.1 函数对象 Page139~141

28行,doggie是一个类型为Dog的对象,而“()”是它的一个成员函数,doggie()实际上是doggie.operator() "operator()"既然是函数,那就可以有参数,也可以有返回值 运行结果为:

分布式系统中常用锁的概念及应用场景

在分布式系统中,存在多种锁用于实现并发控制和数据一致性。以下是一些常见的分布式锁及其概念及应用场景: 互斥锁(Mutex Lock): 概念: 互斥锁是最基本的分布式锁,用于确保在同一时间只有一个节点…

新微信公众号没有留言功能, 你们怎么破?

为什么公众号没有留言功能?从2018年2月开始,新注册的微信公众号取消了留言功能,原因是为了规避一些营销号通过虚假留言骗取读者信任。不过大部分公众号运营者对TX此举感到失望,一方面大片的留言就像店前排队的顾客,能体…

Codeforces Round 880 (Div. 2)(VP-13,寒假加训)

VP时间 A. 计数器 比较c[i]与c[i1] 1.ac B. 数学? 好贪 让(n-1)个人都拿g/2(向上取整)-1,这样每个人都拿不到 或者全部人都拿g/2(向上取整)-1,省的是g/2-1,综合一下还是ans 最后一个人拿完全部 1.wa2 2.wa2 3,.wa2 …

PLC、工业设备如何远程访问?贝锐蒲公英云智慧组网实现数据互通

在工业4.0时代,工业数字化的核心在于数据的互联互通,而在整个工业数字化、智能化的过程中,往往面临数据采集困难、设备运行情况难以知晓、部署管理难度大、后期维护成本高等问题。 显然,PLC设备在整个工业数字化进程中扮演的角色…

Invalid GeoJSON data provided to function st_geomfromgeojson

场景: 在往mysql表中字段是GEOMETRY类型存数据的时候遇到了了标题的问题 SQL如下: SELECT ST_GeomFromGeoJSON({"type":"MultiPolygon", "coordinates": [[[[113.404943, 23.172859], [113.40675, 23.172847], [113.406783, 23.171849], [113.40…

freertos任务管理器,任务监控

freertos提供了类似于windows的任务管理器功能,具体地如下: 1、configUSE_TRACE_FACILITY 和 configUSE_TRACE_FACILITY使能置1 2、调用vTaskList,如下: if(idleTaskCounter%84){char printlist[2048];vTaskList(printlist);Prin…

ssm基于Java的药店药品信息管理系统的设计与实现论文

摘 要 传统信息的管理大部分依赖于管理人员的手工登记与管理,然而,随着近些年信息技术的迅猛发展,让许多比较老套的信息管理模式进行了更新迭代,药品信息因为其管理内容繁杂,管理数量繁多导致手工进行处理不能满足广大…

11-适配器模式(Adapter)

意图 将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于接口不兼容而不能在一起工作的那些类可以一起工作。 适配器模式属于结构模式。 类适配器模式(通过继承的方式实现适配器模式) Adapter类,通过继承src类&#xff0…

C语言数据结构(0)——前言

欢迎来到博主的新专栏——C语言与数据结构 博主id:代码小豪 文章目录 为什么学数据结构?关于语言和数据结构让不同的语言使用者能够理解文章的内容观看这个专栏时,需要掌握C语言中的哪些知识 为什么学数据结构? 在前两个专栏当中…

【vue基础语法详细介绍】

vue基础语法详细介绍 1. 基础语法1.1 声明式渲染1.2 条件与循环1.3 事件处理1.4 双向数据绑定1.5 组件化 2. 模板语法2.1 插值2.1.1 文本2.1.2 html2.1.3 属性2.1.4 表达式 2.2 指令2.2.1 核心指令2.2.1.1 v-if |v-else-if|v-else2.2.1.2 v-show2.2.1.3 v-for2.2.1.4 v-on|v-mo…

vulnhub靶场之DC-8

一.环境搭建 1.靶场描述 DC-8 is another purposely built vulnerable lab with the intent of gaining experience in the world of penetration testing. This challenge is a bit of a hybrid between being an actual challenge, and being a "proof of concept&quo…

【技术选型】Doris vs starRocks

比对结论 仅从当前能看到的数据中,相比于doris,starRocks在性能方面具备优势,且更新频率高(降低维护成本)。 目标诉求 并发性不能太低——相比于clickhouse不到100的QPS支持大表关联——降低数据清洗的压力&#xf…

家用洗地机哪个品牌质量比较好?高配置洗地机推荐

近年来,科技飞速发展,推动了多个新兴行业的崛起,其中洗地机行业也在不断扩大。然而,随着市场的蓬勃发展,洗地机市场的产品质量参差不齐。在众多品牌中,真正致力于深入研究和创新的品牌相对较少。洗地机的问…

电流检测方法

电路检测电路常用于:高压短路保护、电机控制、DC/DC换流器、系统功耗管理、二次电池的电流管理、蓄电池管理等电流检测等场景。 对于大部分应用,都是通过感测电阻两端的压降测量电流。 一般使用电流通过时的压降为数十mV~数百mV的电阻值&…

VUE element-ui实现表格动态展示、动态删减列、动态排序、动态搜索条件配置、表单组件化。

1、实现效果 1.1、文件目录 1.2、说明 1、本组件支持列表的表头自定义配置,checkbox实现 2、本组件支持列表列排序,vuedraggable是拖拽插件,上图中字段管理里的拖拽效果 ,需要的话请自行npm install 3、本组件支持查询条件动态…

将Android应用修改为鸿蒙应用的工作

将Android应用修改为鸿蒙(HarmonyOS)应用需要进行一系列主要的工作。以下是在进行这一转换过程中可能需要进行的主要工作,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1.项目…