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

相关推荐
来自晴朗的明天3 小时前
16、电压跟随器(缓冲器)电路
单片机·嵌入式硬件·硬件工程
钰珠AIOT4 小时前
在同一块电路板上同时存在 0805 0603 不同的封装有什么利弊?
嵌入式硬件
代码游侠4 小时前
复习——Linux设备驱动开发笔记
linux·arm开发·驱动开发·笔记·嵌入式硬件·架构
代码游侠15 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
CODECOLLECT18 小时前
京元 I62D Windows PDA 技术拆解:Windows 10 IoT 兼容 + 硬解码模块,如何降低工业软件迁移成本?
stm32·单片机·嵌入式硬件
BackCatK Chen19 小时前
STM32+FreeRTOS:嵌入式开发的黄金搭档,未来十年就靠它了!
stm32·单片机·嵌入式硬件·freertos·低功耗·rtdbs·工业控制
全栈游侠1 天前
STM32F103XX 02-电源与备份寄存器
stm32·单片机·嵌入式硬件
Lsir10110_1 天前
【Linux】中断 —— 操作系统的运行基石
linux·运维·嵌入式硬件
深圳市九鼎创展科技1 天前
瑞芯微 RK3399 开发板 X3399 评测:高性能 ARM 平台的多面手
linux·arm开发·人工智能·单片机·嵌入式硬件·边缘计算