摘要:
这个问题的根本原因是复位后,TC和TXE标志位默认都是1,很多人喜欢这样写:USART_SendData(USART1, (u8) ch); while(USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET) { } while在发送第一个字节时没有起到应有作用,直接跳出,接着写第二个字节,这时第一个字节还未发出,数据被破坏了USART_SendData执行后延迟一段时间,TC标志位才清零。把GPIO时钟和USART时钟一起开,就不会出现fe 阅读全文