STM32的GPIO知识点
—、GPIO简介
1.GPIO英文全称——General Purpose Input Output,是通用输入输出口。
2.可以配置成4种输入模式和4种输出模式。引脚电平为0V~3.3V,部分引脚可以容忍5V.
3.在输入模式下可以 读取 引脚的高低电平,用于读取按键的输入,外接模块的电平输入等。
4.在输出模式下可以 控制 引脚的高低电平,点亮LED,控制蜂鸣器等。
二、 八种工作模式
1.浮空输入,可以读取引脚电平,若引脚浮空,则电平不确定。
2.上拉输入,内部接上拉电阻,浮空时默认为高电平。
3.下拉输入,内部接下拉电阻,浮空时默认为低电平。
4.模拟输入,引脚直接接入内部ADC。
5.推挽输出,可以控制引脚的电平,高电平接VDD(3.3V),低电平接VSS(0V)。
6.开漏输出,高电平为高组态,不能去驱动LED等,低电平接VSS。
7.复用推挽、开漏输出,由片上外设控制。
三、Keil中配置GPIO(使用固件库)
1.打开RCC外设时钟控制,因为STM32的功耗低,当使用哪一个引脚时,就配置哪一个。
下面是配置PA0引脚,配置为推挽输出
int main(void)
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Pin= GPIO_Pin_0;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOA,&GPIO_InitStructure);
while(1)
{
}
}c
在这里插入代码片