Download Portable Embedded GUI Programming Manual
Transcript
INTRODUCTION Historically speaking, graphical user interfaces have almost exclusively been the domain of desktop personal computers. This has been the result of two main factors: the cost of graphical display hardware and the lack of GUI software suitable for use in real-time systems. In the area of industrial control systems, there have been attempts at providing graphical presentations, but these have been cumbersome at best and terribly expensive as well. These types of systems have typically avoided the use of mainstream video output devices, and opted instead for very expensive and functionally limited industrial display terminals. Today, this attitude has changed to the point where it is very common for an embedded system to contain many of the very same hardware components found in a desktop computer system. This makes sense strategically because it allows the inventor of an embedded product to leverage the sales volume and pricing of the components sold primarily for desktop computer use. The result is that the cost of including graphical display hardware in an embedded product has declined significantly over the past few years. A wide variety of LCD display panels, VGA display panels, video controller chips and high-performance CPUs capable of driving a graphical interface are now available. Unfortunately, the software side of the equation has not advanced nearly as quickly. Until now there has been no graphical interface solution that is small enough and portable enough for an embedded system while at the same time providing a modern and professional appearance. There have been previous attempts at meeting this need, but so far these attempts have missed the mark. The alternative solutions that provide a modern, full-featured interface have all been derived from desktop computing environments, and carry along with them years of acquired baggage. These solutions impose very high hardware costs on your system, and even higher costs in terms of the manhours required to successfully integrate these large software packages with your real-time software. This of course assumes that you have the time and expertise required to actually build a working system with one of these products. We have seen more than one project descend into a neverending abyss of delays, technical setbacks, and finally failure caused by trying to force-fit software that was not intended for real-time systems. Swell Software, Inc. vii