蓝桥杯物联网竞赛_STM32L071_2_继电器控制

Stm32l071原理图:


PA11PA12连接着UNL2803

ULN2803是一种集成电路芯片,通常被用作高电压和高电流负载的驱动器。

ULN2803是一个达林顿阵列,当输入引脚(IN1至IN8)被连接到正电源时,相应的输出引脚(OUT1至OUT8)将会断开或保持在高阻抗状态。这意味着输出引脚不会提供任何电流或电压输出。

当输入引脚被连接到正电源时,通常用于让外部组件(如微控制器或其他逻辑电路)控制输出引脚的状态。如果你想让输出引脚处于活跃状态,你需要将输入引脚连接到地或负电源。

PA11PA12输入高电平,其对位引脚REALY1REALY2输出就为低电平,反之输入为低,输出就为高

REALY1REALY2输出为低电平,继电器Relay导通其对位的K1K2就会导通LD2LD3发光,反之继电器处于释放状态,那么K1K2断开,灯熄灭=

CubeMX配置:

Function.c及Function.h:

c 复制代码
#include "Function.h"
#include "gpio.h"
void Function_LD5_ON(void){
	HAL_GPIO_WritePin(LD5_GPIO_Port, LD5_Pin, GPIO_PIN_RESET);
}

void Function_LD5_OFF(void){
	HAL_GPIO_WritePin(LD5_GPIO_Port, LD5_Pin, GPIO_PIN_SET);
}

void Function_LD5_Toggle(void){
	HAL_GPIO_TogglePin(LD5_GPIO_Port, LD5_Pin);
}

 
void Function_K1_ON(void){
	HAL_GPIO_WritePin(K1_GPIO_Port, K1_Pin, GPIO_PIN_SET);
}

void Function_K1_OFF(void){
	HAL_GPIO_WritePin(K1_GPIO_Port, K1_Pin, GPIO_PIN_RESET);
}

void Function_K1_Toggle(void){
	HAL_GPIO_TogglePin(K1_GPIO_Port, K1_Pin);
}

void Function_K2_ON(void){
	HAL_GPIO_WritePin(K2_GPIO_Port, K2_Pin, GPIO_PIN_SET);
}

void Function_K2_OFF(void){
	HAL_GPIO_WritePin(K2_GPIO_Port, K2_Pin, GPIO_PIN_RESET);
}

void Function_K2_Toggle(void){
	HAL_GPIO_TogglePin(K2_GPIO_Port, K2_Pin);
}
c 复制代码
#ifndef __FUNCTION__
#define __FUNCTION__
void Function_LD5_ON(void);

void Function_LD5_OFF(void);

void Function_LD5_Toggle(void);

 
void Function_K1_ON(void);

void Function_K1_OFF(void);

void Function_K1_Toggle(void);

void Function_K2_ON(void);


void Function_K2_OFF(void);


void Function_K2_Toggle(void);

#endif

main函数:

c 复制代码
while (1)
  {
		Function_K1_Toggle();
		Function_LD5_Toggle();
		Function_K2_Toggle();
		HAL_Delay(300);

  }

效果:

K1-LED、K2-LED、LD5持续亮灭


相关推荐
balance_rui1 小时前
FreeRTOS
笔记·stm32
LCG元1 小时前
STM32实战案例:基于HC-SR04的超声波测距与倒车雷达系统
stm32·单片机·嵌入式硬件
华清远见IT开放实验室2 小时前
智能手表完整项目实现,比赛求职双向加分,基于嵌入式大赛推荐开发板(STM32U5)
stm32·单片机·嵌入式硬件·学习·智能手表·嵌入式大赛
BackCatK Chen2 小时前
STM32保姆级入门教程|第8章:PT100高精度测温实战 + ADS1232驱动 + 24位ADC数据解析(功能超详细+CubeIDE手把手)
stm32·stm32cubeide·高精度测温·ads1232·pt100·24位adc·工业实战
危桥带雨2 小时前
FLASH理论基础
stm32·单片机·嵌入式硬件
feifeigo1233 小时前
STM32 LCD彩色液晶屏显示汉字、英文、数字
stm32·单片机·嵌入式硬件
实在太懒于是不想取名5 小时前
STM32N6的开发日记(4):快速上手LTDC显示图片-让屏幕刷新丝滑流畅
stm32·单片机·嵌入式硬件
实在太懒于是不想取名5 小时前
STM32N6的开发日记(1):上手难度拉满的N6有哪些不同?
stm32·单片机·嵌入式硬件
上海合宙LuatOS5 小时前
LuatOS扩展库API——【libnet】TCP/UDP协议
物联网·tcp/ip·junit·udp·luatos
VOOHU_20186 小时前
VOOHU沃虎:音频变压器的主要作用是什么?什么情况下必须使用?
网络·物联网·音视频·电子元器件