led.c文件
#include "led.h"
void LED_Init(void){
//¶¨ÒåÒ»¸öGPIO_InitTypeDefÀàÐ͵ĽṹÌå
GPIO_InitTypeDef GPIO_InitStructure;
//¿ªÆôPA¿ÚʱÖÓ
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
//Ñ¡ÔñÒª¿ØÖƵÄPA¿Ú
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1;
//ÉèÖÃÒý½ÅģʽΪͨÓÃÍÆÍìÊä³ö
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
//ÉèÖÃÒý½ÅËÙÂÊΪ50MHz
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
//µ÷Óÿ⺯Êý£¬³õʼ»¯GPIOA
GPIO_Init(GPIOA,&GPIO_InitStructure);
}
led.h文件
#ifndef _LED_H
#define _LED_H
#include"stm32f10x.h"
#define LED2_OFF GPIO_SetBits(GPIOA,GPIO_Pin_0)
#define LED2_ON GPIO_ResetBits(GPIOA,GPIO_Pin_0)
#define LED2_REV GPIO_WriteBit(GPIOA, GPIO_Pin_0,(BitAction)(1-(GPIO_ReadOutputDataBit(GPIOA, GPIO_Pin_0))))
#define LED3_OFF GPIO_SetBits(GPIOA,GPIO_Pin_1)
#define LED3_ON GPIO_ResetBits(GPIOA,GPIO_Pin_1)
#define LED3_REV GPIO_WriteBit(GPIOA, GPIO_Pin_1,(BitAction)(1-(GPIO_ReadOutputDataBit(GPIOA, GPIO_Pin_1))))
void LED_Init(void);
#endif
main.c
#include "stm32f10x.h"
#include"led.h"
int main(void)
{
uint32_t i;
LED_Init();
while(1){
LED2_OFF;
LED3_OFF;
for(i=0;i<0xfffff;i++);
LED2_ON;
LED3_ON;
for(i=0;i<0xfffff;i++);
}
}
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』