问题描述及分析我在写嵌入式代码的时候把 keil 和 vscode 的文件编码都设置为 UTF-8。结果用 STM32CubeMX 生成代码后出现了以下这种乱码网上有关 STM32CubeMX 的乱码大多数是说代码本身是 GB2312 或 GBK 编码然后新版 STM32CubeMX 使用 UTF-8 造成乱码。我这里代码本身就是 UTF-8 编码STM32CubeMX 是较老的 6.8.1 版本说明 STM32CubeMX 本身没有使用 UTF-8 才造成了这种乱码。解决方案打开文件 C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeMX\STM32CubeMX.l4j.ini增加-Dfile.encodingUTF-8之后再用 6.8.1 的 STM32CubeMX生成的就是 UTF-8 编码不会造成 UTF-8 编码的中文注释乱码。