Get in Touch
 Duration 14 hours

Course Outline

Introduction

  • The concept of design
  • Distinguishing between standard C and Embedded C

The Lifecycle of an Embedded Application

  • The development phase
  • The maintenance phase
  • The extended lifecycle

Design Tools

  • Open source versus proprietary solutions
  • Compilers, assemblers, and linkers
  • Libraries
  • Debugging tools
  • Simulators
  • Integrated Development Environments (IDEs)

Embedded Design Challenges

  • Constraints in embedded computing design
  • Budget and cost factors
  • Performance metrics and efficiency
  • Energy consumption
  • Thermal control

Establishing Design Objectives

  • Maintaining simplicity
  • Specifying system functionality
  • Structuring program logic and architecture

System Reliability

  • Inspection and upkeep procedures
  • Uptime standards
  • Identifying potential failure points

Code Reusability

  • Designing without redundancy

Code Abstraction

  • Implementing information hiding
  • Creating context-free modules

Code Modularization

  • System decomposition
  • Achieving loose coupling
  • Ensuring strong cohesion
  • Maintaining acyclic dependencies

Code Maintainability

  • Enhancing readability
  • Improving testability
  • Facilitating configurability
  • Enabling performance enhancements

Hardware Considerations

  • Scalable Thermal Design Power (TDP)
  • Integrated graphics capabilities
  • Additional hardware factors

Summary and Conclusion

Requirements

  • Fundamental knowledge of embedded systems
  • Practical experience with Embedded C programming
  • A solid grasp of electronics basics

Target Audience:

  • Software Developers

Testimonials (2)

Related Categories