调试仿真生成的代码在硅或公益诉讼
如果software-in-the-loop (SIL)或processor-in-the-loop(公益诉讼)仿真失败或你发现你原来函数的输出之间的差异和生成的代码,您可以重新运行模拟启用了调试器。通过插入断点,你可以观察到的行为的代码部分,它可以帮助你理解这个问题的原因。
银或公益诉讼仿真失败,您还可以查看信息从标准输出和标准错误流诊断查看器中。例如:
输出
printf
代码中的语句。错误消息发送到
stderr
。一些低级的系统消息。
SIL仿真时,目标应用程序重定向stdout
和stderr
流。应用程序终止时,诊断查看器显示的信息重定向流。目标应用程序还提供了一个基本的信号处理程序,它捕获POSIX®信号我试
,SIGILL
,SIGABRT
,SIGSEV
。信号处理程序,目标应用程序包含文件signal.h
。
SIL调试
这张桌子给调试器支持的信息。金宝app
操作系统 | 金宝app调试器支持 |
---|---|
窗户® |
微软®Visual Studio®IDE。 |
Visual Studio代码与MinGW®GDB。需要安装的MATLAB®编码器™界面Visual Studio代码调试支持包。金宝app看到//www.tatmou.com/matlabcentral/fileexchange/103555。 |
|
macOS |
LLDB。 |
Visual Studio代码LLDB。需要安装的MATLAB编码器界面Visual Studio代码调试支持包。金宝app看到//www.tatmou.com/matlabcentral/fileexchange/103555。 |
|
Linux® |
GNU®数据显示调试器(DDD)。 |
Visual Studio代码GDB。需要安装的MATLAB编码器界面Visual Studio代码调试支持包。金宝app看到//www.tatmou.com/matlabcentral/fileexchange/103555。 |
请注意
您可以执行SIL调试只有在仿真软件金宝app®产品族支持你金宝app微软Visual c++®,Xcode或GNU GCC编译器。有关更多信息,请参见金宝app支持编译器。
使你的调试器SIL仿真、执行这些操作之一:
在银/公益诉讼选项卡,设置画廊,下银/公益诉讼设置,点击调试。
在配置参数对话框中,选择使源代码级调试银或公益诉讼复选框。
如果你的模型模型块,使源代码级调试银或公益诉讼参数模型顶部覆盖相应的参数为参考模型。
当你运行SIL模拟,
或模型
。c
文件打开时,例如,在微软Visual StudioIDE调试断点开始的时候模型
. cpp模型
_initialize
和模型
_step
功能。
您现在可以使用调试器功能观察代码的行为。例如,您可以通过代码和变量检测步骤。
结束调试会话:
删除所有断点。
单击
继续
按钮(F5)。完成和SIL模拟运行微软Visual StudioIDE关闭。
请注意
在微软Visual StudioIDE,如果您选择调试>停止调试SIL模拟时报了以下错误消息:
1秒的超时接收数据从rtiostream界面已经超过了。可能有多个原因失败。……
公益诉讼的调试
当你建立公益诉讼模型和目标之间的连接硬件,指定一个调试器使用金宝apptarget.ExecutionService
和target.DebugExecutionTool
对象——看金宝app支持公益诉讼调试和DebugExecutionTool模板。
为公益诉讼模拟,使您的调试器执行这些操作之一:
在银/公益诉讼选项卡,设置画廊,下银/公益诉讼设置,点击调试。
在配置参数对话框中,选择使源代码级调试银或公益诉讼复选框。
如果你的模型模型块,使源代码级调试银或公益诉讼参数模型顶部覆盖相应的参数为参考模型。