您可以逐步浏览应用程序并浏览代码。这有助于在运行时检查代码的状态。您可以检查调用过程、跟踪变量值或查找错误。
“调试” 菜单中提供了用于此目的的步进命令。在联机模式下设置断点,然后在断点处停止执行:应用程序处于“HALT ON BP” 状态(调试模式)时,这些命令就可用了。在调试模式下,当前断点位置会以黄色高亮显示,并在文本编辑器中用 符号标记。
切换到调试模式
-
将应用程序下载到控制器。
CODESYS 和 POU 编辑处于联机模式。
-
在 POU 中,在要检查的代码位置设置断点。
“Breakpoints” 视图中列出了所有断点。
-
启动应用程序。
应用程序启动并处理代码,直至第一个断点。
现在应用程序处于调试模式。在设备树中,应用程序标有“[halt on breakpoint]” 。状态栏提供有关运行状态的信息:
编辑器在当前断点位置打开。程序停止执行时,带有活动断点的代码行以黄色高亮显示,并用
符号标出。黄色标注的语句尚未执行。
现在,您可以选择各种步进命令或显示呼叫树。
或者,也可以先启动应用程序,然后设置断点。
调试 "菜单中步进命令的行为
-
命令
“跨步”
执行断点位置的语句。程序执行在 POU 中的下一条语句之前停止。
如果语句中包含调用(来自程序、功能块实例、函数、方法或操作),则下级 POU 将在一个步骤中完成处理。
-
命令
“步入”
执行断点位置的语句。程序执行在下一条语句之前停止。
如果语句包含调用(来自程序、功能块实例、函数、方法或操作),则程序执行会跳转到该下级 POU。第一条语句被执行后,程序会在下一条语句之前停止执行。然后,新的当前断点位置就会出现在被调用的 POU 中。
-
命令
“走出”
该命令执行从当前断点位置到 POU 结束的 POU,然后跳回调用 POU。程序执行停止在调用位置(调用行中)。
如果当前断点位置在主程序中,则 POU 将运行到底。然后,程序执行跳回起点(POU 中第一行代码处的程序起点)并停止。
-
命令
“运行到光标”
首先将光标设置在任意一行代码上,然后执行命令。程序从当前断点位置开始执行,并在当前光标位置停止,不执行该行代码。
-
命令
“设置下一条语句”
首先将光标设置在任意一行代码上(也在当前断点位置之前),然后执行命令。下一步将执行标有游标的语句。中间的所有语句都会被忽略和跳过。
-
命令
“显示下一条语句”
如果看不到当前断点位置,请执行命令。然后,当前断点位置的窗口就会成为焦点,断点位置也就可见了。
单击“查看 Call Stack” ,以完整显示程序处理中当前到达的断点位置的前一个调用树。
“Call Stack” 视图可随时显示程序块在调用结构中的位置,甚至在编译应用程序之前也是如此。