Embedded Systems

TOOLS:
Like a typical computer programmer, embedded system, designers use compiler, assembler and debbuger to develop an embedded system.
Those software tools can come from several sources:

Soft-ware companies that specialize in the embedded market. Ported from the GNU software development tolls. Some times, development tools for a personal computer can be used if the embedded process is a close relative to a common PC processors . Embedded system designers also use a few software tools rarely used by typical computer programmers.

Some designers keep a utility program to turn data files into codes, so that they can include any kind of data in a program.Most designers also have utility programs to add a check sum or CRC to a program, so it can check its program data before executing it.

OPERATING SYSTEM:
They often have no operating system or a specialized embedded operating system (often real time operating system), or the programmer is assigned to part one of these to the new system.

EMBEDDED SOFTWARE ARCHITECTURES;
There are severally basical different types of software architectures in common use.

THE CONTROL LOOP:
In this design, the software simply has a loop. The loop calls subroutines. Each subroutine manages apart of the hardware or software. Interrupts generally set flags, or update counters that are read by the rest of the software.

A simple API disables and enables interrupts. Done right, it handles nested calls in Nested subroutines, and restores the preceding interrupt state in the outer most enable. This is one of the simplest methods of creating an exokernel.

Typically, there’s some sort of subroutine in the loop to manage a list of software timers, using a periodic real time interrupt.
When a timer expire, an associated subroutine is run, or flag is set . Any expected hardware event should be backed-up with a software timer . Hardware events fail about ones in a trillion times.

That’s about once a year with modern hardware. With a million mass-produced devices, living out a software timer is a business disaster.
State machines are implemented with a function-pointer per state- machine (in C++, C or assembly any way). A change of state stores a different function into the pointer. The function pointer is executed every time the loop runs.

Many designers recommend reading each IO device once per loop, and storing the result so the logic acts on consistent values.
Any designers prefer to design their state machines to check only one are two things per states. Usually this is a hardware event, and a software timer .

Designers recommand the hierarchical state machines should run the lower-level state Machine before the higher, so the higher run with accurate information. Complex function like internal combustion control are often handle with multi-dimensional tables.

Instead of complex calculations the code looks up the values. The software can interpolate between entries, to keep the table small and cheap. One major weakness of this system is that it does not guarantee a time to respond to any particular hardware event. Careful coding can easily assure that nothing disables interrupts for long.

Thus interrupt code can run at vary precise timings.Another major weakness of this system is that it can become complex to add few features. Algorithms that take along time to run must be carefully broken down so only a little piece gets done each time through the main loop.
This system’s strength is it’s simplicity, and on small pieces of software the loop is usually so fast that nobody cares that is not predictable.
Another advantage is that system guarantees that a software will run. There is no mysterious operating system to blame for bad behaviour.

USER INTERFACES:

User interfaces for embedded systems vary wildly, and thus deserve some special comment. Designers recommend testing the user interface for usability at the earliest possible instant.

Exactly one person should approve the user interface ideally, this should be a customer, the major distributor or someone directly responsible for selling the system. The decision maker should be able to decide. The problem is that a committee will never make-up its mind, and neither will some people. Not doing in this causes avoidable, expensive delays. A usability test is more important then any number of opinions. A touch-screen or screen-edge buttons also minimize that types of user actions. Another basic trick is to minimize and simplify the type output.

Designs should consider using a status light for each interface plug, or failure condition ,to tell what failed. A cheap variation is to have two light bars with a printed matrix of errors that they select-the user can glue on the labels for the languages that she speaks.

For example, Boeing’s standard test interface is a button and some lights. When you press the button all the lights turn on. When you release the button the lights with failures say on. The labels are in basic english. For another example, look at a small computer printer. You might have one next to your computer. Notice that the lights are labeled with stick-on the labels that can be printed in any language. Really look at it.
Designers use colors. Red means the user can get hurt-think of blood.

Yellow means some thing might be wrong. Green means everything’s OK. Another essential trick is to make any modes absolutely clear on the user’s display. An interface has modes, they must be reversible in an obvious way.
Most designers prefer the display to respond to the user. The display should change immediately after a user action. If the machine is going to do any thing, it should start within 7 seconds, or give progress reports. If a design needs a screen, many designers use plain text.

APPLICATIONS OF EMBEDDED SYSTEM:

  • Automatic Teller Machine (ATM).
  • Cellular telephones and telephone switches.
  • Computer network Equipment , including router and fire wall.
  • Computer Printer .
  • Disk drive .
  • Engine controller and antilock break controller for automobiles.
  • Home auto machine products, like thermostat sprinkler, and security monitoring . . systems.
  • Handheld Calculator.
  • Household appliance, including, Microwave oven,washing machine , television sets, DVD players/recorders.
  • Inertial guidance system for air-craft and missile.
  • Medical Equipment.
  • Multi function Wristwatches.
  • Personal digital assistants.
  • Programmable logic control for industrial automation and monitoring.
  • Video game console.

CONCLUSION:

In this paper we had tried to cover the fundamental principles of embedded systems used in modern digital instruments. In modern world the major problem with present desktop system is that they are very bulky in size to they cause severe problem in their decomposition. But as the embedded system does same task with smaller size made then vary useful for electronic instruments and many others. So it’s the most crucial thing which will become the heart of every electronic device in feature.

REFERENCES:

  1. http://www.bambooweb.com/articles/e/m/embedded system.html
  2. http://www.oranetech.com/

By,

D.GOWRI
Y. SUJALA

II B.Tech,  E.C.E.,

Editorial Team
Editorial Team

We are a group of young techies trying to provide the best study material for all Electronic and Computer science students. We are publishing Microcontroller projects, Basic Electronics, Digital Electronics, Computer projects and also c/c++, java programs.

Leave a Reply

Your email address will not be published. Required fields are marked *

Get the latest updates on your inbox

Be the first to receive the latest updates from Codesdoc by signing up to our email subscription.

    StudentProjects.in