VisSim Embedded Controls Developer (VisSim/ECD)

VisSim/ECDVisSim / Embedded Controls Developer (VisSim/ECD) is an environment for model-based development of embedded control systems. Using a block diagram approach, you can quickly create a working model of your control system; it can be as simple as a PID control or as complex as a multi-phase vector controller with packet-based RS485 protocol and dynamic IIC EEPROM read/write. With your model in diagram form, you simulate and generate code. In simulation mode, it is fast and easy to prototype, optimize, and debug before you ever generate code. Once you are happy with simulated performance, just click the Compile button to generate highly efficient C code and compile it to a target executable. The VisSim target HotLink lets you download and interactively debug your algorithm while it runs on the target.

VisSim/ECD is unique in its ability to generate highly efficient, high sample rate, low jitter target executables. For example, a closed-loop PID control with encoder input and PWM output and one digital output line take 1.1K flash and 100 bytes RAM on the MSP430, and VisSim/ECD generated code can sample at rates over 1 MHz on the F28335. As a TI 3rd party partner, Visual Solutions has gained valuable access to TI technology to tune VisSim/ECD to make best use of TI processors and peripherals.

3-phase PWM

VisSim diagram to drive 20kHz switched 3-phase PWM at 60Hz


Use of a high level model-based programming tool like VisSim/ECD offers many benefits:

  • Removes the requirement for one or more dedicated programmers
  • Speeds the edit-debug cycle
  • Lets you think and program at a much higher level of abstraction
  • Speeds implementation of on-chip peripheral drivers by providing a simple block and configuration dialog interface

But perhaps the biggest advantage is the increase in consistency and reliability that VisSim/ECD brings to the finished product. Because the generated code is done automatically, VisSim/ECD uses a smaller set of C language features to implement an algorithm, as well as generating syntactically and semantically correct C code. With hand coding, any number of small programming errors like a misplaced curly brace, function argument mismatch, unexpected expression evaluation order, or just a misplaced semicolon can result in small, hard to find errors. By automatically generating a well-tested C code subset, these common coding problems are gone. In addition, the chief architect of the VisSim code generator served on the ANSI C committee from the first meeting to the last, and authored a book on the C language, so he knows the best way to use C to get reliable, efficient performance.


  • VisSim/Fixed Point block set performs simulation and efficient code generation of scaled fixed-point operations like sin, cos, sqrt, atan2, FIR, and IIR; overflow and precision loss effects are easily seen and corrected at simulation time; auto-scaling speeds fixed-point development; in-line code generation creates fast target code
  • Peripheral blocks to generate code for C2000 on-chip devices: 280x ePWM, eQEP, eCAP, ADC, GPIO, quadrature encoder, event capture, CAN 2.0, SCI(RS232,UART,serial port), SPI, McBSP, watchdog, and interrupts
  • Full control of PWM including dynamic control of PWM period and phase, ADC start of conversion, trip zone, deadband intervals, action selection
  • Interrupt-based queue drivers for serial(SCI), SPI, and McBSP; user selectable queue lengths and use of hardware FIFO result in lower system overhead
  • Diagram-based interrupt handlers for XINT, ADC, PWM, and DMA
  • Easy creation of background tasks Subsystem dialog box to create a background task that runs at a user specified rate
  • TI C2000 Digital Motor Control (DMC) block set supports simulation and code generation of efficient, fixed-point routines for Park and Clarke transforms, rotor speed and flux estimation, PID control, space vector wave form generation for AC Induction and brushless DC motor control
  • Automatic C code generation of production quality fixed-point code, compile, link, and JTAG download.
  • Supported processors include: TI MSP430 (all flavors), C2000 (all flavors) including F2808 and variations, F28027, F28035 (Piccolo), F28335(Delfino), LF2407, F2812, C5510, C6713, Intel x86 PC
  • Retention of the VisSim GUI while algorithm executes on DSP lets you visualize interactive plots of DSP outputs and change DSP gains and parameters in real time
  • VisSim Code Composer Studio (CCS) plug-in for automatic CCS project creation
  • TI C2000 CAN bus support
  • Serial-port-based LCD display support
  • Efficient 7- and 14-segment LCD display support for MSP430; user table can customize segment assignments; auto conversion from scaled fixed-point to decimal display uses no floating point and no divide for maximum efficiency on MSP architecture
  • Flash Burn support tracks processor speed and PLL multiple to safely burn your standalone controller to Flash
  • Conditional execution of subsystems based on any Boolean condition, including occurrence of interrupt
  • User control of execution order of parallel flows is done top down; subsystem contents are completely executed before the next block on given layer, which provides fine grain control necessary for hardware device access
  • State transition block provides unlimited states and transition conditions. Transition conditions are C expressions.

What do our Customers say about us?

I can only say I wish all suppliers were as helpful as you.

CP, Newport, UK

“Origin has always been one of the most powerful packages for data analysis and graphing. With the new multi-sheet workbook’s full formatting features and its ability to embed both images and graphs, OriginLab is moving a big step forward. From raw data to final professional report creation, you can now keep all the stages of data processing in a single software.”

Antoine Couturier, Ph.D. - Service Recherche, Institut National du Sport, de l'Expertise et de la Performance

Bob delivered an engaging and interesting course. His style was very enjoyable.

Very enthusiastic, willing to answer questions, helpful, friendly – overall very good

For the time being we are unable to offer the following product ranges although we are currently working hard to increase the number of products we can offer in the future. Please contact us to talk about alternative products that we may be able to offer you.