主要内容

本页采用了机器翻译。点击此处可查看英文原文。

ASCII Decode V2

将 ASCII 字符向量解析为 Simulink

  • ASCII Decode V2 block

库:
Simulink Real-Time / RS232

描述

ASCII Decode 模块解析由以下任一方式生成的输入向量:

  • 串行端口 Receive 模块

  • 串行端口 FIFO Read 模块

  • ASCII Encode 模块

该模块使转换后的值可供实时应用程序使用。它假定输入向量是使用类似于 printf 的输出格式指定符准备的,并使用类似于 scanf 的输入格式指定符。

此模块为 Speedgoat® 目标计算机生成内联代码。您无法将其用于 Simulink® 仿真。

有关详细信息,请参阅RS-232 串行通信RS-232 Legacy Drivers

示例

端口

输入

全部展开

输入向量可以是 8 位或 16 位,且可以是有符号或无符号的。如果数据格式为 16 位,则该模块会忽略每个条目的高 8 位。

数据类型: int8 | uint8 | int16 | uint16

输出

全部展开

cnt 接收由输入字符向量满足的格式指定符数量。

Format 中的项目相对应的输出端口。

此模块为目标计算机生成内联代码。您无法将其用于 Simulink 仿真。

数据类型: single | double | int8 | uint8 | uint16 | int16 | int32 | uint32

参数

全部展开

输入类似 scanf 的格式字符串。每个格式指定符(如 %d)都必须与输入向量的对应部分匹配。格式中的字符串必须与输入向量中的字符完全匹配。格式指定符遵循 scanf 的常规描述。限定符必须用单引号括起来。未包含这些引号将导致仿真失败。

格式字符串示例如下:

'alpha %d bravo %f\n'

在此示例中,FIFO 读取的数据为 'alpha 5'。在此情况下,cnt 即为 1,且第二次输出结果与上次两者均出现在字符向量中的情况保持不变。如果模型预期值为 2,而 cnt 小于 2,则模型会检测到数据中的错误。

编程用法

模块参数:format

扩展功能

全部展开

C/C++ 代码生成
使用 Simulink® Coder™ 生成 C 代码和 C++ 代码。

版本历史记录

在 R2020b 中推出