①void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);
将结构体InitStruct中的成员引用出来后并全部赋值,将整个结构体和对应的GPIO口进行初始化,让它们可以用!
②void GPIO_DeInit(GPIO_TypeDef* GPIOx);(x为A~G,每一个GPIO对应16口 GPIO0 ~ GPIO15)
函数功能描述:Deinitializes the GPIOx peripheral registers to their default reset values.
翻译:将外设GPIOx寄存器重设为缺省值(不是很明白意思)直接看名字就可以理解为反初始化,意思就是让其不能用。通过这个可以看到,DeInit就是通过将函数的时钟给关闭,然后让对应的GPIO寄存器不工作了。
③void GPIO_StructInit(GPIO_InitTypeDef* GPIO_InitStruct);
功能描述:Fills each GPIO_InitStruct member with its default value.
翻译:把GPIO_InitStruct中的每一个参数按缺省值填入。就相当于调用这个函数直接把三个结构体成员按照它写的给你赋值好了,这就是描述的缺省值!后面也可以改。