赞
踩
本文将以STM32F103C8T6单片机为例讲解GPIO引脚的配置
// 与GPIO-output有关代码
void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState);//设置GPIO引脚电平
void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);//翻转GPIO引脚电平(原状态为高电平,则变为低电平;原状态为低电平,则变为高电平)
/* USER CODE BEGIN 3 */
//设置GPIO电平实例
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_15,GPIO_PIN_SET);//设置PB15引脚为高电平
HAL_Delay(500);//延时500ms
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_15,GPIO_PIN_RESET);//设置PB15引脚为低电平
HAL_Delay(500);//延时500ms
//翻转GPIO电平实例
HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_15);//翻转GPIO引脚电平
HAL_Delay(500);//延时500ms
/* USER CODE END 3 */
// 与GPIO-input有关函数
GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);//读取GPIO引脚状态
/* USER CODE BEGIN 3 */
if(HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_15)==GPIO_PIN_RESET){//判断PB15引脚是否为低电平
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_14,GPIO_PIN_SET);//设置PB14引脚为高电平
}else{
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_14,GPIO_PIN_RESET);//设置PB14引脚为低电平
}
/* USER CODE END 3 */
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。