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

相关推荐
悠哉悠哉愿意4 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
Lester_11014 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
LCG元4 天前
低功耗显示方案:STM32L0驱动OLED,动态波形绘制与优化
stm32·嵌入式硬件·信息可视化
三佛科技-187366133974 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z20348315204 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
Alaso_shuang4 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
脚后跟4 天前
AI助力嵌入式物联网项目全栈开发
嵌入式硬件·物联网·ai编程
2501_918126914 天前
stm32死锁是怎么实现的
stm32·单片机·嵌入式硬件·学习·个人开发
z20348315204 天前
STM32F103系列单片机定时器介绍(一)
stm32·单片机
星马梦缘5 天前
驱动层开发——蜂鸣器驱动
stm32·单片机·嵌入式硬件·hal·驱动