主要内容

外部模式下的代码验证与验证

本示例向您展示了如何使用Simulink®Coder™支持包NXP™万博1manbetxFRDM-KL万博1manbetx25Z使用外部模式进行代码验证和验证。

简介

在本例中,您将学习如何配置一个Simulink模型以在外部模式下运行模拟。万博1manbetx

万博1manbetxSimulink的外部模式特性允许您在模型在目标硬件上运行时更改某些参数值,从而加速参数调优过程,而无需停止模型。当您从Simulink内部更改参数值时,修改后的参数值将立即通信到目标硬件。万博1manbetx参数调优活动的效果可以通过在Simulink中查看范围或显示器上的算法信号来监测。万博1manbetx

先决条件

我们建议填写使用NXP FRDM-KL25Z板的Sim万博1manbetxulink编码器支持包万博1manbetx

所需的硬件

要运行这个例子,你需要以下硬件:

在Mac:

  • NXP FRDM-KL25Z板

  • USB类型A到Mini-B电缆

  • USB TTL-232电缆- TTL-232R 3.3V

在Windows®:

  • NXP FRDM-KL25Z板

  • USB类型A到Mini-B电缆

  • USB TTL-232电缆- TTL-232R 3.3V(仅当您使用UART1或UART2串行通信接口时需要)

注意:

  • 测试此示例使用FTDI朋友USB TTL-232R 3.3V适配器。

操作系统的特定限制

在Mac:

外部模式模拟仅通过UART1或UART2支持。万博1manbetx

在Windows上:

通过所有UART通信接口支持外部模式模拟。万博1manbetx

open_system (“freedomboard_external_mode”);

任务—外部模式

在此任务中,您将以外部模式运行模型。在创建原型并开发算法时,当算法在硬件上运行时,监视和调优算法是很有用的。Simulink中的外部模式特性支持这一功能。万博1manbetx

NXP 万博1manbetxFRDM-万博1manbetxKL25Z板的Simulink Coder支持包支持三种不同的串行通信接口,用于外部模式:UART0, UART1和UART2。请注意,在Mac平台上,UART0上的外部模式只支持Mac版本的“El Capitan”。万博1manbetx

UART0串口通信接口可通过标有openSDA在NXP FRDM-KL25Z板上或UART0的板载GPIO引脚上。通过mini USB端口使用UART0不需要任何额外的电缆或硬件,除了用于连接NXP FRDM-KL25Z板到主机的USB类型a到mini - b电缆。要通过NXP FRDM-KL25Z板上的GPIO引脚使用UART0,需要额外的硬件,如下面所述,用于UART1和UART2串行通信接口。

UART1和UART2串行通信接口只能通过NXP FRDM-KL25Z板上的引脚访问。使用这些接口需要额外的硬件,例如,一个USB TTL-232R适配器,以执行外部模式模拟。

1.打开外部模式模型.该模型已配置为NXP FRDM-KL25Z目标。要了解如何设置此目标的模型,请参阅使用NXP FRDM-KL25Z板的Sim万博1manbetxulink编码器支持包万博1manbetx的例子。

2.按以下步骤选择串行通信接口:

  • 在NXP FRDM-KL25Z板上打开配置为代码生成的模型。选择UART0或UART1或UART2 in配置参数>硬件实现>目标硬件资源>外部模式>选择硬件UART选择串口通信接口。

  • 作为示例,请参见外部模式模型如下所示。

3.为所选串行通信接口选择Tx和Rx GPIO引脚:

  • 选择串口通信接口后,选择所选UART in的引脚配置参数>硬件实现>目标硬件资源> 'Selected Target UART in上文步骤2 '

  • 作为UART1的示例,请参阅中的设置外部模式模型如下所示。

4.连接到硬件。根据所选择的串行接口,执行以下步骤:

UART0:

  • 从您的计算机连接USB电缆到NXP FRDM-KL25Z板的OpenSDA mini-B USB连接器。

  • 如果为UART0选择的TX引脚是其中之一PTE20PTD7,将USB TTL-232R适配器的RX引脚连接到NXP FRDM-KL25Z板上所选的TX引脚上。然而,如果为UART0选择的TX引脚是PTA2 (USBTX),从您的计算机的USB电缆,NXP FRDM-KL25Z板的OpenSDA mini-B USB连接器就足够了。

  • 如果为UART0选择的RX引脚是其中之一PTE21PTD6,将USB TTL-232R适配器的TX引脚连接到NXP FRDM-KL25Z板上所选的RX引脚上。然而,如果为UART0选择的RX引脚是PTA1 (USBRX),那么从您的计算机的USB电缆,即NXP FRDM-KL25Z板的OpenSDA mini-B USB连接器就足够了。

UART1:

  • 从您的计算机连接USB电缆到NXP FRDM-KL25Z板的OpenSDA mini-B USB连接器。

  • 连接USB TTL-232R适配器的接地脚到其中一个接地NXP FRDM-KL25Z板上的引脚

  • 将USB TTL-232R适配器的RX引脚连接到NXP FRDM-KL25Z板上的UART1配置参数中选择的TX引脚上

  • 将USB TTL-232R适配器的TX引脚连接到NXP FRDM-KL25Z板上的UART1配置参数中选择的RX引脚上

  • 将USB TTL-232R适配器的USB端连接到您的主机

UART2:

  • 从您的计算机连接USB电缆到NXP FRDM-KL25Z板的OpenSDA mini-B USB连接器。

  • 连接USB TTL-232R适配器的接地脚到其中一个接地NXP FRDM-KL25Z板上的引脚

  • 将USB TTL-232R适配器的RX引脚连接到NXP FRDM-KL25Z板上UART2配置参数中选择的TX引脚上

  • 将USB TTL-232R适配器的TX引脚连接到NXP FRDM-KL25Z板上的UART2配置参数中选择的RX引脚上

  • 将USB TTL-232R适配器的USB端连接到您的主机

5.完成上述步骤后,您的主机上应该有一个新的串行COM端口可供使用。要找到与适配器电缆相关联的COM端口,请遵循以下步骤:

在Windows上:

  • 打开设备管理器

  • 展开Ports选项卡

  • 如果您选择了UART1UART2对于串行外部模式通信接口,请记下与USB TTL-232R适配器相关联的COM端口。

  • 如果您选择了UART0对于串行外部模式通信接口,分别选择PTA2(USBTX)和PTA1(USBRX)作为TX和RX引脚,记下OpenSDA与NXP FRDM-KL25Z板相关联的COM接口,操作步骤请参见本节安装NXP FRDM-KL25Z单板驱动程序

  • 如果你选择了UART0对于串行外部模式通信接口,且选择的TX和RX引脚分别不是PTA2(USBTX)和PTA1(USBRX),请记下与USB TTL-232R适配器相关联的COM端口。

在Mac:

  • 运行ls /dev/cu.*命令。

  • 记下与USB TTL-232R适配器相关联的串口名称。

6.在NXP FRDM-KL25Z板上打开配置为代码生成的模型。在配置参数>硬件实现>目标硬件资源>外部模式>串口*,输入“*串口”字段的COM端口号在上一步中注意到。

例如,在Windows上输入COM27串行端口在Mac上输入/dev/cu.usbmodem1442

7.设置波特率:单击选中的UART分组后输入波特率,如下图所示。

8.单击Apply并关闭配置参数窗口。

9.选择外部从模型工具栏中的模拟模式下拉列表。

10.单击Run按钮启动外部模式。

等待模型完成构建并下载到目标上。完成此操作后,将开始外部模式模拟。双击手动开关块,以更改输入源。双击获得块改变信号增益。最后,双击范围块查看外部模式仿真结果。注意,整个模型都在目标上运行。

11.外部模式模拟:

停止外部模式模拟将终止在NXP FRDM-KL25Z上运行的代码。在启动另一个外部模式模拟之前,需要再次运行生成的代码。只需按下NXP FRDM-KL25Z上的复位按钮,就可以重新运行生成的代码。

在设置模型以外部模式运行时要记住的事情

  • 确保在“外部模式”窗格中输入的COM端口号正确。

  • 在模型资源管理器中,转到代码->外部模式控制面板,并单击“信号和触发”按钮。“触发选项”部分的“持续时间”参数的默认值是1000。您需要将该值更改为5,因为目标上的内存不足以存储1000个数据值。有关Duration参数的更多信息,请参考外部信号上传和触发

  • 对于UART0,外部模式通信推荐的波特率为9600、19200或57600。