/****************************************************************************
* 文件名: main.c
* 内容简述:
*
* 演示的是3个蓝色LED(LED1-LED3) 轮流闪烁
定义:
LED1-LED3 ---V6——V8
V6----- PB5-LED1
V7----- PD6-LED2(仅V2,V2.1 V3板)
V8----- PD3-LED3(仅V2,V2.1 V3板)
基于MDK版本: 3.8
基于官方外设库版本: 3.5
*
/* Includes ------------------------------------------------------------------*/
#include "stm32f10x.h"
GPIO_InitTypeDef GPIO_InitStructure;//////////////////////222222222222222222222222
#define LED1_ON GPIO_SetBits(GPIOB, GPIO_Pin_5);//////////111111111111111111111111
#define LED1_OFF GPIO_ResetBits(GPIOB,GPIO_Pin_5);
#define LED2_ON GPIO_SetBits(GPIOD, GPIO_Pin_6);
#define LED2_OFF GPIO_ResetBits(GPIOD, GPIO_Pin_6);
#define LED3_ON GPIO_SetBits(GPIOD, GPIO_Pin_3);
#define LED3_OFF GPIO_ResetBits(GPIOD, GPIO_Pin_3);
void RCC_Configuration(void);
void LED_Config(void);
void Delay(__IO uint32_t nCount);
/****************************************************************************
* 名 称:void LED_Config(void)
* 功 能:LED 控制初始化函数
* 入口参数:无
* 出口参数:无
* 说 明:
* 调用方法:无
****************************************************************************/
void LED_Config(void){
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOD , ENABLE);////////////333333333333333
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; //LED1 V6 //将V6,V7,V8 配置为通用推挽输出
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //口线翻转速度为50MHz
GPIO_Init(GPIOB, &GPIO_InitStructure);//////////////4444444444444444444444444
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6|GPIO_Pin_3; //LED2, LED3 V7 V8
GPIO_Init(GPIOD, &GPIO_InitStructure);
}
/****************************************************************************
* 名 称:int main(void)
* 功 能:主函数
* 入口参数:无
* 出口参数:无
* 说 明:
* 调用方法:无
****************************************************************************/
int main(void)
{
RCC_Configuration(); //系统时钟配置
LED_Config(); //LED控制配置
while (1)
{
LED1_ON; LED2_OFF; LED3_OFF; //LED1亮 LED2,LED3灭(LED2,LED3 仅V3,V2,V2.1板有)
Delay(0xAFFFF);
LED1_OFF; LED2_ON; LED3_OFF; //LED2亮 LED1,LED3灭(LED2,LED3 仅V3,V2,V2.1板有)
Delay(0xAFFFF);
LED1_OFF; LED2_OFF; LED3_ON; //LED3亮 LED1,LED2灭(LED2,LED3 仅V3,V2,V2.1板有)
Delay(0xAFFFF);
}
}
/****************************************************************************
* 名 称:void RCC_Configuration(void)
* 功 能:系统时钟配置为72MHZ
* 入口参数:无
* 出口参数:无
* 说 明:
* 调用方法:无
****************************************************************************/
void RCC_Configuration(void)
{
SystemInit();
}
/****************************************************************************
* 名 称:void Delay(__IO uint32_t nCount)
* 功 能:延时函数
* 入口参数:无
* 出口参数:无
* 说 明:
* 调用方法:无
****************************************************************************/
void Delay(__IO uint32_t nCount)
{
for(; nCount != 0; nCount--);
}
/******************* (C) COPYRIGHT 2011 奋斗STM32 *****END OF FILE****/
|