|
The PEG+ Graphics Library for MQX is a Portable Embedded GUI library designed to provide a professional quality graphical user interface for embedded systems applications. The PEG+ GUI is small,
fast, and easily ported to virtually any hardware configuration
capable of supporting graphical output. PEG+ delivers exceptional
visual appeal and an intuitive and powerful API for application-level
user interface development.
The PEG+ Graphics Library for MQX is pre-integrated with the MQX RTOS and provides the tools, API, and windowing class libraries that will
allow you to quickly create an outstanding graphical interfaces for embedded devices.
PEG+ for MQX is delivered with full source code, many example application
programs, a complete set of supporting utility programs, hardware
interface drivers for several common video configurations and input
devices, and very thorough documentation to simplify the integration
process.
Designed for Embedded| Professional Quality | Easy-to-use API | Optimized for ColdFire and PowerPC | Includes GUI Building Utilities | Compatible Products
The PEG+ Graphics Library is written with embedded devices in mind, meaning that the value of every feature is
weighed against the code size and performance requirements of that
feature. The PEG+ library for MQX is configured at compile time to include
only the features an application requires, keeping the memory requirements of the GUI at a minimum. A minimum PEG+ footprint requires roughly 50 KB
of code space, 4 KB of stack, and 2 KB of dynamic memory. The PEG+ software is written entirely in C++
and implements an event-driven programming paradigm at the application
level to ensure reliable performance.
The PEG+ GUI achieves maximum performance on low-power embedded processors by minimizing the system overhead
required to maintain a graphical presentation. PEG+ is fully integrated with MQX RTOS messaging, memory management, and
synchronization services. This yields the lowest possible overhead and the only
true real-time multi-tasking GUI environment available. PEG+ input devices are
interrupt driven, and again use RTOS services to communicate user input
information to the graphical user interface. In addition, the
PEG+ Graphics Library for MQX always interacts directly with video and input hardware to achieve
the greatest possible throughput.
PEG+ for MQX simply provides the most complete GUI solution available to real-time
embedded systems developers. All of the utilities, documentation, support, and
development tools you will require for creating a graphical user interface on an
embedded system are included with the PEG+ library development package. The default appearance of PEG+ objects is almost
identical to common desktop graphical environments. This appearance
can be enhanced or simplified to fit the requirements of the application.
International Language Support
PEG+ for MQX provides industry leading support for multi-lingual applications.
PEG+ fully supports two-byte characters and Unicode string encoding.
Virtually any language can be supported using any combination of
optional character sets including Latin, Cyrillic, Han, Katakana,
Hiragana, etc., in a single PEG+ application. This capability
gives the system developer unequaled range and flexibility in designing
products for foreign markets.
Input Devices
PEG+ for MQX includes complete support for mouse, joystick, and/or touch screen input.
This includes drawing various pointer bitmaps or using hardware cursor
capabilities. Complete mouse input drivers and touch screen input drivers are
provided for each of the reference platforms. All pointer input functionality can
also be removed from the library simply by turning off a library configuration flag
prior to compiling the library.
Keyboard/Keypad
Full keyboard support is optionally included in the PEG+ Graphics Library for MQX. This includes all
handling required for keyboard navigation through menus, windows, and dialogs.
Keyboard support may range from a full QWERTY keyboard to a small set of
user-defined membrane keys. Full navigation and operation can be
accomplished with as few as three unique input keys.
Soft Keys
Using soft keys, i.e. membrane keys placed at the perimeter of the display
screen, is also supported. When using soft keys, the system programmer configures PEG+ for MQX to operate as a touch screen, and sends to PEG+ touchscreen
click messages corresponding to the screen position adjacent to each
membrane key.
The PEG+ Graphics Library for MQX provides an intuitive and robust object hierarchy. Powerful enough to build advanced windowing interfaces but simple enough for first-time GUI programer to develop a basic user interface for an embedded device.
Objects may
be used as provided, or enhanced through user derivation. PEG+
imposes no artificial limits on how objects are used. You will find that you can do things very quickly and easily
with PEG+ - things that would be very difficult and time-consuming using the
mainstream desktop GUI programming environments.
The PEG+ API is defined entirely by the public functions provided by the library
classes. This API provides robust and intuitive methods for performing even very
complex graphical operations.
Embedded Access specializes in solutions for ColdFire and PowerPC processors. Our engineers have been working with ColdFire and PowerPC architectures since their launch and with the 68K architecture before that. This level of understanding for the ColdFire and PowerPC processor architectures results in the PEG+ Graphics Library for MQX being specifically optimized and pre-integrated for these platforms. The PEG+ GUI for MQX include LCD device controller driver for ColdFire MCF532x on-chip LCD controller. Where on-chip LCD device controllers are not present PEG+ for MQX provides LCD controller drivers for many popular LCD controllers and other display drivers which are commonly integrated with ColdFire and PowerPC processors. PEG+ for MQX is fully integrated with the MQX
RTOS messaging, memory management, and synchronization services
to provide an easy to use graphics package for MQX users. This level of integration ensures a very good out-of-box experience with ColdFire and PowerPC development boards and easy integration of the PEG+ GUI with a customer's hardware.
The PEG+ Graphics Library for MQX is delivered with a full set of utility programs useful
for embedded developers. These utility programs allow you to generate
and use your own fonts, convert images for storage in ROM and design, build and automatically generate the source code for
advanced windowing interfaces and dialogs.
FontCapture
PEG+ for MQX supports many font formats. These include a custom 1-bit-per-pixel
variable-width bitmapped font format, a scalable vector font format, outlined
fonts, and anti-aliased fonts.
FontCapture is a development tool that allows users to convert TrueType and
BDF font files into the native font format required internally by PEG+. The output
of FontCapture is a source file containing “C” style data arrays describing the
captured font. These source files are then compiled and linked in with your
application, allowing you to associate any number of custom fonts with any PEG+
control type that displays string data.
FontCapture includes a complete character editor allowing the user to customize
individual characters of the generated font. Unicode character mapping and
multi-page fonts containing thousands of characters are supported. FontCapture
is available for Windows, Linux/X11, and Solaris hosts.
|
|
|
ImageConvert
Image Convert is a development tool that converts BMP, GIF, JPEG, and PNG
images into a compressed format supported by the PEG+ bitmap functions. The
output of ImageConvert is a ‘C’ source file that can then be compiled and linked
in with your application. ImageConvert will optionally compress the output
bitmaps on an individual basis, allowing you to achieve the best mix of speed vs
size.
Image Convert also creates optimized palettes for applications running in 4 or 8
bpp mode. The user can input any combination of supported image files, and
ImageConvert will perform advanced quantization and color-reduction producing
an optimal palette or palettes corresponding to the input images. The output
images are then automatically re-encoded using the newly generated palette
information. Multiple palettes can be used in one application. ImageConvert
also supports dithering of pixel color data when reducing the color depth of an
input image to match the output display capabilities.
|
WindowBuilder
The PEG+ WindowBuilder is a powerful visual design tool created for use with the
PEG+ library. PEG+ WindowBuilder allows the developer to quickly create and
use custom windows and dialogs. The output of PEG+ WindowBuilder is the
C++ source code required to create the desired window or dialog. PEG+
WindowBuilder also generates the prototype message handling code required to
process signals received from the window or dialog child controls.
PEG+ WindowBuilder is actually a PEG+ application program running in the
Win32 development environment. This guarantees that the operation of PEG+
WindowBuilder is fully and completely WYSIWYG, and your target will appear
exactly as it does in the PEG+ WindowBuilder environment.
As with all PEG+ supporting tools, PEG+ WindowBuilder is essential to making
PEG+ a complete embedded GUI solution and is therefore included with the
PEG+ library at no extra charge. |
|
The following products enhance the MQX RTOS for more advanced applications:

|