主要内容

Arduino硬件在外部模式下的代码执行分析

这个例子展示了如何使用Simulink®Arduino®硬件支持包来金宝app描述生成的金宝app代码作为可执行文件运行在基于ARM®架构的Arduino硬件板上,在外部模式下使用XCP通信接口。

介绍

在Simulink模型中指定的示例时间决定了在目标硬件上运行金宝app生成代码的时间计划。在硬件上有足够的计算能力,代码可以根据指定的示例时间实时运行。通过实时执行分析,您可以检查生成的代码是否满足实时性能需求。该支持包支金宝app持以下基于ARM架构的Arduino硬件板上的代码执行分析:

  • Arduino MKR Wifi 1010

  • Arduino MKR 1000

  • Arduino MKR零

  • Arduino Nano 33 BLE Sense

  • Arduino Nano 33物联网

  • Arduino机器人控制板

  • Arduino机器人电机板

  • Arduino由于

在Simulink模型代码概要文件执金宝app行的最后,您可以:

  • 查看代码执行时间报告。

  • 访问和分析执行时间分析数据。

依赖关系

这个示例使用:

  • 金宝appSimu金宝applink支持包Arduino硬件

  • 嵌入式编码器®

概要任务执行

这个任务向您展示了如何配置一个Arduino Simulink模型来配置它的代码执行。金宝app

1.打开任何Arduino Simul金宝appink模型。在这个例子中,我们使用arduino_gettingstarted金宝app仿真软件模型。有关的更多信息arduino_gettingstarted金宝app仿真软件模型,看到入门Arduino硬件的例子。

open_system (“arduino_gettingstarted”);

2.在建模选项卡,单击金宝app模型设置

3.在硬件实现选项卡中,选择基于ARM架构的Arudino板硬件板下拉菜单。

4.去先进的参数并选择使用嵌入式编码器功能

5.去代码生成>验证在左边窗格。如果此选项没有出现在左侧窗格中,请单击应用>好吧配置参数对话框,然后关闭它。打开对话框并继续下面提到的步骤。

6.选择测量任务执行时间来分析Simulink模型中每个速率的执行时间。金宝app工作空间变量,executionProfile,在工作空间中保存分析数据。

7.集指标只保存选项

8.点击应用好吧

9.在模拟选项卡,设置金宝app停止时间5秒。

10.在硬件选项卡中的金宝app模式部分中,选择机上运行然后点击监视和优化在ARM Arduino板上以可执行文件的形式构建、部署和运行模型。在开始执行时,会出现一个窗口,显示可执行文件正在ARM Arduino板上运行。代码运行于5几秒钟后就停了。

11.输入此代码以获取刚才运行的会话的分析报告。该报告显示每个任务有不同的预期周转和执行时间。

executionProfile.report

代码执行分析报告详细信息

这份报告提供了以下细节:

1.一个详细的总结

2.关于已分析代码段的信息,包括以下代码段的时间度量:

  • entry_point_fn_initialize例如,函数arduino_gettingstarted_initialize

  • 例如,入口点函数,arduino_gettingstarted_step [0.10]

  • entry_point_fn_terminate例如,函数arduino_gettingstarted_terminate

3.平均和最大Arduino CPU核心利用率。

4.指标的定义。

该报告有以下几节:

1.部分:生成代码的函数名。

2.最大执行时间,以ns为单位:从代码段开始到结束的最长时间。

3.平均执行时间,以ns为单位:代码段开始和结束之间的平均时间。

4.调用:调用代码段的次数。

5.MATLAB图标:图标,单击该图标显示已分析的代码部分。

其他可以尝试的事情

从Arduino硬件的Sim金宝appulink支持包概述其他Simulink模型。金宝app观察在有助于提高效率的Simulink模型中实现步骤所花费的时间。金宝app