GPIO—通用输入输出端口,即软件可控制引脚,类似51单片机的P0-P3;
GPIO的寄存器:
GPIO_CRL/CRH:端口配置低/高寄存器,每四位控制一个I/0口,从低到高依次为PB0、PB1...
GPIO_ODR:端口输出数据寄存器,低16位有效,对应输出端口的16个引脚。
GPIO_BSRR:端口位设置/清楚寄存器:低16位控制置1,高16位控制清零。
GPIO_BRR:相当于BSRR的高16位。
GPIO结构体成员:
在使用固件库编程时,每个外设的结构体都会放在对应的头文件之中,我们只要初始化结构体中的成员就可以实现对GPIO输入输出的控制。
(1)图中红色框为GPIO外设对应的c文件,在使用到其他外设时,可以在该区域选择其他外设c文件;
(2)绿色框为控制GPIO进行输入输出的结构体,该结构体总共有3个成员:
① GPIO_Pin:要初始化的引脚选择;每个GPIO外设都有16个引脚1-16;
② GPIO_Speed:输出速率,只有当GPIO_Pin 配置成输出模式时才需要配置速率;
③ GPIO_Mode:模式选择;
(3)图中黄圈所示为结构体的类型,在配置结构体成员时,先将结构体实体化,在使用{结构体名称 . 结构体成员}的方式为相应成员配置参数。
(4) 对于上述结构体的三个成员,可选的参数已经以枚举或者宏定义的形式罗列在头文件中,如下: