
01. 文本美化: e7 h2 U" X, |9 U5 l9 g1 ^ 文本美化,主要是设置一些关键字、注释、数字等的颜色和字体。前面我们在介绍 MDK5新建工程的时候看到界面,这是 MDK 默认的设置,可以看到其中的关键字和注释等字体的颜色不是很漂亮,而 MDK 提供了我们自定义字体颜色的功能。我们可以在工具条上点击 (配置对话框)或者Edit->Configuration。 ![]() ( T- o0 M# M1 q. N0 S 在该对话框中,先设置 Encoding 为:Chinese GB2312(Simplified),然后设置 Tab size 为:4。以更好的支持简体中文(否则,拷贝到其他地方的时候,中文可能是一堆的问号),同时 TAB间隔设置为 4 个单位。然后,选择:Colors&Fonts 选项卡,在该选项卡内,我们就可以设置自己的代码的子体和颜色了。由于我们使用的是C语言,故在Window下面选择:C/C++ Editor Files在右边就可以看到相应的元素了。+ f* M! a9 E4 u; ^( f8 G4 s ![]() 字体大小,则可以直接按住:ctrl+鼠标滚轮,进行放大或者缩小,或者也可以在刚刚的配置界面设置字体大小。 % L/ k" y5 M( R& X b$ Y" } 用户自定义关键字没有高亮显示,解决办法是同样选择:C/C++Editor Files,在右边的 User Keywords 对话框下面输入你自己定义的关键字。5 n( K, u8 @1 o/ I5 L% f5 T / I- z7 b, {1 I% S2 r# I ![]() 02. 语法检测和代码提示. U* k1 c2 p2 n MDK5.30的版本,有代码提示与动态语法检测功能,使得 MDK 的编辑器越来越好用了,这里我们简单说一下如何设置,同样,点击 ,打开配置对话框,选择 Text Completion选项卡。 ![]() Strut/Class Members,用于开启结构体/类成员提示功能。 Function Parameters,用于开启函数参数提示功能。 Symbols after xx characters,用于开启代码提示功能,即在输入多少个字符以后,提示匹配的内容(比如函数名字、结构体名字、变量名字等),这里默认设置 3 个字符以后,就开始提示。 Dynamic Syntax Checking,则用于开启动态语法检测,比如编写的代码存在语法错误的时候,会在对应行前面出现X图标,如出现警告,则会出现!图标,将鼠标光标放图标上面,则会提示产生的错误/警告的原因。 03. 代码编辑技巧 3.1 TAB键的妙用1 M1 t& E8 ]$ G4 R4 L3 ] 首先要介绍的就是 TAB 键的使用,这个键在很多编译器里面都是用来空位的,每按一下移空几个位。如果你是经常编写程序的对这个键一定再熟悉不过了。但是 MDK 的 TAB 键和一般编译器的 TAB 键有不同的地方,和 C++的 TAB 键差不多。MDK 的 TAB 键支持块操作。也就是可以让一片代码整体右移固定的几个位,也可以通过 SHIFT+TAB 键整体左移固定的几个位。( W, i: f! q9 X* C) ]' ? K, R 选中一块然后按 TAB 键,你可以看到整块代码都跟着右移了一定距离 ' c# v, N8 x7 D5 O2 `& A q ![]() . f& s5 M6 I* W% a 3.2 快速定位函数和变量的定义/ N z, a# N( S4 x1 c/ ~5 w7 }4 h 大家在调试代码或编写代码的时候,一定有想看看某个函数是在那个地方定义的,具体里面的内容是怎么样的,也可能想看看某个变量或数组是在哪个地方定义的等。尤其在调试代码或者看别人代码的时候,如果编译器没有快速定位的功能的时候,你只能慢慢的自己找,代码量比较少还好,如果代码量一大,那就郁闷了,有时候要花很久的时间来找这个函数到底在哪里。型号 MDK 提供了这样的快速定位的功能。只要你把光标放到这个函数/变量(xxx)的上面(xxx 为你想要查看的函数或变量的名字),然后右键,弹出如图所示的菜单栏 : # A9 v* N9 H* @ ![]() & F, x( d5 t* {3 p6 a- I1 V; e) G 温馨提示/ a" e8 `3 M5 c. H4 r9 r 要先在 Options for Target 的 Output选项卡里面勾选 Browse Information 选项,再编译,再定位,否则无法定位! 1 ]4 \+ W8 c, D0 J 很多时候,我们利用 Go to Definition/ Reference 看完函数/变量的定义/申明后,又想返回之前的代码继续看,此时我们可以通过 IDE 的 按钮(Back to previous position)快速的返回之前的位置,这个按钮非常好用!9 r. F4 k/ ~( {. J, ^+ v 3.3 快速注释和快速取消注释% r: ?+ o# B/ ~ 在调试代码的时候,你可能会想注释某一片的代码,来看看执行的情况,MDK 提供了这样的快速注释/消注释块代码的功能。也# r* E+ @: o" q7 f+ _ 是通过右键实现的。这个操作比较简单,就是先选中你要注释的代码区,然后右键,选择Advanced→Comment Selection 就可以了。 " g7 _0 D( y% X/ H: @$ W 这样就快速的注释掉了一片代码,而在某些时候,我们又希望这段注释的代码能快速的取消注释,MDK 也提供了这个功能。与注释类似,先选中被注释掉的地方,然后通过右键→Advanced,不过这里选择的是 Uncomment Selection。( \$ H9 ~2 t1 ?5 C% t3 N 04. 其它小技巧5 Y! {% s; P$ D 4.1 快速打开头文件 在将光标放到要打开的引用头文件上,然后右键选择 Open Document“XXX”,就可以快速打开这个文件了(XXX 是你要打开的头文件名字)。 ! ^. Z- X, l7 f9 @- t. } 4.2 查找替换3 M2 L3 ?" Q# \# r" N) C4 | 这个和 WORD 等很多文档操作的替换功能是差不多的,在 MDK 里面查找替换的快捷键是“CTRL+H”。 + Z' t7 r# ~5 E2 t" U0 Z 4.3 跨文件查找功能9 p3 ^% K7 x n& L) D' I( R8 @; y 先双击你要找的函数/变量名(这里我们还是以系统时钟初始化函数:Stm32_Clock_Init 为例),然后再点击 IDE 上面的 Find in Files。; `+ e* j' q- `4 j0 q. ^" T ![]() 点击 Find All,MDK 就会帮你找出所有含有GPIO_Init字段的文件并列出其所在位置 . P6 a$ a. V! ]8 M' a2 P9 V ![]() 该方法可以很方便的查找各种函数/变量,而且可以限定搜索范围(比如只查找.c 文件和.h文件等),是非常实用的一个技巧。- O# d! ~ p4 ?4 V* g : [% o3 t8 B, F( _" P5 t3 y" }1 w |
【2025·STM32峰会】GUI解决方案实训分享2-编译运行TouchGFX咖啡机例程(含桌面仿真)
实战经验 | Keil工程使用NEAI库的异常问题
STM32 ISP IQTune:真正零门槛的免费ISP调整软件
【经验分享】STM32 新建基于STM32F40x 固件库的MDK5 工程
意法半导体MCU双供应链策略,打消中国客户后顾之忧
【经验分享】基于STM32使用HAL库实现USB组合设备CDC+MSC
2024意法半导体工业峰会:赋能智能电源和智能工业,构筑可持续未来
ST推出灵活、面向未来的智能电表通信解决方案,助力能源转型
意法半导体 x Qu-Bit Electronix:推动新一轮的数字声音合成革命
从STM32 MPU产品看嵌入式系统中微处理器的新变化