STM32GPIO输出流程:
操作STM32的GPIO需要三个步骤
第一步:RCC开启时钟
第二步:使用GPIO_Init函数初始化GPIO
第三步:使用输出或输入的函数控制GPIO口
1、RCC最常用的函数:
void RCC_AHBPeriphClockCmd(uint32_t RCC_AHBPeriph, FunctionalState NewState);
void RCC_APB2PeriphClockCmd(uint32_t RCC_APB2Periph, FunctionalState NewState);
void RCC_APB1PeriphClockCmd(uint32_t RCC_APB1Periph, FunctionalState NewState);
这三个函数分别是使能或失能AHB、APB1、APB2外设时钟控制。
2、GPIO库函数
void GPIO_DeInit(GPIO_TypeDef* GPIOx);
void GPIO_AFIODeInit(void);
void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);
void GPIO_StructInit(GPIO_InitTypeDef* GPIO_InitStruct);
uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx);
uint8_t GPIO_ReadOutputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
uint16_t GPIO_ReadOutputData(GPIO_TypeDef* GPIOx);
void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, BitAction BitVal);
void GPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal);
GPIO复位函数
DeInit复位指定的GPIO外设
AFIODeInit函数,可以复位AFIO外设
GPIO_Init函数是通过结构体参数初始化GPIO口(最常用)
GPIO_StructureInit可以把结构体变量赋默认值
GPIO读函数
uint8_t GPIO_ReadInputDataBit
uint16_t GPIO_ReadInputData
uint8_t GPIO_ReadOutputDataBit
uint16_t GPIO_ReadOutputData
GPIO写函数
void GPIO_SetBits
void GPIO_ResetBits
void GPIO_WriteBit
void GPIO_Write
|