1. 程式人生 > >STM32串口打印出現的中文亂碼和首字母消失問題

STM32串口打印出現的中文亂碼和首字母消失問題

分析 就是 曾經 下使用 打開 打印 stm32 notepad 先後

首字母消失:是在打印前沒有先執行USART_ClearFlag(USART1,USART_FLAG_TC);
至於原因,我曾經見到一位大神仔細的分析過,不過我忘了,大概的就是因為,單片機讀取寄存器先後而導致的。

中文亂碼:這裏中文亂碼,首先你要確定你不是數字英文也亂碼,如果是數字英文也亂碼,那可能的原因就比較多了:比如波特率不對,TTL線卻用了232線,USART配置沒對,硬件本身壞了等等,有時還需要通過示波器看波形確定。這裏講的中文亂碼則是由於在MDK編輯下使用了“非ANSI”的文字編碼格式,你需要做的就是把這個文件用notepad++打開,選擇編碼->轉為ANSI編碼,保存,就搞定了。

STM32串口打印出現的中文亂碼和首字母消失問題