购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.5 Proteus与µVision 3的联合调试

对于较为复杂的程序,如果运行没有达到预期效果,这时可能需要对Proteus和µ Vision 3进行联合调试,联合调试之前需要先安装vudgi.exe,然后在Proteus与µ Vision3中进行相应设置,vudgi.exe文件可到Proteus的官方网站下载,也可在本书案例压缩包文件中找到。

联合调试时,可先打开Proteus案例(不要运行案例),然后选中“调试”菜单中的“使用远程调试设备”选项,这使得Keil C能与Proteus进行通信。

完成上述设置后,再到Keil C中打开程序项目,单击菜单“Project/Options for Target”菜单项,或单击工具栏上的“Options for Target”按钮,打开图2-4所示的项目选项对话框。在Debug选项卡中选中右边的“Use”及其中的选项“Proteus VSM Simulator”,如果Proteus与Keil C安装在同一台计算机中,右边“Setting”中的Host与Port可保持默认值127.0.0.1与8000不变,在跨计算机调试时则需要进行相应修改。

图2-4 项目选项对话框

完成上述设置后,在Keil C中全速运行程序时,Proteus中的单片机系统也会自动运行,如果希望观察运行过程中某些变量值或者设备状态,需要在Keil C中恰当使用Step in/Stepover/Step out/Run to cursor line及Breakpoint进行跟踪,要注意的是并非在任何时候都可以使用它们。例如,键盘矩阵扫描时就不能用单步跟踪,因为程序运行到某一步骤时,如果敲击按键后再到Keil C中继续单步跟踪,这时按键早已释放了。又如,程序中某些函数模拟了访问某个芯片的时序,如果在内部单步跟踪,这样也会失去对芯片时序的仿真模拟,跟踪也是达不到效果的。

因此,在联合调试过程中,需要恰当的配合单步、跳出、运行到光标所在行、设置断点等方法进行跟踪。 6jG0P3c1oUWFNP09GInPJ/iuGAQew2kxSXAkPdT4zj4W6I8Ac/bz4R69raQ4C3dv

点击中间区域
呼出菜单
上一章
目录
下一章
×