What is XPad?
A design/modeling/documentation tool:
State diagrams are used to specify, which flow diagram runs when... and you can run many State Diagrams at the same time in a single XPad-model! Only 4 types of diagrams are used, which are easy to master! With the push of a button an XPad model is turned into a Word-document
A programming/simulation/compilation tool:
Your graphical model IS your source code; it can be simulated and compiled immediately! ALL plug-in targets include libraries for: RS232 serial communication, I2C, Dallas 1Wire, HD44780 LCD-displays, Timers, discrete I/O control, etc.
A multi-target/upgradeable tool:
Low-cost plug-in target-modules can be added to compile for different microcontroller families. You can add new devices to an existing family yourself or ask us to do it for you! Assembly libraries can be included seamlessly for use in XPad models!
An easy to use/graphical/customizable tool:
Point & Click & Drag & Drop! Diagrams clarify parallel tasks. Many wizards and toolbars AND you can make your own! Layout of Configuration and simulation panels can be changed to suit your taste! Examples, context-sensitive help-files and application notes...
An affordable tool:
XPad itself is free for personal use! Low-cost compiler modules support multiple microcontrollers of the same family! (I.e. PIC14 Midrange devices). Compare prices and ease-of-development with other compilers yourself!
FOR small to medium sized (embedded) software systems
generates native code, including
REALTime executive kernel!
What is XPad NOT?
Another UML/enterprise modeling tool, adapted to support lower-end microcontrollers..
Another BASIC-dialect programming language... (Nothing wrong with Basic, but for more complex projects it is a poor choice, because of limited structure and support for realtime/multi-tasking, not to mention that many Basic-dialects are interpreted, resulting in low performance);
Difficult to master/understand by experienced/junior engineers or nontechnical staff...
Always far away from a working system;
Generating huge sources/binaries, which contain cryptic overhead and are difficult to read...
Big, Slow and Expensive...
For what type of projects is XPad suitable?
XPad focuses mainly on the control-aspects of a system.
Emphasis is on event-driven responsive systems. This includes:
embedded realtime software, starting with popular 8bit/16bit MCUs;
event-driven user interface based applications, such as mobile organizers.
Furthermore, depending on the target, special attention is given to:
dealing with low system resources (limited RAM, limited or no data-stack);
generation of executive code custom to your application (for embedded microcontrollers);
user-friendly/transparent interrupt support;
interfacing with industry standard electronics.
XPad models provide a visual structured view on your software. When the code is generated, fast and lean performance has main priority. The generated executive consists of functions which call/interrupt each other in a predetermined manner as specified by your diagrams and the stimuli from the environment. A REALTime operating system is part of your model!
Are you a Programmer /Software Engineer? Then you might want to check out:
the 4-Step Tutorial
or XPad's screenshot section