以下是对您提供的博文内容进行深度润色与结构重构后的专业级技术文章。全文已彻底去除AI生成痕迹,强化了工程师视角的实战语感、逻辑递进与教学节奏;摒弃模板化标题与刻板段落,代之以自然流畅、层层深入的技术叙事;关键知识点融入上下文讲解,避免割裂式罗列;语言简洁有力,兼具专业深度与可读性,并严格遵循您提出的全部优化要求(无总结段、无展望句、不使用“首先/其次”等机械连接词、不出现“本文将…”式开头)。
一个DWORD值,让Keil5真正看懂中文——嵌入式开发者的注册表调优手记
很多刚接触STM32或NXP LPC系列的同学,在Keil5里敲下第一行中文注释时,会突然愣住:// 初始化LED引脚→ 显示成// ?????LED???
再点开工程路径含“嵌入式项目”的.uvprojx文件,IDE直接报错:“Project file not found”。
这不是字体问题,不是DPI缩放惹的祸,也不是编译器抽风。它藏得更深——在Windows注册表一个叫CodePage的DWORD值里。
这个值默认是0,Keil5看到后就乖乖回退到系统ANSI编码(简体中文系统即GB2312/CP936)。可你用VS Code写的.c文件,早就是UTF-8无BOM保存的了。一个用GB2312解码,一个用UTF-8写入,字节对不上,乱码就成了必然。
而修复它,只需要改一个数:把0改成65001。
Keil5编辑器怎么“认字”?从注册表读取开始
Keil5启动时,并不会主动去问Windows:“当前该用什么编码?”它只做一件事:打开注册表路径HKEY_CURRENT_USER\Software\Keil\μVision\Editor,然后调用Re