1、STM32F103VBT6引脚数为100个,其中80个用于GPIO引脚,另外20个充当VCC、GND、Reset等功能引脚
STM32F103VBT6分为五组端口(引脚的集合)
1、GPIOA 0~15
2、GPIOB 0~15
3、GPIOC 0~15
4、GPIOD 0~15
5、GPIOE 0~15
2、51单片机主要是对寄存器的操作;STM32主要也是对寄存器的操作,但是ST公司的工程师提供好了库,直接调用库函数接口就可以
一、STM32 GPIO引脚的配置方法
前言:只要初始化了GPIO完成后 在主函数中调用GPIO_SetBits(xxxx),GPIO_ResetBits(xxxx)就可以控制它的引脚了。
1 定义GPIO引脚的结构体变量
GPIO_InitTypeDef GPIO_InitStructure;
2 配置引脚的速度(可以配置你用到的多个引脚)
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE, ENABLE);
3 初始化结构体的变量,详情见下面(对结构体的详细理解)
(1)引脚
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
(2)速度:默认选用50MHz
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
(3)模式
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//推挽模式 既可以0 又可以1
4 初始化对应的端口
GPIO_Init(GPIOE, &GPIO_InitStructure);
将上面4个大步骤的代码整理如下 就完成了对GPIO的初始化