Data Type Conversion
Convertire il segnale di input nel tipo di dato specificato
Librerie:
Simulink /
Commonly Used Blocks
Simulink /
Signal Attributes
HDL Coder /
Commonly Used Blocks
HDL Coder /
HDL Floating Point Operations
HDL Coder /
Signal Attributes
Descrizione
Il blocco Data Type Conversion converte un segnale di input di qualsiasi tipo di dato di Simulink® nel tipo di dato specificato.
Nota
Per controllare il tipo di dato di output specificando i parametri del blocco o per ereditare un tipo di dato da un blocco a valle, utilizzare il blocco Data Type Conversion. Per ereditare un tipo di dato da un segnale diverso nel modello, utilizzare il blocco Data Type Conversion Inherited.
Conversione di segnali in virgola fissa
Quando si effettua la conversione tra tipi di dato in virgola fissa, il parametro Input and output to have equal controlla il comportamento del blocco. Questo parametro non modifica il comportamento del blocco quando:
L'input e l'output non hanno un tipo di dato in virgola fissa.
L'input o l'output ha un tipo di dato in virgola fissa con ridimensionamento semplice.
Per ulteriori informazioni sui numeri in virgola fissa, vedere Fixed-Point Numbers in Simulink (Fixed-Point Designer).
Per convertire un segnale da un tipo di dato a un altro cercando di preservare il valore reale del segnale di input, selezionare Real World Value (RWV), l'impostazione predefinita. Il blocco considera i limiti imposti dal ridimensionamento dell'input e dell'output e cerca di generare un output con valore reale equivalente.
Per modificare il valore reale del segnale di input eseguendo una reinterpretazione del ridimensionamento del valore intero memorizzato, selezionare Stored Integer (SI). Entro i limiti dei tipi di dato specificati, il blocco cerca di preservare il valore intero memorizzato del segnale durante la conversione. Una best practice consiste nello specificare i tipi di dato di input e di output utilizzando la stessa lunghezza di parola e lo stesso segno. In questo modo si garantisce che il blocco modifichi solo il ridimensionamento del segnale. Specificare un segno o una lunghezza di parola diversi per l'input e per l'output potrebbe produrre risultati imprevisti, come la perdita di intervallo o estensioni di segno impreviste. Per un esempio, vedere Conversione dei tipi di dato nei modelli di Simulink.
Se si seleziona Stored Integer (SI), il blocco non esegue una reinterpretazione dei bit di livello inferiore di un segnale di input in virgola mobile. Ad esempio, se l'input è single e ha valore 5, i bit che memorizzano l'input nella memoria sono indicati in esadecimale dal seguente comando.
num2hex(single(5))
40a00000
Tuttavia, il blocco Data Type Conversion non tratta il valore intero memorizzato come 40a00000, ma piuttosto come il valore reale 5. Dopo la conversione, il valore intero da memorizzare dell'output è 5.
Conversione di segnali enumerati
Utilizzare un blocco Data Type Conversion per convertire i segnali enumerati come segue:
Per convertire un segnale di tipo enumerato in un segnale di qualsiasi tipo numerico.
I numeri interi sottostanti di tutti i valori enumerati in input al blocco Data Type Conversion devono rientrare nell'intervallo del tipo numerico. In caso contrario, si verifica un errore durante la simulazione.
Per convertire un segnale di qualsiasi tipo di numero intero in un segnale di tipo enumerato.
Il valore in input al blocco Data Type Conversion deve corrispondere al valore sottostante di un valore enumerato. In caso contrario, si verifica un errore durante la simulazione.
È possibile abilitare il parametro Saturate on integer overflow in modo che Simulink utilizzi il valore predefinito del tipo enumerato quando il valore in input al blocco non corrisponde al valore sottostante di un valore enumerato. Vedere Type Casting for Enumerations (Simulink Coder).
Nei casi seguenti, non è possibile utilizzare un blocco Data Type Conversion:
Per convertire un segnale numerico non intero in un segnale enumerato.
Per convertire un segnale complesso in un segnale enumerato, indipendentemente dai tipi di dato delle parti reali e immaginarie del segnale complesso.
Per informazioni sull'utilizzo dei tipi enumerati, vedere Simulink Enumerations.
Esempi
Porte
Input
Output
Parametri
Caratteristiche del blocco
Tipi di dati: |
|
Passaggio diretto |
|
Segnali multidimensionali |
|
Segnali di dimensioni variabili |
|
Rilevamento zero-crossing |
|
Ulteriori informazioni
Funzionalità estese
Cronologia versioni
Introduzione prima di R2006a

