在中级篇-串口通信6视频中,用中断接收PC发过来的数据,定义了一个uint8_t的变量,但是USART_ReceiveData()的返回值是uint16_t类型的,这样写不会有问题吗?
这是固件库函数:
uint16_t USART_ReceiveData(USART_TypeDef* USARTx)
视频中的代码是这样写的:
/*串口中断服务函数*/
void DEBUG_USART_IRQHandler(void)
{
uint8_t ucTemp;
if(USART_GetITStatus(DEBUG_USARTx, USART_IT_RXNE) != RESET)
{
ucTemp = USART_ReceiveData(DEBUG_USARTx);
USART_SendData(DEBUG_USARTx,ucTemp);
}
} |