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

相关推荐
Jie_jiejiayou14 小时前
定时器详解以及呼吸灯实现 — STM32(HAL库)
stm32·单片机·嵌入式硬件·定时器
逆小舟14 小时前
【STM32】定时器、PWM
stm32·单片机·嵌入式硬件
XH1.14 小时前
学习RT-thread(RT-thread定时器)
stm32·单片机·学习
QT 小鲜肉14 小时前
【个人成长笔记】在 Linux 系统下撰写老化测试脚本以实现自动压测效果(亲测有效)
linux·开发语言·笔记·单片机·压力测试
申克Lab14 小时前
STM32 串口概念 UART协议
stm32·单片机·嵌入式硬件
小莞尔14 小时前
【51单片机】【protues仿真】基于51单片机自动浇花系统
单片机·嵌入式硬件
沐欣工作室_lvyiyi15 小时前
基于51单片机的宠物喂食器的设计与实现(论文+源码)
单片机·嵌入式硬件·毕业设计·51单片机·宠物
hazy1k19 小时前
51单片机基础-最小系统设计
stm32·单片机·嵌入式硬件·mcu·51单片机·proteus
奋斗的牛马19 小时前
FPGA—ZYNQ学习spi(六)
单片机·嵌入式硬件·学习·fpga开发·信息与通信
清风66666620 小时前
基于单片机的智能高温消毒与烘干系统设计
数据库·单片机·嵌入式硬件·毕业设计·课程设计·期末大作业