STM32中 USART_SendData();函数为什么数据要是16位的,USART只能传输8位或9位数据,
我要和8位单片机通信,数据该如何处理
void USART_SendData(USART_TypeDef* USARTx, uint16_t Data)
{
/* Check the parameters */
assert_param(IS_USART_ALL_PERIPH(USARTx));
assert_param(IS_USART_DATA(Data));
/* Transmit Data */
USARTx->DR = (Data & (uint16_t)0x01FF);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
[mw_shl_code=c,true]void USART_SendData(USART_TypeDef* USARTx, uint16_t Data)
u8 USART_RX_BUF[USART_REC_LEN]; //接收缓冲,最大USART_REC_LEN个字节.
//===================//
请问原子哥,要求参数uint16_t,我们传递的u8 USART_RX_BUF这是为什么??
//===============//
USART_RX_BUF[USART_RX_STA&0X3FFF]=Res;
这里u16 USART_RX_STA=0; //接收状态标记
请问这里定义的U8数组里面写U16参数为什么不报错,而且Res是把u8放入数组的??谢谢[/mw_shl_code]
一周热门 更多>