STM32F1控制继电器模块:一步一步实现(含源码)

目录

前言

 一、继电器的使用(重要!!!)

二、写个代码检验

三、源码–百度云


前言

第一个粉丝会是谁呢?期待ing

相信很多志同道合的小伙伴们已经找到了学习STM32的好途经(灵光一闪刷到我的博客)了,接下来的时光里,我会讲到一些我对一些模块的使用,同时附上源码还有我的心得。没错,今天我讲的就是继电器的使用。


 一、继电器的使用(重要!!!)

其实继电器简单来说就是一个开关,VCC表示电源正极、GND表示电源负极、IN表示信号输入脚,COM表示公共端,NC(normal close)表示常闭端,NO(normal open)表示常开端

一般情况下是常闭状态

这里简单地描述一下大部分的继电器模块:

Vcc接电源正极,Gnd接电源负极,In接STM32上的输出脚(输入高电平公共端连常闭,输入低电平公共端连常开),如下图所示,你就可以明白了,当IN脚输入高电平时,NC与COM相连(左图);当输入低电平时,NO与COM相连(右图)。

In脚输入高电平,COM连着NC
In脚输入低电平,COM连着NO

相信这样子你就对继电器有了基本的使用了解,下面我就不讲解其内部的结构原理了,可以到其他文章上学习具体原理,附上链接

继电器知识_jacheng_wen的博客-CSDN博客


二、写个代码检验

下面我就简单的实现以下它的开关功能吧

#include "jdq.h"


void relay_init(void)//对继电器初始化,即对PB7口初始化
{
  GPIO_InitTypeDef     GPIO_InitStructure;
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
	
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
	
  GPIO_Init(GPIOB, &GPIO_InitStructure);
	
}          

void relay_on(void)//PB7置1
{
  GPIO_SetBits(GPIOB,GPIO_Pin_7);
}

void relay_off(void)//PB7置0
{ 
  GPIO_ResetBits(GPIOB,GPIO_Pin_7);
}

 主函数:

#include "sys.h"
#include "delay.h"
#include "led.h"
#include "jdq.h"

 int main(void)
 {	
	delay_init();		  
	LED_Init();		  
 	relay_init();//继电器初始化
	while(1)
	{
  
		relay_off();//置0,即开关置NO,连常开
		LED0=0;
		delay_ms(2000);//延时4s左右
		delay_ms(2000);
		delay_ms(2000);
		delay_ms(5000);
		delay_ms(5000);

		relay_on();//置1,即开关置NC,连常闭
		LED0=1;
		delay_ms(2000);//延时4s左右
		delay_ms(2000);
		delay_ms(2000);
		delay_ms(5000);
		delay_ms(5000);
	}
}

 效果图如下:

 上面我只用了STM32F1的最小系统板测试了一下,光敏传感器检验了一下,注意我这里用的是一节3.7V的锂电池给光敏传感器供电,所以你在给继电器模块上的Vcc口接电源时记得接3.3V的,不能接5V的,不然没法驱动开关,因为这个的原理就是弱电控制强电,你如果比另外一端电压还大那就无法达到效果。

继电器就是小电控制大电电路,切记!

注意继电器大部分都是高电平下连接常闭,低电平连接常开,有部分产家会是反过来,大家买回来如果不确定,可以像我这样做个小实验证一下。


三、源码–百度云

 下面是源码:

链接:https://pan.baidu.com/s/1DfNuV5tWYQzRvTjVBQ_GPQ 
提取码:2580

感谢每一位访客,您的每一次访问,都是我前进的动力!可以给个赞吗?谢谢

题外话:

挺喜欢彭于晏说的一句话:“我就是没有才华,所以才用命去拼!”

学习32之路固然辛苦,但要是坚持下来了,那不是很酷?哈哈哈

物联沃分享整理
物联沃-IOTWORD物联网 » STM32F1控制继电器模块:一步一步实现(含源码)

发表评论