Tutorial Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
Tutorial Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
1
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
PSIM supports TI’s InstaSPIN-FOC sensorless motor control algorithm in simulation and SimCoder
auto code generation. With this capability, PSIM provides the easiest way for users to evaluate
the performance of a motor control algorithm with InstaSPIN.
The core of the InstaSPIN algorithm is a FAST estimator that performs parameter identifications
and calculates flux, angle, speed, and torque based on motor phase voltages and currents and dc
bus voltage. The FAST block is illustrated below.
In PSIM, a component called “PIL Block (InstaSPIN)” is provided under Elements >> Control >> PIL
Module to implement the functions of InstaSPIN’s FAST block. This block can be used in general
simulation or in a SimCoder circuit for auto code generation for DSP hardware. At the moment,
only F2806x DSP is supported. F2802x DSP can be supported upon request.
This tutorial describes how the PIL InstaSPIN block is used for simulation and for auto code
generation. The TI DRV8305 EVM board and the F28069M LaunchPad hardware are used to run
the examples. For further information on InstaSPIN functions, please refer to relevant TI
documents.
2
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
1. Quick Start
If you wish to run the examples described in this tutorial right away, follow the steps below.
To run the simulation with InstaSPIN control:
- Connect the computer to the F28069M LaunchPad. The LaunchPad can be by itself or
connected to the DRV8305 EVM board. If the LaunchPad is connected to the DRV8305
EVM board, make sure that the DRV8305 EVM board is supplied with a 24-Vdc power
supply.
- Launch PSIM. Load the file “DRV8305 PMSM InstaSPIN Lab11 (F28069).psimsch” from
the PSIM folder “examples\PIL\DRV8305 PMSM InstaSPIN Lab11 (F28069)”.
- Select Simulate >> Run Simulation to run the simulation. After simulation is completed,
display waveforms in SIMVIEW.
To generate code from the schematic with InstaSPIN control, and run code on the hardware to
spin the motor:
- Connect the DRV8305 EVM board to the F28069M LaunchPad. Connect the DRV8305
EVM board to a 24-Vdc power supply. Connect the computer to the LaunchPad.
- Connect the Anaheim BLDC motor BLY172S-24V-4000 to the DRV8305 EVM board.
- Launch PSIM. Load the file “DRV8305 PMSM InstaSPIN Lab11 (F8069).psimsch” from
the PSIM folder “examples\SimCoder\F2806x Target\TI DRV8305 PMSM InstaSPIN
Lab11”.
- Select Simulate >> Generate Code to generate code. The generated code will be stored
in the folder “examples\SimCoder\F2806x Target\TI DRV8305 PMSM InstaSPIN Lab11\
DRV8305 PMSM InstaSPIN Lab11 (F8069) (C code)”.
- Launch TI Code Composer Studio (CCS). Select Project >> Import Legacy CCSv3.3
Projects, and navigate to the folder of the generated code and import the project.
- Compile the project, and run the code. The motor should start to spin.
3
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
The number of inputs is fixed, but the number of outputs can be changed. All inputs are in per
unit, and the data format is IQ24.
The block parameters are explained as below:
Target Config Target configuration file .ccxml used in CCS for the specific DSP
hardware. The configuration file must match the hardware connected
to the computer. By default, a F28069 configuration file
“TargetConfig_F28069” in the lib subfolder is used.
Target Program Target hardware executable .out file. Be default, the file
“InstaSPIN_F28069.out” in the lib subfolder is used.
No. of Inputs The number of inputs to the block is fixed to 6 at the moment. These
inputs are:
Iab_pu.value[0]: alpha component of the 3-phase currents
after abc-alpha/beta transformation
Iab_pu.valu e[1]: beta component of the 3-phase currents after
abc-alpha/beta transformation
Vab_pu.value[0]: alpha component of the 3-phase voltages
after abc-alpha/beta transformation
Vab_pu.value[1]: beta component of the 3-phase voltages after
abc-alpha/beta transformation
Vdcbus: DC bus voltage
Vref: Speed reference to the controller
4
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
No. of Outputs Number of outputs from the block. It can be changed to any number
as needed. Also, each output variable can be changed through the
drop-down menu. The three default outputs are:
EstData_Angle_pu: Rotor angle, in per unit
EstData_Fm_pu: Mechanical frequency of the motor, in per unit
EstData_OneOverDcBus: Inverse of the dc bus voltage, in per unit
Sampling Freq. Sampling frequency of the block, in Hz. It is the frequency in which the
block runs.
The block can have the following outputs, all in IQ24 format and in per unit unless otherwise
stated.
gIdq_pu.value[0]: Id value of the current
gIdq_pu.value[1]: Iq value of the current
EstData_Angle_pu: Rotor angle
EstData_DcBus_pu: DC bus value
EstData_ErrorCode: Error code
EstData_Fe_pu: Electrical frequency of the motor
EstData_Flux_pu: Flux value
EstData_Fm_pu: Mechanical frequency of the motor
EstData_ForceAngleDelta_pu: Force angle delta value
EstData_FreqB0_lp_pu: Low-pass filter numerator value in the frequency
estimator (in IQ30)
EstData_FreqBeta_lp_pu: Value used to set the pole location in the low-pass
filter of the frequency estimator (in IQ30)
EstData_Fslip_pu: Slip frequency of the motor
EstData_IdRated_pu: Id rated current value
EstData_IdRated_indEst_pu: Id current value used for inductance estimation of
induction motors
EstData_IdRated_ratedFlux_pu: Id current value used for flux estimation of induction
motors
EstData_KRPM_to_PU_sf: krpm to pu scale factor
EstData_Lr_pu: Rotor inductance value (in IQ30)
EstData_Ls_d_pu: Direct stator inductance value (in IQ30)
EstData_Ls_q_pu: Stator inductance value in the quadrature coordinate
direction (in IQ30)
EstData_Ls_max_pu: Maximum stator inductance value from the stator
inductance estimator
EstData_Ls_min_pu: Minimum stator inductance value from the stator
inductance estimator
EstData_Ls_coarse_max_pu: Maximum stator inductance value during coarse
estimation in the stator inductance estimator
EstData_MaxAccel_pu: Maximum acceleration value used in the estimator
5
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
6
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
7
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
8
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
9
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
// InstaSPIN Parameters
// Commonly changed
//--------------------------------------------------------------------------
USER_PWM_FREQ_kHz = 15 // User defined
USER_NUM_PWM_TICKS_PER_ISR_TICK =1 // User defined
USER_MOTOR_TYPE =1 // Motor dependent
USER_MOTOR_NUM_POLE_PAIRS =4 // Motor dependent
USER_MOTOR_RATED_FLUX = 0.0290119 // Motor dependent
USER_MOTOR_Rr =0 // Motor dependent
USER_MOTOR_Rs = 0.4051206 // Motor dependent
USER_MOTOR_Ls_d = 0.000639871 // Motor dependent
USER_MOTOR_Ls_q = 0.000639879 // Motor dependent
USER_MOTOR_MAX_CURRENT =5 // Motor dependent
USER_MOTOR_RES_EST_CURRENT =1 // Motor dependent
USER_MOTOR_IND_EST_CURRENT = -1 // Motor dependent
USER_MOTOR_MAGNETIZING_CURRENT =0 // Motor dependent
USER_MOTOR_FLUX_EST_FREQ_Hz = 20 // Motor dependent
//-------------------------------------------------------------------------
// Rarely changed
//-------------------------------------------------------------------------
USER_IQ_FULL_SCALE_CURRENT_A = 24 // Kit dependent
USER_IQ_FULL_SCALE_VOLTAGE_V = 24 // Kit dependent
USER_MAX_ACCEL_EST_Hzps =5 // Kit dependent
USER_ADC_FULL_SCALE_VOLTAGE_V = 44.302 // Kit dependent
USER_ADC_FULL_SCALE_CURRENT_A = 47.1429 // Kit dependent
USER_VOLTAGE_FILTER_POLE_Hz = 344.618 // Kit dependent
NUM_ISR_TICKS_PER_CTRL_TICK =1 // User defined
NUM_CTRL_TICKS_PER_CURRENT_TICK =1 // User defined
NUM_CTRL_TICKS_PER_EST_TICK =1 // User defined
NUM_CTRL_TICKS_PER_SPEED_TICK = 15 // User defined
NUM_CTRL_TICKS_PER_TRAJ_TICK = 15 // User defined
USER_SYSTEM_FREQ_MHz = 90 // DSP dependent
USER_NUM_CURRENT_SENSORS =3 // Hardware defined
USER_NUM_VOLTAGE_SENSORS =3 // Hardware defined
USER_IQ_FULL_SCALE_FREQ_Hz = 806.667 // Motor dependent
USER_IDRATED_DELTA = 0.00002 // Hardware dependent
USER_R_OVER_L_EST_FREQ_Hz = 100 // Motor dependent
//------------------------------------------------------------------------
// Constants
//------------------------------------------------------------------------
MATH_PI_VALUE = 3.1415926535897932384626433832795
USER_OFFSET_POLE_rps = 20
USER_FLUX_POLE_rps = 100
USER_MAX_ACCEL_Hzps = 20
USER_MAX_VS_MAG_PU = 0.5
USER_DIRECTION_POLE_rps = 6.0
USER_SPEED_POLE_rps = 100
USER_DCBUS_POLE_rps = 100
USER_FLUX_FRACTION = 1.0
SPEEDMAX_FRACTION_FOR_L_IDENT = 1.0
USER_POWERWARP_GAIN = 1.0
USER_EST_KAPPAQ = 1.5
IDRATED_FRACTION_FOR_L_IDENT = 1.0
IDRATED_FRACTION_FOR_RATED_FLUX = 1.0
//------------------------------------------------------------------------
// Derived variables
//------------------------------------------------------------------------
USER_ZEROSPEEDLIMIT = 0.5 / USER_IQ_FULL_SCALE_FREQ_Hz
USER_FORCE_ANGLE_FREQ_Hz = 2.0 * USER_ZEROSPEEDLIMIT * USER_IQ_FULL_SCALE_FREQ_Hz
USER_PWM_PERIOD_usec = 1000.0/USER_PWM_FREQ_kHz
USER_VOLTAGE_SF = USER_ADC_FULL_SCALE_VOLTAGE_V/USER_IQ_FULL_SCALE_VOLTAGE_V
USER_CURRENT_SF = USER_ADC_FULL_SCALE_CURRENT_A/USER_IQ_FULL_SCALE_CURRENT_A
USER_VOLTAGE_FILTER_POLE_rps = 2.0 * MATH_PI_VALUE * USER_VOLTAGE_FILTER_POLE_Hz
USER_MAX_VS_MAG_PU = 2.0/3.0
USER_ISR_FREQ_Hz = USER_PWM_FREQ_kHz * 1000.0 / USER_NUM_PWM_TICKS_PER_ISR_TICK
USER_CTRL_FREQ_Hz = USER_ISR_FREQ_Hz/NUM_ISR_TICKS_PER_CTRL_TICK
USER_TRAJ_FREQ_Hz = USER_CTRL_FREQ_Hz/NUM_CTRL_TICKS_PER_TRAJ_TICK
USER_EST_FREQ_Hz = USER_CTRL_FREQ_Hz/NUM_CTRL_TICKS_PER_EST_TICK
USER_MAX_CURRENT_SLOPE = USER_MOTOR_RES_EST_CURRENT/USER_IQ_FULL_SCALE_CURRENT_A/USER_TRAJ_FREQ_Hz
MAX_CURRENT_SLOPE_POWERWARP = 0.3*USER_MOTOR_RES_EST_CURRENT/USER_IQ_FULL_SCALE_CURRENT_A/USER_TRAJ_FREQ_Hz
USER_ISR_PERIOD_usec = USER_PWM_PERIOD_usec * USER_NUM_PWM_TICKS_PER_ISR_TICK
USER_CTRL_PERIOD_usec = USER_ISR_PERIOD_usec * NUM_ISR_TICKS_PER_CTRL_TICK
USER_CTRL_PERIOD_sec = USER_CTRL_PERIOD_usec/1000000.0
MAX_NEGATIVE_ID_REF_CURRENT_A = -0.5 * USER_MOTOR_MAX_CURRENT
10
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
Select the correct CPU type, and click on OK to continue. The simulation will run. Note that
in the middle of the simulation; do not close the “Processor-in-Loop Simulation” popup
window.
An InstaSPIN example is provided in the folder “examples\PIL\DRV8305 PMSM InstaSPIN Lab11
(F28069)”. This example is based on Lab 11 of TI’s Motorware InstaSPIN examples for F28069 for
the DRV8305 EVM kit. The PSIM schematic of the example is shown below.
Notice that beside the parameter file “InstaSPIN_params.txt”, another parameter file
“param_file.txt” is used in the schematic to define parameters used in other part of the circuit.
The file “InstaSPIN_params.txt” has a higher priority than the file “param_file.txt”, which means
that parameters defined in “InstaSPIN_params.txt” can be used in “param_file.txt”. To define the
file priority, in the parameter file dialog window, select Edit >> Priority.
11
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
In this example, 3-phase ac voltages and currents as well as dc bus voltage are measured. These
measured voltages and currents are scaled as per unit quantities as shown below:
Current scaling factor = USER_ADC_FULL_SCALE_CURRENT_A/USER_IQ_FULL_SCALE_CURRENT_A/3.3
Voltage scaling factor = USER_ADC_FULL_SCALE_VOLTAGE_V/USER_IQ_FULL_SCALE_VOLTATE_V/3.3
The scaled ac voltages and currents are converted to the alpha/beta frame through the Clarke
transformation. The alpha/beta quantities, together with the dc bus voltage and speed reference,
are sent to the PIL InstaSPIN block, which generates estimated rotor angle theta, estimated speed,
and the inverse of the dc bus voltage.
The estimated speed is used in the speed control loop to generate the Iq reference. The outputs of
the Id and Iq control loops are sent to the inverse Park transformation block, and the outputs are
then used to generate PWM gating signals.
There are two sampling rates in this circuit, fsw_d for the inner current loop (set to 15kHz in
“InstaSPIN_params.txt”), and fsw_s for the outer speed loop (fsw_s = fsw_d/15).
Note that in this schematic, zero-order-hold blocks of fsw_d are connected to all inputs of the PIL
InstaSPIN block and the Iq controller C block. This is needed to force these two blocks to compute
in the sampling rate of fsw_d.
Three unit delay blocks at the input of the PWM generation circuit (highlighted in red) are used to
model the one cycle delay inherent in digital control.
Also, the PWM carrier waveform phase delay must be set to 180 deg. This is very important as
otherwise the circuit will not work. This is because the bottom switch currents are measured and
sampled by the DSP ADC. This means that, at the moment of sampling, the bottom switch must be
12
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
on and the top switch must be off. In order to achieve this, the carrier waveform must be phase
shifted by 180 deg. To understand this, let’s look at the PWM circuit by itself, as shown below on
the left:
The carrier waveform is a triangular waveform from -0.5 to 0.5, with the phase delay set to 180
deg. and a switching frequency of 15kHz. The simulation waveforms are shown on the right. In
PSIM simulation, the beginning of sampling periods starts naturally at the time of zero and at each
integer number of the sampling period. In this case, the beginning of the periods starts at 0, 50us,
100us, etc., as marked by the red arrow.
If A/D conversion is performed at the beginning of each period, with the settings above, the top
switch gating signal Ta will be low, and the bottom switch gating signal Ta_n will be high. This is
exactly what is needed for DSP implementation. If the phase delay of the carrier wave is set to 0 as
is done typically, at the beginning of each period, Ta will be high and Ta_n will be low. The A/D
conversion result for the current will be all 0 since the bottom switch is not conducting.
To summarize, the carrier wave phase delay should be set to 180 deg. if the bottom switch
currents are sampled, and the phase delay should be set to 0 if the top switch currents are
sampled.
13
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
SCI
SPI
Offset
ADC Offset
SCI
PWM
In the schematic, the zero-order-hold blocks at the inputs of the PIL InstaSPIN block and the Iq
controller block (except the Iqref input) are no longer needed as SimCoder will detect the sampling
rates of these blocks automatically.
Also, since ac voltages and currents at the ADC inputs have dc offset due to conditioning circuits,
to restore the voltages/currents back to ac, the dc offsets are removed after the ADC and ZOH
blocks, as highlighted in red.
The offset values from the TI Lab 11 code are used here. Note that the offsets are not exactly
equal among the three phases in the hardware circuit, but they are equal in simulation. To address
the discrepancy, a flag called “flag_simulation” is defined in the parameter file “param_file.txt”.
When the flag is set to 1, identical offset values are used. When the flag is 0, the actual hardware
offset values are used.
The current and voltage sensing circuits match the DRV8305 EVM hardware.
To perform auto code generation, ADC, PWM, SCI, and SPI blocks, as highlighted in red, are used in
the circuit. They simulate the functions of the corresponding F28069 hardware peripheral blocks.
The SCI blocks are used to display DSP waveforms in real time, and the SPI blocks are used to set
the configurations in the DRV8305 chip.
The figure below shows the ADC block definition. The modes of all the ADC channels are set to DC
as all incoming voltage and current signals are dc quantities. Also, the current and voltage ADC
readings need to be re-scaled to per unit quantities as shown in red.
14
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
Below is the figure that shows the PWM block definition for the 3-Phase PWM signals Ta, Ta_n, Tb,
Tb_n, Tc, Tc_n.
In the definition, the parameters “Carrier Wave Type” is set to Triangular (start low), “Trigger
ADC” is set to Trigger ADC, and “ADC Trigger Position” is set to 0. This means that the PWM
generator will trigger ADC, and ADC will perform A/D conversion at the beginning of the sampling
period. The setting Triangular (start low) means that when the modulation wave is greater than
the carrier wave, the PWM signal will be low. This will give a low signal to the top switch and a
high signal to the bottom switch, exactly what is required for bottom switch current sampling.
The carrier waveform is defined to be a triangular waveform from -0.5 to +0.5.
SPI Configuration:
The DRV8305 chip on the DRV8305 EVM board is a gate driver IC for three-phase motor drive
applications. The device provides three high-accuracy and temperature compensated half-bridge
drivers. DRV8305 includes three bidirectional current-shunt amplifiers for accurate low-side
current measurements that support variable gain settings and an adjustable offset reference.
15
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
The DRV8305 chip uses SPI to set device configurations, operating parameters, and read out
diagnostic information. The SPI input data (SDI) word consists of a 16-bit word with 5 bits of
command and 11 bits of data. The SPI output data (SDO) word consists of 11 bits of register data
with the first 5 bits (MSB) as don’t cares. The SPI input data control word and output data
response format is shown below:
The SPI input data (SDI) control word is 16 bits long and consists of the following format:
- 1 read or write bit W [15]
- 4 address bits A [14:11]
- 11 data bits D [10:0]
The SPI output data (SDO) word response word is 11 bits long (first 5 bits are don’t cares). It
contains the content of the register being accessed.
The MSB of the SDI word (W0) is the read/write bit. When W0=0, the input data is a write
command. When W0=1, the input data is a read command.
For a write command: The response word is the data currently in the register being written to.
For a read command: The response word is the data currently in the register being read.
The table below shows the gate drive control register for the dead time setup.
16
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
The following table shows the shunt amplifier control register for the current gain setup.
The settings of the DRV8305 EVM board are at default values unless one wants to change to
different values with the SPI command. The default settings for the dead time is 52ns, and for
current gain is 10V/V.
PSIM provides SPI components to write to and read from data in DRV8305. The following are
examples to show how to set dead time to 1.76us and the current gain to 40V/V in PSIM.
To determine the SPI command for setting up the dead time as 1.76us:
17
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
The SPI Device block is used to send SPI commands from DSP to DRV8305 chip. Multiple SPI
commands can be sent to the DRV8305 chip (for example, 0x3A56, 0x502A).
18
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
Notice that if the current gain is changed from 10V/V to 40V/V, the current sensing sub-circuit
would need to be changed accordingly to reflect the 40V/V current gain as shown below.
The SPI Input device is used to read the data of SPI register. For example if dead time setting data
reading is desired, the SPI command 0xB800 can be entered as shown below.
19
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
To run simulation, select Simulate >> Run Simulation in the same way as with other circuits.
Before running the generated code in DRV8305 EVM board, one has to set up the DRV8305 EVM
board and F28069M LaunchPad according to the following procedure:
1. Set the LaunchPad jumper and DPI switch positions as:
Jumpers: JP1 = off, JP2 = off, JP3 = on, JP4 = on, JP5 = on, JP6 = off, and JP7 = on
DIP switch S1: S1_1 = on, S1_2 = on, and S1_3=on
2. Connect the DRV8305 board to connectors J1-2-3-4 of the LaunchPad, with the DRV8305
board on top of the LaunchPad. Note that the LaunchPad has two sets of connectors, J1-2-
3-4 and J5-6-7-8, that can be connected to the DRV8305 EVM board, and the PSIM example
provided is for connectors J1-2-3-4. Make sure that the power and motor connection
terminals of the DRV8305 board is on the same side as the USB connector of the
LaunchPad. The image below shows how the DRV8305 EVM board is connected with the
F28027F LaunchPad.
DRV8305 EVM
LaunchPad
20
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
3. Connect the motor to the J4 connector of the DRV8305 EVM board (MOTA = black, MOTB =
red, and MOTC = yellow).
4. Connect the LaunchPad USB connector CON1 to the computer USB port.
5. Connect a 24-V dc power supply to the J3 connector (PVDD and GND) of the DRV8305 EVM
board.
6. Open the file “DRV8305 PMSM InstaSPIN Lab11 (F28069).psimsch” from the PSIM folder
“examples\SimCoder\F2806x Target\TI DRV8305 PMSM InstaSPIN Lab11”.
7. In PSIM, go to Simulation Control >> SimCoder and make sure that the checkbox InstaSPIN
enabled is checked, as shown below.
For InstaSPIN-enabled DSP, this box much be checked. Otherwise the generated code will
be incorrect.
To generate code, select select Simulate >> Generate Code. The generated code, together
with the CCS v3.3 project files, will be in the subfolder “DRV8305 PMSM InstaSPIM Lab11
(F28069) (C code)” under the schematic file folder.
8. Launch TI CCS, import the generated project by selecting Project >> Import Legacy CCSv3.3
Projects, and navigate to the subfolder “DRV8305 PMSM InstaSPIM Lab11 (F28069) (C
code)”. Note that importing legacy CCSv3.3 project needs to be done only the first time.
Once the CCSv3.3 project is converted, use Project >> Import CCS Projects to load the
project the next time.
9. In CCS, build the project. Select Run >> Debug to upload the code to DSP. Click on the
Resume icon on the toolbar to run the code, and the motor should start to rotate.
10. Once the code is running, in PSIM, select Utilities >> DSP Oscilloscope, and display
waveforms of Ia_fb, Ialpha, Ibeta, Va_fb, Valpha, Vbeta, and speed_est_pu in real time.
21
Simulation and Code Generation of TI InstaSPIN Using DRV8305 EVM
For more information on how to generate code and run on F2806x DSP, refer to the tutorial
“Tutorial – Auto code generation for F2806x Target.pdf”.
For more information on how to use SCI for real-time waveform display, refer to the tutorial
“Tutorial – Using SCI for waveform monitoring.pdf”.
With PSIM’s automatic code generation capability, one can perform both simulation and auto
code generation for rapid control prototyping and hardware implementation in one seamless
workflow, as shown below:
Parameter preparation
Simulation
Code generation
Upload to DSP
F28069M or other
InstaSPIN-enabled Board
The integrated environment greatly speeds up the development process and helps to reduce
development cost and time-to-market.
22