STM32 GPIO 初始化和配置代码详解
这段代码是对STM32的GPIO进行初始化和配置。首先打开PORTB、PORTC和AFIO的时钟,然后禁用SWD并启用JTAG,接着配置PORTC6~10为输出模式,设置输出速度为50MHz,将其初始化并设置输出高电平。接下来,将PORTB的所有引脚都配置为输出模式,初始化并设置输出高电平。最后延时50毫秒。
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIO, ENABLE); // 启用PORTB,C时钟和AFIO时钟
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable , ENABLE);// 禁用SWD,启用JTAG
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10|GPIO_Pin_9|GPIO_Pin_8|GPIO_Pin_7|GPIO_Pin_6; ///PORTC6~10 作为输出引脚
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOC, &GPIO_InitStructure); //GPIOC
GPIO_SetBits(GPIOC,GPIO_Pin_10|GPIO_Pin_9|GPIO_Pin_8|GPIO_Pin_7|GPIO_Pin_6);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All; // PORTB 作为输出引脚
GPIO_Init(GPIOB, &GPIO_InitStructure); //GPIOB
GPIO_SetBits(GPIOB,GPIO_Pin_All);
delay_ms(50); // delay 50 ms
原文地址: https://www.cveoy.top/t/topic/m9Wy 著作权归作者所有。请勿转载和采集!