|
|
|
|
Embedded Systems Training Overview
Programming for embedded systems is an entirely different discipline from traditional “desktop” or main-frame programming. An embedded system must be able to respond to external events in a predictable, reliable way. Real-time programs must not only execute correctly, they must execute “on time”. A late answer is a wrong answer.
Multitasking has proven to be a powerful paradigm for building reliable and understandable real-time programs. This intensive three-day seminar provides a practical introduction to the concepts of multitasking with particular emphasis on embedded applications.
Through a combination of lectures and practical hands-on lab work, seminar participants will gain a fundamental understanding of real-time programming principles and techniques for applying these principles to real-world design problems. Each participant receives a development kit consisting of:
Integrated software development environment (IDE)
Single-board computer with:
- 186-class processor
- 128 kbytes of Flash memory and
- 32 kbytes of static RAM
- Two serial ports with cables
- Digital and analog I/O
In addition to writing embedded applications, you’ll learn to design and code interrupt-driven device drivers. You’ll also learn a wide range of techniques for debugging and troubleshooting multi-tasking code.
Finally, we go “under the hood” to explore the design and implementation of MicroC/OS, a typical pre-emptive multitasking kernel. By examining the internal workings of a multitasking kernel, you gain valuable insights into the nature of preemptive programming, its benefits and challenges.
Embedded Systems Training Course duration
3 Days
Embedded Systems Training Course outline
- What is a real-time embedded
system?
- Review of real-time programming background
and theory
- Tasking model
- Inter-task communication - Solving the
Resource Sharing Problem
- Real-time design issues
- Problems with Solving the Resource Sharing
Problem
- The Paradigm Embedded IDE
- Introducing MicroC/OS
- Hardware and target dependencies
- Building and running a data acquisition
application
- Debugging Embedded Systems
- Design and Implementation of MicroC/OS
- "Upgrades" to MicroC/OS
- Writing an interrupt-driven device driver
|
|
|
|
|