Home Imprint Data protection
products for display application in embedded systemslcd and touch displays for embedded guigui source library in ANSI-C for lcd and touchcomplete starter and development kit für lcd displayscustom embedded lcd display applicationscustom development of embedded hardware and softwareembedded electronics and hardware development (lcd, microcontroller, sensors, etc.)software development: microcontroller, windows and linux programmingexamples for custom development projectsSimplify Technologies GmbH: embedded display electronics and software in WetzlarSimplify Technologies GmbH, Wetzlar, Hessen

The GUI library - Application development

What are the advantages of a software library ?

A software library is a collection of functions and subroutines designed to work together for a specific purpose, e. g. for the realisation of graphical user interfaces.

A good software library has the following properties:

  • The functions of the library are easy to use and the developer does not need to worry about troublesome details.
    Advantage: A lot of development time and the according cost can be saved.
  • The library is designed as hardware independend as possible. Hardware dependent parts are encapsulated in special modules (''drivers'').
    Advantage: System maintainance and migration to other hardware is significantly simplified.
  • The functions are optimized in respect of run time behavior and memory usage.
    Advantage: Hardware requirements are kept to a minimum.

Prerequisites and use of the Simplify Technologies GUI library

The following steps explain how to program your system comfortably using the functions of the GUI library from Simplify Technologies.

What's needed ?

  • Functional hardware with connected LCD display (and touch glass if  needed)

  • An ANSI-C compatible compiler for the microcontroller of your system

  • The Simplify Technologies GUI library with the driver for your display or the LCD controller

Working steps:
  1. Add the source files of the library to your project. To adapt the library to your favourite development environment only the length of the integer types has to be taken into account.

  2. Configuration of the library is done using definitions in a header file. This way only functionality needed is added to the code and memory usage is minimized. The properties of the LCD controller are taken care of in the driver module. The driver only needs the address information where your display or LCD controller is mapped into address space.

  3. For touch glass and timer yor provide a few very simple auxilliary functions according to the manual discription (this is not needed for simple graphics and text output). These additional functions can be provided in only a few hours of work.

  4. Create your application using your favourite development tools. The extensive functions of the GUI library are now available for use. A simple instruction sequence could e.g. look as follows:

    /* Set the current writing position to coordinates 10,10 */
    disp_set_cursor_position(10, 10);
    /* At this place write the text "Hello World !" */
    disp_text("Hello World !");
    /* Now set the current writing position to coordinates 40,100 *
    / disp_set_cursor_position(40, 100);
    /* Draw a circle with radius 20 */

  5. The completed software can now be transferred to your target system.

The use of the functions of the GUI library is to a large extend compatible to the functions of the GUI interpreter which runs on our LCM2 modules. Therefore an application written with the GUI library for a custom specific hardware can be easily ported for use with our LCM2 modules (and vice versa).

With a LCM2 starterkit you can thus start development well before your final target hardware is available.

Additional Information:
Demonstration of a GUI library application - this is how it looks like
Quickstart tutorial for developing with the GUI library   
Manual of the GUI library   
Compatibility and porting between GUI library applications and GUI Interpreter applications