STM32串口全双工通信 HAL库__HAL_LOCK()死锁问题

解决方法:
while(HAL_UART_Receive_DMA(&huart3,RxBuff,RX_CNT) == HAL_BUSY)
{
__HAL_UNLOCK(&huart3);//解锁
}

只需在开始接收时判断一下返回标志,如果是"HAL_BUSY"则解锁,而不需暴力注释掉__HAL_LOCK、__HAL_UNLOCK

你可能感兴趣的:(STM32)