Course Outline
Introduction
- What is design?
- C vs Embedded C
The Life-Cycle of an Embedded Application
- The development process
- The maintenance process
- The extended life cycle
Design Tools
- Open source vs proprietary
- Compiler, assemblers and linkers
- Libraries
- Debuggers
- Simulators
- IDEs
Embedded Design Challenges
- Embedded computing design constraints
- Cost considerations
- Performance and efficiency
- Power consumption
- Thermal management
Defining the Design Goals
- Keeping it simple
- Defining the functionality
- Defining the program logic and structure
System Reliability
- Inspection and maintenance
- Uptime requirements
- Points of failure
Code Reusablility
- Redundancy-free design
Code Abstraction
- Information hiding
- Context-free modules
Code Modularization
- Decomposition
- Loose coupling
- Strong cohesion
- Acyclic dependencies
Code Maintainability
- Readability
- Testability
- Configurability
- Performance upgrades
Hardware Considerations
- Scalable Thermal Design Power (TDP)
- Integrated graphics
- Other
Summary and Conclusion
Requirements
- Basic embedded system knowledge
- Embedded C programming experience
- An understanding of electronics fundamentals
Audience:
- Developers
Testimonials
Very good substantive preparation.
Magdalena Szumny
A lot of materials and sources.
Michał Tyndel
A fairly wide resource of knowledge leading, explaining many language regulations from training, arguing many rules for the use of C language.
- PIT-RADWAR S.A.
A large amount of practical information or guidance resulting from the industrial experience of the instructor
- PIT-RADWAR S.A.
Issues on the compiler, linker, and hermetic. The humor of the teacher.
- PIT-RADWAR S.A.
Great knowledge of the lecturer.