STM32串口接收数据回来的数据是u16型,我把接收回来的数据放到一个u16的数组里,显示函数是const u8*型,数据类型不匹配呀,该怎么办呢?
u16 Receive_usart_data[]={};
LCD_ShowString(30,200,Receive_usart_data);
void USART1_IRQHandler(void)
{
u16 RxData;
LED1 = ~LED1;
if(USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == SET) //确认是否接收到数据
{
//将数据回送至超级终端
//USART_ClearITPendingBit(USART1, USART_IT_RXNE);
RxData = USART_ReceiveData(USART1);
USART_SendData(USART1, RxData);
//等待数据发送完毕
while(USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);
*Receive_usart_data++ = (u8)(RxData)+0x30;
//GPIO_ResetBits(GPIOA, GPIO_Pin_2);
LED2 = ~LED2;
}
}
u16 USART_ReceiveData(USART_TypeDef* USARTx)
{
/* Check the parameters */
assert_param(IS_USART_ALL_PERIPH(USARTx));
/* Receive Data */
return (u16)(USARTx->DR & (u16)0x01FF);
}
|