Define and handle Hardware Targets in DATAFLOW Designer
by Marco Wuelser
Target Hardware
The Target Hardware describes the actual physical processor that will be used for the modeled system. Setting up a specific Target Hardware for a system or a System Component customizes the code that will be generated for the exact specified Target Hardware and its drivers.
Each Target Hardware is defined in a DATAFLOW SDK and contains a specific hardware driver description that models the properties and behavior of the processor.
A DATAFLOW Software Development Kit SDK) contains all
- Header files,
- Binaries,
- Source code files,
- Target hardware settings and
- Definitions
For the DATAFLOW Designer, to generate code for a certain Target Hardware.
Using the same SDK enables the build (compiled from the DATAFLOW Designer generated code) and the DATAFLOW Simulator to interact and simulate the behavior of a specific hardware. An SDK can contain one or more target hardware configurations.
Hardware Targets can be defined using the DATAFLOW Simulator, or they can be installed in DATAFLOW Designer (see 4.4.1.1 Application Options) using predefined SDKs provided by IMT AG. When adding a Hardware Target to a specific component, the interface drivers defined for this Target Hardware will be available to assign to its child components from the Interface Toolbox.
Add Hardware Target
To add Target Hardware
- Right-click a component
- Select ‘Target Hardware > Add’ from the context menu.
Add Target Hardware
The selected item can be the System element, System Component or an Active Container. The Target Hardware is added to the selected element and all its child components. Target Hardware can be assigned to the root system element or once per tree branch.
Target Hardware Assignment
In the dialog that appears, a list of all Target Hardware items assigned to any System, System Components or Active Parts is displayed. The Target Hardware for the current item can be selected from the dropdown. The revision number and the list of drivers is presented below.
Once the Target Hardware has been created, the Target dialog is displayed to edit the configuration (see below).
Target Hardware Dialog
Edit Target Hardware
To edit a Target Hardware, select ‘Edit Target Hardware’ form the context menu. A dialog similar to the one for adding a Target Hardware initial setup appears.
Remove Target Hardware
To remove all Target Hardware from an element, right-click the element and select ‘Clear Target Hardware’ from the context menu.
Alternatively, the Target Hardware can also be removed in the Ribbon menu.
Target Hardware Driver Types
The following Target Hardware Driver Types are available for DATAFLOW Designer Projects.
Drivers
Type |
Description |
ADC |
Analog Digital Converter |
DAC |
Digital Analog Converter |
PWM |
Pulse Width Modulation |
GPIO |
General Purpose Input Output |
HIGH_LEVEL |
High Level Driver |
Driver Types
Add Target Hardware Driver to Component
To add a Target Hardware Driver to a Component,
- Go to the Interface Toolbox.
- Expand the Drivers section (the drivers section is only available if Target Hardware was assigned to the corresponding Component)
- Drag & Drop the required drivers onto the component in the Diagram Editor
Drag & Drop Driver to the Diagram Editor
Target Hardware Driver Properties
All Target Hardware Drives share the same common properties described in 5.3.2 Software Architecture Items.
Data
Type |
Description |
Name |
Analog Digital Converter |
DriverName |
Digital Analog Converter |
ModuleIndex |
Pulse Width Modulation |
DriverIndex |
General Purpose Input Output |
ADC Driver Properties
See list of common driver settings above.
DAC Driver Properties
See list of common driver settings above.
PWM Driver Properties
Data
Type |
Description |
PWMOutputPullMode |
NONE PUSH_PULL |
Frequency |
Set the frequency for the PWM driver. |
GPIO Driver Properties
Data
Type |
Description |
GPIOType |
DIGITAL_INPUT |
InputPullMode |
NONE FLOATING PULL_UP PULL_DOWN |
TriggerType |
NONE POLLING RAISING_EDGE BOTH_EDGES |
OutputPullMode |
NONE PUSH_PULL |
HIGH LEVEL Driver Properties
See the list of common driver settings above.