stm32 USART1发送数据,PC机串口助手收到的数据与发送的不一样,这是怎么回事啊?
发送的是0x61,接收到的是4F波特率不是这样直接设的吗USART_InitStructure.USART_BaudRate=9600;求大神指导啊...
发送的是0x61,接收到的是4F
波特率不是这样直接设的吗
USART_InitStructure.USART_BaudRate = 9600;
求大神指导啊 展开
波特率不是这样直接设的吗
USART_InitStructure.USART_BaudRate = 9600;
求大神指导啊 展开
2个回答
展开全部
波特率是这样没错,应该是数据处理的问题,请贴相关代码
更多追问追答
追答
void USART1_IRQHandler()
{
if (USART_GetITStatus(USART1, USART_IT_TXE) != RESET)
{
USART_SendData(USART1, sheng);
}
if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)
{
xxx = USART_ReceiveData(USART1);
}
}
中断中不要加延时,一般原则是越简洁越好,如需处理大量数据,中断也只负责收发数据到缓存,在主函数中再对缓存做处理
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询