首页 理论教育 可执行文件的加载与运行过程简述

可执行文件的加载与运行过程简述

时间:2023-06-20 理论教育 版权反馈
【摘要】:执行编译链接命令“Build”后生成一个默认和工程名一致的可执行文件后,就可以加载与运行可执行文件了,具体操作步骤如下:1)在CCS主界面的菜单栏中选择File→Load Program命令,在弹出的对话框中,找到工程目录下的Debug目录,选择编译链接后生成的可执行文件volume.out并打开,将可执行文件加载到目标DSP中。

可执行文件的加载与运行过程简述

执行编译链接命令“Build”后生成一个默认和工程名一致的可执行文件后,就可以加载与运行可执行文件了,具体操作步骤如下:

1)在CCS主界面的菜单栏中选择File→Load Program命令,在弹出的对话框中,找到工程目录下的Debug目录,选择编译链接后生成的可执行文件volume.out并打开,将可执行文件加载到目标DSP中。CCS将自动打开一个反汇编窗口,显示加载程序的反汇编指令,如图6-33所示。在反汇编窗口中从左到右依次为程序行地址、操作码、汇编指令和操作数,语句前的箭头(绿色)表示程序计数器(PC)当前所在的位置。在反汇编窗口中单击汇编指令,按〈F1〉键将切换至在线帮助窗口,显示光标所在行的关键词的帮助信息。例如,将光标放在_c_int00行下的STM处,按〈F1〉键将显示STM汇编指令的帮助信息。如果选择View→Mixed Source/ASM命令,源程序编辑窗口变为混合模式窗口,C源代码与其汇编结果将同时显示。

需要注意的是,如果用户使用的DSP的型号与CCS配置的DSP型号不符合,或者链接命令文件中配置不正确,使用了无法写入的地址,或者出现内存溢出等问题,此时就不能加载可执行程序,CCS系统就会在屏幕上提示系统设置错误的信息。

2)可执行文件加载成功后,在CCS主界面的菜单栏中选择Debug→Run命令或单击调试工具栏上的Run按钮978-7-111-35536-6-Chapter06-101.jpg,让程序全速执行。由于运行支持库(rts.lib)中包括有C的输出puts()函数,因此可在输出窗口Stdout栏看到“volume example started”信息,表明程序已经运行,如图6-34所示。由于该程序是个无限循环,可在菜单栏选择Debug→Halt命令或单击调试工具栏上的Halt按钮978-7-111-35536-6-Chapter06-102.jpg,中止正在执行的程序。

978-7-111-35536-6-Chapter06-103.jpg

图6-33 反汇编窗口(www.xing528.com)

978-7-111-35536-6-Chapter06-104.jpg

图6-34 在输出窗口显示程序运行结果

此外,也可以利用CCS提供的多种单步运行操作调试每一条指令,并分析其执行的结果,如Step Into、Step Over、Step Out、Source-Single Step、Source-Step Over、Assembly-Single Step、Assembly-Step Over、Run to Cursor、Set PC to Cursor命令等,或利用自由运行Run Free命令、动画执行Animate命令等完成程序的运行。

如果在调试工程中出现一些异常情况,需要中止或运行程序,这就需要复位。CCS提供了3种复位操作。第一种是复位CPU,在菜单栏选择Debug→Reset CPU命令,就可以停止运行程序,并初始化所有寄存器的内容,PC指向FF80h。第二种是重新启动,在菜单栏选择Debug→Restart命令,可停止运行程序,并将PC恢复到当前载入程序的入口地址。第三种是运行到主程序函数main()入口位置,选择Debug→Go Main命令,在当前加载程序的函数main()处设置一个临时断点,然后开始执行程序。当程序中止或遇到一个断点时,临时断点被删除。此命令为C程序员提供了一种快捷运行用户程序的方法。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈