HAL_GPIO_TogglePin:翻转引脚电平 HAL_GPIO_LockPin:所以引脚当前电平,将无法改变 HAL_GPIO_EXTI_IRQHandler:引脚的中断服务函数 HAL_GPIO_EXTI_Callback:引脚的中断回调函数 */ GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16...
HAL_GPIO_Init(Y_LED_GPIO_Port,&GPIO_InitStruct); /*ConfigureGPIOpin:PtPin*/ GPIO_InitStruct.Pin=CP_LED_Pin; GPIO_InitStruct.Mode=GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull=GPIO_NOPULL; GPIO_InitStruct.Speed=GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(CP_LED_GPIO_Port,&GPIO_InitStruct); } ...
HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin); HAL_Delay(500); 编译后下载就可以看到板子上的LED灯闪烁了。 使用HAL库的好处是可以手动选择配置各种参数而不是使用标准库的方式去编写,提高了开发效率。 不过使用HAL库可能会造成执行效率的降低以及程序过大。
HAL_GPIO_TogglePin(LED0_GPIO_Port,LED0_Pin);//翻转PB5电平 } }
HAL_GPIO_TogglePin:翻转引脚电平 HAL_GPIO_LockPin:所以引脚当前电平,将无法改变 HAL_GPIO_EXTI_IRQHandler:引脚的中断服务函数 HAL_GPIO_EXTI_Callback:引脚的中断回调函数 */ GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); ...
Thisparametercanbeavalueof@refGPIO_Alternate_function_selection*/ }GPIO_InitTypeDef; 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 时钟树图 配置完成,然后生成代码就可以了 源码解析 生成的关于LED GPIO的代码 ...
void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin); void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin); main( )函数 我们可以在main.h中看到之前定义的用户标签,如下: #define LED1_Pin GPIO_PIN_14 #define LED1_GPIO_Port GPIOC #define LED2_Pin GPIO_PIN_15 ...
unsigned char str[1];//接收数据存放位置HAL_UART_Receive_IT(&huart1,str,1);//串口接收数据 //串口接收完成的中断回调函数void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart){ if(str[0]==0x80)//判断接收的数据是否为0x80 HAL_GPIO_TogglePin(LED0_GPIO_Port,LED0_Pin);//翻转PB5电平} ...
HAL_GPIO_TogglePin(LED_GPIO_Port,LED_Pin);//单独输出电平取反} } 开启中断 HAL_TIM_Base_Start_IT(&htim1); 二、 定时器之PWM PWM即脉冲宽度调制,是一种模拟控制方式,通常用于LED的亮度调节。其实就是快速的高低电平变化让人感觉不出来。 (一)了解一下HZ的概念 ...
HAL_GPIO_TogglePin(LED0_GPIO_Port,LED0_Pin); } break; default:break; } } /* USER CODE END 4 */ 其中: HAL_GPIO_TogglePin() 函数用于实现翻转 IO 口的电平。 实现同样功能,还可以使用下面代码分别控制LED的亮灭:HAL_GPIO_WritePin(LED0_GPIO_Port,LED0_Pin,GPIO_PIN_RESET) // 输出低电平--...