初始化串口的最后加一个清标志动作.这个应该是你的问题3
USART_ClearFlag(USART3,USART_FLAG_TC); //清发送完成标志, 否则第一个发不出
1,2其实都是一个问题,你可试下在初始后串口的最后读一下串口试试. 不用接收中断?不用像32一样,清除中断标志位?
还有UART1_RX_BUF是什么类型的?是uiint8_t或者u8类型么? 在初始化命令 你把波特率设置低一点看看,最好用示波器看看PC发送的数据正不正确,在看RS232输出到单片机的数据正不正确,这样来排除问题 本帖最后由 xmshao 于 2016-12-20 11:09 编辑
问题出在这里。USART_ClearFlag(USART3,USART_FLAG_TC); ==>改为查TXE
这里描述的比较清楚。一个关于USART 传输标志TXE/TC 的话题
页:
1
[2]