最近需要用到 9位数据的发送格式 1个起始位 + 9数据位 +1停止位;共11位 我看库文件的格式都是按照9位处理的;
那8位 9位的使用区别在哪?
/*********************************************************************
* @fn USART_SendData
*
* @brief Transmits single data through the USARTx peripheral.
*
* @param USARTx - where x can be 1, 2, 3 to select the USART peripheral.
* Data - the data to transmit.
*
* @return none
*/
void USART_SendData(USART_TypeDef *USARTx, uint16_t Data)
{
USARTx->DATAR = (Data & (uint16_t)0x01FF);
}
/*********************************************************************
* @fn USART_ReceiveData
*
* @brief Returns the most recent received data by the USARTx peripheral.
*
* @param USARTx - where x can be 1, 2, 3 to select the USART peripheral.
*
* @return The received data.
*/
uint16_t USART_ReceiveData(USART_TypeDef *USARTx)
{
return (uint16_t)(USARTx->DATAR & (uint16_t)0x01FF);
}
2022-7-20 09:17:45
您好,若要发送9位数据的格式,在进行串口初始化配置的时候,需要配置串口控制寄存器1的字长位为9个数据位。
您好,若要发送9位数据的格式,在进行串口初始化配置的时候,需要配置串口控制寄存器1的字长位为9个数据位。
举报