第13章 KeilµVision3的调试和仿真
在KeilµVision3集成开发环境中,具有完备的程序调试器。通过KeilµVision3的程序调试器,可以使程序进行单步调试、断点调试、性能分析和优化,以及代码覆盖分析等。同时,8051单片机内部集成了多种片上资源,包括并行I/O端口、定时器/计数器、串行接口和中断系统等。这些丰富的片上资源构成了单片机强大的功能。开发单片机程序需要对单片机的各种片上资源进行操作。如果能够在程序设计的同时,配有仿真代码的执行以及各种片上资源的响应,则可以大大加速开发的进度以及提高程序的准确性。
本章主要介绍KeilµVision3的程序调试器的各种调试功能,包括性能分析器、代码覆盖分析器和断点等。同时本章还详细介绍KeilµVision3中单片机硬件资源的仿真。
13.1 KeilµVision3的程序调试
KeilµVision3集成开发环境具有完备的程序调试功能。通过KeilµVision3的调试工具可以在不使用外部硬件的情况下,对程序进行完备的分析,及时发现并解决问题。
13.1.1 KeilµVision3的程序调试模式
当在KeilµVision3集成开发环境中完成源代码的编写后,选择“Debug”→“Start/Stop Debug Session”命令,便可以进入程序仿真调试环境。KeilµVision3的仿真调试环境如图13.1所示,其中各个窗口均可以通过菜单栏或者工具栏来打开或关闭。
KeilµVision3的程序调试器具有最基本的调试功能,并具备一些高级调试工具才具有的代码覆盖分析和性能分析等功能。KeilµVision3程序调试器的主要功能如下。
❑完整的符号信息。
❑源代码级别的调试。
❑断点调试功能,且支持带有条件的复杂断点。
❑扩充的C调试功能。
❑包含源代码性能分析器。
❑源代码覆盖分析器。
❑两个Watchpoint窗口。
❑支持完善的调试命令。
❑内嵌多种调试函数。
❑和外部硬件无缝接口,可选择合适的仿真器以实现程序的在线调试。
在KeilµVision3集成开发环境中,“Debug”菜单提供了项目调试和仿真中使用的各种命令,如表13.1所示。
图 13.1 KeilµVision3的仿真调试环境
其中部分调试命令可以通过工具栏来实现。下面将介绍一些常用的调试功能以及调试命令。