这段代码是对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
STM32 GPIO 初始化和配置代码详解

原文地址: https://www.cveoy.top/t/topic/m9Wy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录