×
单片机 > 单片机程序设计 > 详情

STM32CubeMX处理UTF-8编码中文注释存在的问题及解决方法

发布时间:2020-08-31 发布时间:
|

Windows环境下源代码使用UTF-8编码,STM32CubeMX创建的源文件中包含中文注释,那么使用STM32CubeMX重新生成源代码时会导致中文注释变乱码。

http://blog.csdn.net/zoomdy/article/details/54767178 
mingdu.zheng at gmail dot com

存在的问题

STM32CubeMX修改配置并重新生成文件后,原来的中文注释中出现了乱码,见下图。

下图是乱码之前的代码。

按照STM32CubeMX的设计,在重新生成代码时只会修改STM32CubeMX生成的代码,保留用户在指定区域内编写的代码。

问题分析

多次实验后发现,只有在Windows环境下源代码使用UTF-8编码时才出现这个问题,如果使用Windows默认的GBK编码是没有问题的。Linux环境下使用UTF-8编码不会出现这个问题,Linux默认编码就是UTF-8。

解决办法

1、不要使用UTF-8编码。如果开发环境是多元的,要支持Windows、Linux、Mac OS X,那只能使用UTF-8编码。 
2、不要在STM32CubeMX生成的文件中写中文注释,可以写英文注释,或者将有中文注释的代码放到用户创建的源文件中,STM32CubeMX不会去修改用户创建的源文件,所以是没问题的。




『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
如何为单片机选择合适的负载电容