STM32 GPIO 端口初始化配置及输出高电平示例代码解析
这段代码的作用是初始化和配置 GPIO 端口的输入输出模式和时钟,并设置对应的引脚输出高电平,以及延时 50 毫秒。
主要语句如下:
-
GPIO_InitTypeDef GPIO_InitStructure;// GPIO 初始化结构体类型定义 -
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC| RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIO, ENABLE);// 使能 PORTB,C 时钟以及 AFIO 时钟 -
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable , ENABLE);// 开启 SWD -
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;// 设置输出速度为 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);// 将 PC6~10 引脚设置为高电平 -
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;// 设置 PORTB 所有引脚为输出 -
GPIO_Init(GPIOB, &GPIO_InitStructure);// 初始化 GPIOB 端口 -
GPIO_SetBits(GPIOB,GPIO_Pin_All);// 将 PORTB 所有引脚设置为高电平 -
delay_ms(50);// 延时 50 毫秒
原文地址: https://www.cveoy.top/t/topic/m9U5 著作权归作者所有。请勿转载和采集!