#include "stm32f10x.h"
#include "delay.h"
void Delay(u32 count)
{
u32 i=0;
for(;i<count;i++);
}
int main(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); //使能PA
delay_init();
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; //LED0-->PA.8 端口配置
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO口速度为50MHz
GPIO_Init(GPIOA, &GPIO_InitStructure); //根据设定参数初始化GPIOA.8
GPIO_SetBits(GPIOA,GPIO_Pin_8); //PA.8 输出高
// GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; //LED1-->PD.2 端口配置, 推挽输出
// GPIO_Init(GPIOD, &GPIO_InitStructure); //推挽输出 ,IO口速度为50MHz
//GPIO_SetBits(GPIOD,GPIO_Pin_2); //PD.2 输出高
while(1)
{
GPIO_SetBits(GPIOA,GPIO_Pin_8);
//GPIO_SetBits(GPIOD,GPIO_Pin_2);
delay_ms(1000);
GPIO_ResetBits(GPIOA,GPIO_Pin_8);
//GPIO_ResetBits(GPIOD,GPIO_Pin_2);
delay_ms(1000);
}
}
试用dealy_ms函数前首先初始化delay_init.
使能GPIO时钟,配置IO口模式
输出模式设为推挽输出,输出频率50MHZ
红灯对应引脚GPIOA_Pin_8;
黄灯对应引脚GPIOD_Pin_2