Newsletter

Video/Imaging DesignLine  >  Design Center

GUI development for DaVinci using GUILIANI framework

A solution for implementing advanced GUIs using the DSP-side software graphics acceleration on the TM320DM644x (DaVinci) dual-core system.


Page 1 of 5

Video Imaging DesignLine

Electronic devices have found their way into nearly every aspect of daily life, from cellular phones, to DVD-Players and car navigation systems. Along with their growing capabilities and complexities arises the need for intuitive ways of interacting with them. Customers expect a device to be easily manageable without extensive studying of the accompanying manuals.


Figure 1: Demo screenshot of example GUI

Graphical user interfaces (GUIs) have proved to offer the simplest and most intuitive method for controlling many things. Their underlying concept is to present interactions in such a way that it is intuitively understandable to the user -- which can be delivered by the use of graphical aids such as highlighting, colors, pictograms and animation. While advanced GUIs have long since conquered the home-computer market, they are still challenging to implement on embedded systems, where memory- and CPU-resources are limited.

This article shines a light on GUI development for embedded systems using a demo-application running on the TI DaVinci platform as an example.

Architectural overview
The figure below shows an abstract view of a DaVinci-based GUI-application's architecture, revealing four components that play a major role in this context:


View full size

Figure 2: Architectural Overview

  • The Application
  • This is the piece of software developed with the help of the underlying components. This can be your navigation-system, media-player, onboard-infotainment system etc.

  • The GUI framework (GUILIANI)
  • This component is responsible for all tasks required when creating a graphical user interface. This reaches from gathering user input from attached media (touch-screen, remote-control, etc.) to displaying various controls (buttons, sliders, etc.) and much more. We will examine this in more detail later.

  • The Operating System
  • This provides the other components with fundamental functionality, such as file I/O or threading.

  • The Rendering Engine (eVRU)
  • Ultimately this adds the "G" to your "UI" by offering graphical features, such as drawing various vector primitives to the screen, or performing blitting operations on bitmap graphics (i.e. copying a bitmap to the screen while optionally applying some sort of image manipulation). In our example this is done through eVRU, a software graphics accelerator running on the DaVinci's DSP.

Whilst we will focus on the GUI-framework, the rendering engine on the dual-core architecture found on DaVinci is an interesting aspect, so the following section will briefly address this.

Next: Using the DSP for graphics acceleration

Page 2: next page  

Page 1 | 2 | 3 | 4 | 5

Related Links:
  • Graphics rendering engine using DSP in dual-core DaVinci as soft graphics accelerator


  • Rate this article
    WORSE | BETTER
    1 2 3 4 5




    Texas Instruments
    EE Times TechCareers
    Search Jobs

    Enter Keyword(s):


    Function:


    State:
      

    Post Your Resume
    -----------------
    Employers Area
    Most Recent Posts More career-related news, resources and job postings for technology professionals
     Sponsor