
01. 文本美化 文本美化,主要是设置一些关键字、注释、数字等的颜色和字体。前面我们在介绍 MDK5新建工程的时候看到界面,这是 MDK 默认的设置,可以看到其中的关键字和注释等字体的颜色不是很漂亮,而 MDK 提供了我们自定义字体颜色的功能。我们可以在工具条上点击 (配置对话框)或者Edit->Configuration。 ![]() $ l0 u& o5 M4 e* ?% T8 Q 在该对话框中,先设置 Encoding 为:Chinese GB2312(Simplified),然后设置 Tab size 为:4。以更好的支持简体中文(否则,拷贝到其他地方的时候,中文可能是一堆的问号),同时 TAB间隔设置为 4 个单位。然后,选择:Colors&Fonts 选项卡,在该选项卡内,我们就可以设置自己的代码的子体和颜色了。由于我们使用的是C语言,故在Window下面选择:C/C++ Editor Files在右边就可以看到相应的元素了。 & D, C# K/ { T6 Y5 f( c3 ^ ![]() 8 B( C _8 k6 F9 j+ j _0 T 字体大小,则可以直接按住:ctrl+鼠标滚轮,进行放大或者缩小,或者也可以在刚刚的配置界面设置字体大小。3 P! K( k( F5 @ 用户自定义关键字没有高亮显示,解决办法是同样选择:C/C++Editor Files,在右边的 User Keywords 对话框下面输入你自己定义的关键字。' P- q9 h# o. \$ S, z 7 I) d; X! i+ H) U3 F8 X* u0 w ![]() & P) n6 e+ Y: Z4 U# O 02. 语法检测和代码提示 MDK5.30的版本,有代码提示与动态语法检测功能,使得 MDK 的编辑器越来越好用了,这里我们简单说一下如何设置,同样,点击 ,打开配置对话框,选择 Text Completion选项卡。 8 i7 t! p/ M0 \9 d! x1 w) P) _ ![]() ! @- d( T, i- C' [7 h Strut/Class Members,用于开启结构体/类成员提示功能。" E" X+ v2 P/ n4 e W5 d _ Function Parameters,用于开启函数参数提示功能。 Symbols after xx characters,用于开启代码提示功能,即在输入多少个字符以后,提示匹配的内容(比如函数名字、结构体名字、变量名字等),这里默认设置 3 个字符以后,就开始提示。$ N) m9 Z5 o( E" k& [9 I8 S 8 O( @ X+ f+ L Dynamic Syntax Checking,则用于开启动态语法检测,比如编写的代码存在语法错误的时候,会在对应行前面出现X图标,如出现警告,则会出现!图标,将鼠标光标放图标上面,则会提示产生的错误/警告的原因。- q X8 r% G" l+ x) y 6 H! r/ z; Z' N4 @ 03. 代码编辑技巧' O% k8 `+ W. i! g$ p4 r1 K. x 3.1 TAB键的妙用 首先要介绍的就是 TAB 键的使用,这个键在很多编译器里面都是用来空位的,每按一下移空几个位。如果你是经常编写程序的对这个键一定再熟悉不过了。但是 MDK 的 TAB 键和一般编译器的 TAB 键有不同的地方,和 C++的 TAB 键差不多。MDK 的 TAB 键支持块操作。也就是可以让一片代码整体右移固定的几个位,也可以通过 SHIFT+TAB 键整体左移固定的几个位。 选中一块然后按 TAB 键,你可以看到整块代码都跟着右移了一定距离! u- `: z* H+ L1 L ![]() , k. O _& J3 r2 c 3.2 快速定位函数和变量的定义( P5 F4 U$ b; N* J) \% _ z6 g 大家在调试代码或编写代码的时候,一定有想看看某个函数是在那个地方定义的,具体里面的内容是怎么样的,也可能想看看某个变量或数组是在哪个地方定义的等。尤其在调试代码或者看别人代码的时候,如果编译器没有快速定位的功能的时候,你只能慢慢的自己找,代码量比较少还好,如果代码量一大,那就郁闷了,有时候要花很久的时间来找这个函数到底在哪里。型号 MDK 提供了这样的快速定位的功能。只要你把光标放到这个函数/变量(xxx)的上面(xxx 为你想要查看的函数或变量的名字),然后右键,弹出如图所示的菜单栏 :' g4 }- v7 B9 e) i ![]() 7 n6 [6 c' x7 b9 s6 r1 p" c) E# M B 温馨提示 要先在 Options for Target 的 Output选项卡里面勾选 Browse Information 选项,再编译,再定位,否则无法定位!5 F; @/ K# p0 X 很多时候,我们利用 Go to Definition/ Reference 看完函数/变量的定义/申明后,又想返回之前的代码继续看,此时我们可以通过 IDE 的 按钮(Back to previous position)快速的返回之前的位置,这个按钮非常好用!0 Y; k5 M/ @. {* m2 b/ h 3.3 快速注释和快速取消注释 在调试代码的时候,你可能会想注释某一片的代码,来看看执行的情况,MDK 提供了这样的快速注释/消注释块代码的功能。也* p1 o' d0 Q T; H% t* ] 是通过右键实现的。这个操作比较简单,就是先选中你要注释的代码区,然后右键,选择Advanced→Comment Selection 就可以了。1 |- ?! {8 I: C/ H" o# b8 f * D$ F3 y M, C5 \3 x' e 这样就快速的注释掉了一片代码,而在某些时候,我们又希望这段注释的代码能快速的取消注释,MDK 也提供了这个功能。与注释类似,先选中被注释掉的地方,然后通过右键→Advanced,不过这里选择的是 Uncomment Selection。 04. 其它小技巧 4.1 快速打开头文件 在将光标放到要打开的引用头文件上,然后右键选择 Open Document“XXX”,就可以快速打开这个文件了(XXX 是你要打开的头文件名字)。 4.2 查找替换) K- Y6 U- g( j2 _7 }7 ^! Y 这个和 WORD 等很多文档操作的替换功能是差不多的,在 MDK 里面查找替换的快捷键是“CTRL+H”。/ _; f4 P3 g5 j b( N 3 Z2 n2 H3 E9 s1 ?5 i" \+ ` 4.3 跨文件查找功能$ [$ D) ?2 C5 r( L 先双击你要找的函数/变量名(这里我们还是以系统时钟初始化函数:Stm32_Clock_Init 为例),然后再点击 IDE 上面的 Find in Files。& }1 [% v% N! [/ S# y & f% x3 {! Q, \( [. D, K, ? ![]() 点击 Find All,MDK 就会帮你找出所有含有GPIO_Init字段的文件并列出其所在位置 ![]() # i7 ^9 k: l; i1 z0 P 该方法可以很方便的查找各种函数/变量,而且可以限定搜索范围(比如只查找.c 文件和.h文件等),是非常实用的一个技巧。 * |( r; E9 j9 l0 ?% K( ]5 y |
STM32 ISP IQTune:真正零门槛的免费ISP调整软件
【经验分享】STM32 新建基于STM32F40x 固件库的MDK5 工程
意法半导体MCU双供应链策略,打消中国客户后顾之忧
【经验分享】基于STM32使用HAL库实现USB组合设备CDC+MSC
2024意法半导体工业峰会:赋能智能电源和智能工业,构筑可持续未来
ST推出灵活、面向未来的智能电表通信解决方案,助力能源转型
意法半导体 x Qu-Bit Electronix:推动新一轮的数字声音合成革命
从STM32 MPU产品看嵌入式系统中微处理器的新变化
【Hot!】STM32全系列开发板都支持Arduino开发,你知道吗?
【经验分享】STM32 HAL库移植FreeModbus详细步骤