setSignal - Configure block signal data for code and calibration file (a2l)
generation - MATLAB ([original](https://in.mathworks.com/help/ecoder/ref/setsignal.html)) ([raw](?raw))
Configure block signal data for code and calibration file (a2l) generation
Since R2020b
Syntax
Description
setSignal([myCodeMappingObj](#mw%5Fd4cd4554-0274-4414-87ec-92883953125e),[portHandle](#mw%5F28ab74d1-a3e9-417c-a142-3f6e6f8c5ea8),[Name,Value](#namevaluepairarguments))
configures signals specified by block output ports for code and calibration file (a2l) generation. Use this function to map specified block output ports to the storage class and storage class property settings that the code generator uses to produce C code. Or, set the calibration access for the corresponding signal data.
This function does not apply to signals that originate from root-levelInport blocks. For signals that originate from root-levelInport blocks, see setInport.
Examples
In the model code mappings for modelConfigurationRapidPrototypingInterface
, set the storage class for output signals of lookup table blocks Table1
andTable2D
to ExportedGlobal
. After creating the object cm
by calling functioncoder.mapping.api.get
, get handles to the output ports for lookup table blocks. Set the storage class for the output signals by callingsetSignal
.
openExample("ConfigurationRapidPrototypingInterface"); cm = coder.mapping.api.get("ConfigurationRapidPrototypingInterface"); lut1_ports = get_param("ConfigurationRapidPrototypingInterface/Table1","PortHandles"); lut2_ports = get_param("ConfigurationRapidPrototypingInterface/Table2","PortHandles"); lut1_outPort = lut1_ports.Outport; lut2_outPort = lut2_ports.Outport; addSignal(cm,[lut1_outPort,lut2_outPort]); setSignal(cm,[lut1_outPort,lut2_outPort],StorageClass="ExportedGlobal");
In the model code mappings for modelConfigurationRapidPrototypingInterface
, set the storage class for block output signals to Model default
. After creating the objectcm
by calling function coder.mapping.api.get
, get the port handles of the signal data in the code mappings. Set the storage class for the signals by calling setSignal
.
openExample("ConfigurationRapidPrototypingInterface"); cm = coder.mapping.api.get("ConfigurationRapidPrototypingInterface"); portHandles = find(cm,"Signals") setSignal(cm,portHandles,StorageClass="Model default");
In the model code mappings for modelConfigurationRapidPrototypingInterface
, set the code identifiers for output signals of lookup table blocks Table1
andTable2
to dout_Table1
anddout_Table2
. After creating the object cm
by calling function coder.mapping.api.get
, get handles to the output ports for lookup table blocks. Set the code identifiers for the output signals by callingsetSignal
.
openExample("ConfigurationRapidPrototypingInterface"); cm = coder.mapping.api.get("ConfigurationRapidPrototypingInterface"); lut1_ports = get_param("ConfigurationRapidPrototypingInterface/Table1","PortHandles"); lut2_ports = get_param("ConfigurationRapidPrototypingInterface/Table2","PortHandles"); lut1_outPort = lut1_ports.Outport; lut2_outPort = lut2_ports.Outport; addSignal(cm,[lut1_outPort,lut2_outPort]); setSignal(cm,lut1_outPort,Identifier="dout_Table1D"); setSignal(cm,lut2_outPort,Identifier="dout_Table2D");
In the model code mappings for modelConfigurationRapidPrototypingInterface
, configure the calibration properties for signal Signal_1
.
openExample("ConfigurationRapidPrototypingInterface"); cm = coder.mapping.api.get("ConfigurationRapidPrototypingInterface"); lut1_ports = get_param("ConfigurationRapidPrototypingInterface/Table1","PortHandles"); lut1_outPort = lut1_ports.Outport; addSignal(cm,lut1_outPort); Signal_1 = find(cm,"Signal"); setSignal(cm,Signal_1,Export=true); setSignal(cm,Signal_1,CalibrationAccess="NoCalibration"); setSignal(cm,Signal_1,CompuMethod="CM_Signal_1"); setSignal(cm,Signal_1,DisplayIdentifier="Signal_display_name"); setSignal(cm,Signal_1,Format="%4.2");
Input Arguments
Code mapping object (model code mappings) returned by a call to functioncoder.mapping.api.get
.
Example: myCM
Signal to add to the code mappings, specified as a handle of an output port of the signal's source block. To specify multiple port handles, use an array.
Example: portHandle
Data Types: port_handle
| array
Name-Value Arguments
Example: StorageClass="ExportedGlobal"
Specify comma-separated pairs of Name,Value
arguments.Name
is the argument name and Value
is the corresponding value. Name
must appear inside quotes. You can specify several name and value pair arguments as Name1,Value1,…,NameN,ValueN
. The order of the name and value pair arguments does not matter.
Storage class to set for the specified signals. The name of a predefined storage class or storage class that is defined in the Embedded Coder Dictionary associated with the model. See Configure Signal Data for C Code Generation.
Name for the variable that represents the signal data in the generated code.
Data Types: char
| string
File name for a C source file that contains definitions for global data read by data elements and external code. Applies to storage classesExportToFile
and Volatile
.
Data Types: char
| string
Name of a get
function that a data element calls in the generated code. Applies to storage class GetSet
.
Data Types: char
| string
File name for a C header file that contains declarations for global data read by data elements and external code. Applies to storage classesExportToFile
, GetSet
,ImportFromFile
, and Volatile
.
Data Types: char
| string
Name of the model that owns global data used by other models in the same model hierarchy. The code generated for the model that owns the data includes the global data definition. Applies to storage classes ExportToFile
andVolatile
.
Data Types: char
| string
When model configuration parameter Array layout is set toRow-major
, a flag that indicates whether to preserve dimensions of a data element represented in generated code as a multidimensional array. Applies to storage classes ExportToFile
,GetSet
, ImportFromFile
,Localizable
, and Volatile
.
Data Types: logical
Name of a set
function that a data element calls in the generated code. Applies to storage class GetSet
.
Data Types: char
| string
Name that the code generator uses to identify the structure for a data element in the generated code. Applies to storage classes Bitfield
andStruct
.
Storage class property defined in the Embedded Coder Dictionary. Values that you can specify vary depending on the storage class definition.
Data Types: char
| string
Enable this property to generate the signal to calibration file (a2l).
Mask value in hexadecimal format to extract single bits from the signal during calibration. This property is applicable only for integers.
Data Types: hexadecimal
Select Calibration
for the signal to enable the calibration. Select NoCalibration
to view the value of the signal and disable the calibration.
Name of the method for converting the ECU-internal value to a physical value for easy readability.
Data Types: char
| string
Optional display name of the signal for the measurement purpose in the calibration tool, which is different than the signal name in the Simulink model.
Data Types: char
| string
Special display format to be specified for measurement in the calibration tool. This format specification overrules the display format specified inCompuMethod
of the signal.
String or character vector containing the name of a measurement service interface defined in the Embedded Coder Dictionary. By configuring the measurement service interface for signals, states, and data stores, you can preserve the data in the generated code for measurement. To use the dictionary default, specify"Dictionary default"
. If data from the state does not need to be preserved in the code, specify "Not measured"
.
To configure the measurement service interface, you must attach an Embedded Coder Dictionary that defines a service interface configuration to the model. For more information, see Configure Measurement Service Interfaces for Signals, States, and Data Stores.
Data Types: char
| string
Version History
Introduced in R2020b