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.
Course Outline
Introduction
- Understanding design
- Differences between C and Embedded C
The Lifecycle of an Embedded Application
- The development process
- The maintenance process
- The extended lifecycle
Design Tools
- Open source versus proprietary options
- Compilers, assemblers, and linkers
- Libraries
- Debuggers
- Simulators
- Integrated Development Environments (IDEs)
Challenges in Embedded Design
- Constraints in embedded computing design
- Cost implications
- Performance and efficiency metrics
- Power consumption
- Thermal management
Establishing Design Goals
- Prioritizing simplicity
- Defining functionality
- Outlining program logic and structure
System Reliability
- Inspection and maintenance protocols
- Uptime requirements
- Identifying points of failure
Code Reusability
- Designing for redundancy-free operations
Code Abstraction
- Information hiding
- Context-free modules
Code Modularization
- Decomposition
- Loose coupling
- Strong cohesion
- Acyclic dependencies
Code Maintainability
- Readability
- Testability
- Configurability
- Facilitating performance upgrades
Hardware Considerations
- Scalable Thermal Design Power (TDP)
- Integrated graphics
- Other factors
Summary and Conclusion
Requirements
- Fundamental knowledge of embedded systems
- Practical experience with embedded C programming
- A grasp of basic electronics principles
Audience:
- Software developers
14 Hours
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
That we could you real life examples