BLED.h:
#ifndef __BLED_H
#define __BLED_H
void BLED_Init(void);
void BLED1_ON(void);
void BLED1_OFF(void);
void BLED1_Turn(void);
#endif
BLED.c:
#include "stm32f10x.h" // Device header
//led初始化
void BLED_Init(void){
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
//ctrl alt kongge
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_12;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOB,&GPIO_InitStructure);
GPIO_SetBits(GPIOB,GPIO_Pin_12);
}
//led1亮
void BLED1_ON(void){
GPIO_ResetBits(GPIOB,GPIO_Pin_12);
}
//led1灭
void BLED1_OFF(void){
GPIO_SetBits(GPIOB,GPIO_Pin_12);
}
//led1状态反转
void BLED1_Turn(void){
if(GPIO_ReadOutputDataBit(GPIOB,GPIO_Pin_12)==0){
GPIO_SetBits(GPIOB,GPIO_Pin_12);
}else{
GPIO_ResetBits(GPIOB,GPIO_Pin_12);
}
}
Voice.h:
#ifndef __VOICE_H
#define __VOICE_H
//声音传感器初始化
void VoiceSensor_Init(void);
//获取传感器状态
uint8_t VoiceSensor_Get(void);
#endif
Voice.c:
#include "stm32f10x.h" // Device header
void VoiceSensor_Init(void)
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB, &GPIO_InitStructure);
}
uint8_t VoiceSensor_Get(void)
{
return GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_13);
}
main.c:
#include "stm32f10x.h" // Device header
#include "Delay.h"
#include "BLED.h"
#include "voice.h"
//uint8_t KeyNum;
int main(void)
{
BLED_Init();
VoiceSensor_Init();
while (1)
{
if (VoiceSensor_Get() == 1)
{
BLED1_ON();
}
else
{
BLED1_OFF();
}
}
}
写博客为了记录笔记,不怕丢