代码改变世界

STM32F10X GPIO的操作

2020-04-04 15:22  hoodguy  阅读(743)  评论(0)    收藏  举报

今天开始学习STM32  手头有一块原子的STM32F10X 的开发板, 记录下学习过程  ,以便总结   

实现LED操作

定义两个LED引脚

//用户引脚定义
#define led_gree_pin        PBout(5)
#define led_red_pin         PEout(5)

初始化GPIO

void GPIO_initialization(void)
{
    //GPIO_INIT:
    GPIO_InitTypeDef GPIO_InitStructure;
    //使能GPIOE pin5
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE|RCC_APB2Periph_GPIOB,ENABLE);
        GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
        GPIO_Init(GPIOE,&GPIO_InitStructure);
    //使能GPIOB pin5
        GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
        GPIO_Init(GPIOB,&GPIO_InitStructure);
}

 

主函数

int main(void)
{
    SystemInit();
    GPIO_initialization();
    while(1){
        led_gree_pin = ~led_gree_pin;
        led_red_pin = ~led_red_pin;
    }
}

 

DEBUG进去以后 按F10 LED灯开始循环点亮和熄灭