电商网站需求分析,海外购物app,对企业网站建设的建议,广州17网站一起做网店目录
一、介绍
二、模块原理
1.原理图
2.引脚描述
3.工作原理介绍
三、程序设计
main.c文件
relay.h文件
relay.c文件
四、实验效果
五、资料获取
项目分享 一、介绍 继电器(Relay)#xff0c;也称电驿#xff0c;是一种电子控制器件#xff0c;它具有控制系统…目录
一、介绍
二、模块原理
1.原理图
2.引脚描述
3.工作原理介绍
三、程序设计
main.c文件
relay.h文件
relay.c文件
四、实验效果
五、资料获取
项目分享 一、介绍 继电器(Relay)也称电驿是一种电子控制器件它具有控制系统又称输入回路和被控制系统又称输出回路通常应用于自动控制电路中它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。 以下是继电器模块的参数 型号 SRD-05VDC-SL-C 工作电压 5V 最大负载 250V/10A 触发电流 5mA 尺寸 25mm×50mm×18.5mm
哔哩哔哩视频链接 5V继电器模块详解STM32 资料分享见文末
二、模块原理
1.原理图 2.引脚描述 引脚名称 描述 DC 电源正极 DC- 电源负极 IN 控制信号 NO 常开接口 COM 公共接口 NC 常闭接口
3.工作原理介绍 利用电磁效应当线圈两端加以电压时电磁铁会产生磁力导致衔铁吸合此时弹簧压缩金属触点连接到常开的一侧。当线圈两端没有电压时电磁吸力也随之消失衔铁就会在弹簧的反作用下返回原来的位置常闭的金属触点导通。 继电器的驱动电流大概是50mA而STM32的引脚输出电流大概在8mA如果直接用IO口控制驱动电流太小继电器不会闭合。而三极管的作用就是类似开关控制通过控制三极管的基极电流可以让三极管工作在截止和饱和导通状态从而控制继电器闭合和断开。 三、程序设计
使用STM32F103C8T6控制5V继电器模块完成吸合和断开的操作。 RELAY_IN PA0 OLED_SCL PB11 OLED_SDA PB10
main.c文件
#include stm32f10x.h
#include led.h
#include usart.h
#include delay.h
#include oled.h
#include relay.h/*****************辰哥单片机设计******************STM32* 项目 : 5V继电器实验 * 版本 : V1.0* 日期 : 2024.9.18* MCU : STM32F103C8T6* 接口 : 参看relay.h * BILIBILI : 辰哥单片机设计* CSDN : 辰哥单片机设计* 作者 : 辰哥 **********************BEGIN***********************/int main(void)
{ SystemInit();//配置系统时钟为72M delay_init(72);LED_Init();LED_On();RELAY_Init();USART1_Config();//串口初始化OLED_Init();printf(Start \n);delay_ms(1000);OLED_Clear();//显示“继电器:”OLED_ShowChinese(0,0,0,16,1);OLED_ShowChinese(16,0,1,16,1);OLED_ShowChinese(32,0,2,16,1);OLED_ShowChar(48,0,:,16,1);while (1){RELAY_ON;LED_On();OLED_ShowChinese(48,24,3,16,1); //闭OLED_ShowChinese(64,24,4,16,1); //合delay_ms(1000);RELAY_OFF;LED_Off();OLED_ShowChinese(48,24,5,16,1); //断OLED_ShowChinese(64,24,6,16,1); //开delay_ms(1000);}
}
relay.h文件
#ifndef __RELAY_H
#define __RELAY_H
#include stm32f10x.h
#include delay.h
#include sys.h/*****************辰哥单片机设计******************STM32* 文件 : 5V继电器h文件 * 版本 : V1.0* 日期 : 2024.9.18* MCU : STM32F103C8T6* 接口 : 见代码 * BILIBILI : 辰哥单片机设计* CSDN : 辰哥单片机设计* 作者 : 辰哥**********************BEGIN***********************//***************根据自己需求更改****************/
// 继电器 GPIO宏定义#define RELAY_CLK RCC_APB2Periph_GPIOA#define RELAY_GPIO_PIN GPIO_Pin_0#define RELAY_GPIO_PROT GPIOA#define RELAY_ON GPIO_SetBits(RELAY_GPIO_PROT,RELAY_GPIO_PIN)
#define RELAY_OFF GPIO_ResetBits(RELAY_GPIO_PROT,RELAY_GPIO_PIN)/*********************END**********************/void RELAY_Init(void);#endif
relay.c文件
#include relay.h/*****************辰哥单片机设计******************STM32* 文件 : 5V继电器c文件 * 版本 : V1.0* 日期 : 2024.9.18* MCU : STM32F103C8T6* 接口 : 见代码 * BILIBILI : 辰哥单片机设计* CSDN : 辰哥单片机设计* 作者 : 辰哥**********************BEGIN***********************/void RELAY_Init(void)
{GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RELAY_CLK, ENABLE ); //配置时钟GPIO_InitStructure.GPIO_Pin RELAY_GPIO_PIN;GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Mode GPIO_Mode_Out_PP;GPIO_Init(RELAY_GPIO_PROT,GPIO_InitStructure);RELAY_OFF;
}
四、实验效果 五、资料获取
项目分享