求问:
这是stm32f10x.usart.c中的程序:
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);
}
串口不是8位向上位机发送的吗,为什么STM32提供的程序是16位呢?是因为DR是低9位有效,所以才传输16位吗?不懂,求问。 |