STM32红外与LED控制实战

#include "stm32f10x.h"

#include "myus.h"

#include "delay.h"

#include "led.h"

#include "hongwai.h"

void Delay(u32 count)

{

u32 i=0;

for(;i<count;i++);

}

int main(void)

{

My_LED_Init();

My_US_Init(); //PE.5 输出高

while(1)

{

if(GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_0)==0)

GPIO_SetBits(GPIOC,GPIO_Pin_13);

else GPIO_ResetBits(GPIOC,GPIO_Pin_13);

USART_SendData(USART1,GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_0));

delay_ms(1000);

GPIO_ResetBits(GPIOB,GPIO_Pin_5);

GPIO_SetBits(GPIOE,GPIO_Pin_5);

Delay(1000);

GPIO_SetBits(GPIOB,GPIO_Pin_5);

GPIO_ResetBits(GPIOE,GPIO_Pin_5);

Delay(1000);

}

}

#include "hongwai.h"

void My_HW_Init(void)

{

GPIO_InitTypeDef GPIO_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //推挽输出

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO口速度为50MHz

GPIO_Init(GPIOC, &GPIO_InitStructure);

GPIO_SetBits(GPIOC,GPIO_Pin_0);

}

#ifndef __HW_H

#define __HW_H

#include "sys.h"

//#define LED0 PCout(13)

void My_HW_Init(void);

#endif

相关推荐
沐欣工作室_lvyiyi3 小时前
家用按摩椅控制系统设计(论文+源码)
单片机·物联网·毕业设计·按摩椅控制系统
天天爱吃肉82185 小时前
电机控制技术深度解析:从基础原理到前沿实战
python·嵌入式硬件·汽车
学习路上_write5 小时前
FREERTOS_互斥量_创建和使用
c语言·开发语言·c++·stm32·单片机·嵌入式硬件
czhaii6 小时前
单片机RTOS“实时响应时间”的定义与测量方法
单片机
DIY机器人工房7 小时前
简单理解:什么是EMC 整改?
stm32·单片机·嵌入式硬件·面试题·emc·diy机器人工房
偶像你挑的噻17 小时前
11-Linux驱动开发-I2C子系统–mpu6050简单数据透传驱动
linux·驱动开发·stm32·嵌入式硬件
Chat_zhanggong34519 小时前
K4A8G165WC-BITD产品推荐
人工智能·嵌入式硬件·算法
bai54593619 小时前
STM32 PWM驱动LED呼吸灯
stm32·单片机·嵌入式硬件
智者知已应修善业20 小时前
【51单片机普通延时奇偶灯切换】2023-4-4
c语言·经验分享·笔记·嵌入式硬件·51单片机
btzhy1 天前
STM32单片机:基本定时器应用:单脉冲模式(STM32L4xx)
stm32·单片机·嵌入式硬件·基本定时器应用:单脉冲模式