Data Type Conversion
Convertir señales de entrada al tipo de datos especificado
Bibliotecas:
Simulink /
Commonly Used Blocks
Simulink /
Signal Attributes
HDL Coder /
Commonly Used Blocks
HDL Coder /
HDL Floating Point Operations
HDL Coder /
Signal Attributes
Descripción
El bloque Data Type Conversion convierte una señal de entrada de cualquier tipo de datos de Simulink® al tipo de datos que especifique.
Nota
Para controlar el tipo de datos de salida especificando parámetros de bloque o para heredar un tipo de datos de un bloque descendente, utilice el bloque Data Type Conversion. Para heredar un tipo de datos desde una señal diferente del modelo, utilice el bloque Data Type Conversion Inherited.
Convertir señales de punto fijo
Cuando se realiza la conversión entre tipos de datos de punto fijo, el parámetro Input and output to have equal controla el comportamiento del bloque. Este parámetro no cambia el comportamiento del bloque cuando:
La entrada y la salida no tienen un tipo de datos de punto fijo.
La entrada o la salida tienen un tipo de datos de punto fijo con escalado trivial.
Para obtener más información sobre números de punto fijo, consulte Números de punto fijo en Simulink (Fixed-Point Designer).
Para convertir una señal de un tipo de datos a otro intentando preservar el valor real de la señal de entrada, seleccione la configuración predeterminada Real World Value (RWV). El bloque tiene en cuenta los límites impuestos por el escalado de la entrada y la salida e intenta generar una salida con un valor real igual.
Para cambiar el valor real de la señal de entrada realizando una reinterpretación de escalado del valor entero almacenado, seleccione Stored Integer (SI). Dentro de los límites de los tipos de datos especificados, el bloque intenta preservar el valor entero almacenado de la señal durante la conversión. Se recomienda especificar los tipos de datos de entrada y salida usando la misma longitud de palabra y representación de signo. De este modo, se garantiza que el bloque solo cambie el escalado de la señal. Especificar una representación de signo o longitud de palabra diferentes para la entrada y la salida podría producir resultados inesperados, como pérdida de rango o extensiones de signo inesperadas. Para ver un ejemplo, consulte Convertir tipos de datos a modelos de Simulink.
Si selecciona Stored Integer (SI), el bloque no realiza una reinterpretación de bit a bajo nivel de una señal de entrada de punto flotante. Por ejemplo, si la entrada es single y tiene el valor 5, los bits que almacenan la entrada en la memoria se proporcionan en hexadecimal con el siguiente comando.
num2hex(single(5))
40a00000
No obstante, el bloque Data Type Conversion no trata el valor entero almacenado como 40a00000, sino como el valor real, 5. Después de la conversión, el valor entero almacenado de la salida es 5.
Convertir señales enumeradas
Utilice un bloque Data Type Conversion para convertir señales enumeradas de la siguiente manera:
Para convertir una señal de tipo enumerado en una señal de cualquier tipo numérico.
Los enteros subyacentes de todos los valores enumerados que se introducen en el bloque Data Type Conversion deben encontrarse dentro del rango del tipo numérico. De lo contrario, se produce un error durante la simulación.
Para convertir una señal de cualquier tipo entero en una señal de tipo enumerado.
El valor que se introduce en el bloque Data Type Conversion debe coincidir con el valor subyacente de un valor enumerado. De lo contrario, se produce un error durante la simulación.
Puede activar el parámetro Saturate on integer overflow para que Simulink utilice el valor predeterminado del tipo enumerado cuando el valor que se introduce en el bloque no coincida con el valor subyacente de un valor enumerado. Consulte Type Casting for Enumerations (Simulink Coder).
No se puede utilizar un bloque Data Type Conversion en estos casos:
Para convertir una señal numérica no entera en una señal enumerada.
Para convertir una señal compleja en una señal enumerada, independientemente de los tipos de datos de las partes reales e imaginarias de la señal completa.
Consulte Simulink Enumerations para obtener información sobre cómo trabajar con tipos enumerados.
Ejemplos
Puertos
Entrada
Salida
Parámetros
Características del bloque
Tipos de datos |
|
Paso directo |
|
Señales multidimensionales |
|
Señales de tamaño variable |
|
Detección de cruce por cero |
|
Más acerca de
Capacidades ampliadas
Historial de versiones
Introducido antes de R2006a

