Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Duration 14 hours
Course Outline
Introduction
- Defining the concept of design
- Distinguishing between C and Embedded C
The Life-Cycle of an Embedded Application
- The development workflow
- Maintenance procedures
- The extended life cycle
Design Tools
- Open source versus proprietary solutions
- Compilers, assemblers, and linkers
- Libraries
- Debuggers
- Simulators
- Integrated Development Environments (IDEs)
Embedded Design Challenges
- Design constraints in embedded computing
- Cost-effectiveness
- Performance and efficiency
- Power consumption
- Thermal management
Establishing Design Goals
- Maintaining simplicity
- Specifying system functionality
- Determining program logic and structure
System Reliability
- Inspection and maintenance strategies
- Uptime requirements
- Identifying points of failure
Code Reusability
- Design without redundancy
Code Abstraction
- Information hiding
- Context-free modules
Code Modularization
- Decomposition
- Loose coupling
- Strong cohesion
- Acyclic dependencies
Code Maintainability
- Readability
- Testability
- Configurability
- Performance enhancements
Hardware Considerations
- Scalable Thermal Design Power (TDP)
- Integrated graphics
- Additional factors
Summary and Conclusion
Requirements
- Fundamental knowledge of embedded systems
- Prior experience in Embedded C programming
- A solid grasp of electronics fundamentals
Intended Audience:
- Software Developers
Testimonials (2)
The explanations and interactivity of the trainer, he really brought the subject well; and even-though I was probably not experienced enough, I did learn a lot from it!
Pieter Bruynseels - Spot Buy Center BV
Course - Design Patterns
I liked the platform we used. It was really nice and easy to use. I liked the typescript section, the part about namespaces and modules.