Meeting
the Need for Specialist Training
The
courses in this curriculum are designed to train engineers both
in good analysis and design techniques, and in good C and C++ programming
practices applicable to real time and embedded systems projects
using microcontroller families such as PIC, 8051 and C167. You can
chose courses targeted at specific processors, or take a "generic"
course if you prefer.
If you need to
work even closer to the metal, we also offer courses in Interfacing,
assembly language programming, and data acquisition and control
buses.
Most
C and C++ training courses on the market are intended for programmers
developing traditional commercial Information Systems on PCs running
a Microsoft Operating System, or servers and workstations running
UNIX or Linux. However, the design and programming of real-time
and embedded systems require skills not normally taught by such
courses: the need to meet hard real-time deadlines, the requirement
to interact closely with hardware, the constraints imposed by short
word lengths and very small memory footprints, and so on.
Also, developers
of a real time or embedded system need to be able to operate at
several levels of detail at once. On the one hand they need to understand
the characteristics of the devices or processes being modeled and
controlled, and yet at the same time they need to be capable of
developing high level abstractions and their associated data structures
and algorithms that are so vital to designing large, well structured
and maintainable applications.
Object oriented
approaches can be of help in some situations, but for many applications
they do not offer much advantage over more traditional approaches
such as those described by Ward and Mellor, or by Hatley Pirbhai.
|