这个代码的volatile uint8_t receive;是什么作用,receive = huart6.Instance->DR;这一句是什么意思
void USART6_IRQHandler(void)
{
volatile uint8_t receive;
if(huart6.Instance->SR & UART_FLAG_RXNE)
{
receive = huart6.Instance->DR;
HAL_GPIO_TogglePin(LED_G_GPIO_Port, LED_G_Pin);
HAL_GPIO_TogglePin(b_GPIO_Port, b_Pin);
}
else if(huart6.Instance->SR & UART_FLAG_IDLE)
{
receive = huart6.Instance->DR;
HAL_GPIO_WritePin(LED_G_GPIO_Port, LED_G_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(b_GPIO_Port, b_Pin, GPIO_PIN_RESET);
}
}
receive是接收的数据缓冲
加一个volatile修饰符,使变量实时更新,加快数据访问的速度