Main Content

target.Emulator Class

Namespace: target

Provide target emulator details

Since R2023b

Description

Use a target.Emulator object to provide MATLAB® with data about your target emulator, for example, emulator launch method, and emulated hardware information.

To create a target.Emulator object, use the target.create function.

Properties

expand all

Name of the target.Emulator object, which target.get uses as an identifier in data retrieval.

Attributes:

GetAccess
public
SetAccess
public

target.Board object that provides hardware board details.

Attributes:

GetAccess
public
SetAccess
public

Object that provides descriptions of supported tools for starting emulator application on your development computer.

Attributes:

GetAccess
public
SetAccess
public

Examples

collapse all

This example shows how to use a target.Emulator object to set up target connectivity.

Create a board object to use with the emulator.

emulatorBoard = target.create("Board", ...
  Name="ARM Cortex-A Emulator-Based Test Board");

Create a target.Emulator object and associate it with the emulated target board.

emulatorTarget = target.create("Emulator", ...
            Name="Example Emulator Target");
emulatorTarget.Target = emulatorBoard;

Create a target.HostProcessExecutionTool object.

hostProcLaunchTool = target.create("HostProcessExecutionTool");
hostProcLaunchTool.Name = "Emulator Host Process Execution Tool";

Create a target.Command object. Set the String property of the object to the command for starting the emulator.

emulatorCommand = target.create("Command", ...
                String="pathToEmulatorApplication");

Specify the arguments of the command object as the configuration options for opening the emulator from command line.

emulatorCommand.Arguments = [ "-flag1","value1", ...
                              "-flag2","value2", ...
                              "-flagN","valueN"];

Specify the start command of the target.HostProcessExecutionTool object as the emulator command, and specify the launch tool of the emulator object as the host process execution tool.

hostProcLaunchTool.StartCommand = emulatorCommand;
emulatorTarget.LaunchTool = hostProcLaunchTool;

Create a target.TargetConnection object to specify a connection between the host machine and the emulated target.

emulatorConnection = target.create( "TargetConnection", ...
                                Name = "Emulator Connection", ...
                                Target = emulatorBoard, ...
                                CommunicationType = "TCPChannel", ...
                                IPAddress = "localhost", ...
                                Port = "17725");

Make board, connection, and emulator objects persist across MATLAB sessions.

addedObjs = target.add([emulatorBoard , emulatorConnection , emulatorTarget],UserInstall=true);
"target.add" summary:

    Objects added to internal database, which will persist across MATLAB sessions:
        target.Board                       "ARM Cortex-A Emulator-Based Test Board"
        target.Emulator                    "Example Emulator Target"
        target.HostProcessExecutionTool    "Emulator Host Process Execution Tool"
        target.TCPChannel                  "Emulator Connection TCPChannel"
        target.TargetConnection            "Emulator Connection"
    Objects not added because they already exist:
        target.Board                       "ARM Cortex-A Emulator-Based Test Board"

emulatorBoard is the target.Board object that describes the emulated target board. emulatorConnection is the target.TargetConnection object that specifies the connection between Simulink and your target hardware, emulatorTarget.

To select the emulator for the model, set the HardwareBoard configuration parameter to the board name. For example:

set_param(model,HardwareBoard=board.Name);

You can now run PIL or external mode simulations on the emulator. For more information, see:

To remove the added target objects, enter:

target.remove(addedObjs);
"target.remove" summary:

    Objects removed from internal database:
        target.Board                       "ARM Cortex-A Emulator-Based Test Board"
        target.Emulator                    "Example Emulator Target"
        target.HostProcessExecutionTool    "Emulator Host Process Execution Tool"
        target.TCPChannel                  "Emulator Connection TCPChannel"
        target.TargetConnection            "Emulator Connection"

Version History

Introduced in R2023b