Get in Touch

Course Outline

Introduction

  • The concept of design
  • Differences between Standard C and Embedded C

The Life-Cycle of an Embedded Application

  • The development workflow
  • Maintenance procedures
  • The extended product life cycle

Design Tools

  • Open-source versus proprietary solutions
  • Compilers, assemblers, and linkers
  • Software libraries
  • Debugging tools
  • Simulation environments
  • Integrated Development Environments (IDEs)

Embedded Design Challenges

  • Design constraints in embedded computing
  • Budget and cost factors
  • Performance optimization and efficiency
  • Energy consumption management
  • Thermal control strategies

Defining the Design Goals

  • Maintaining simplicity in design
  • Specifying system functionality
  • Structuring program logic and flow

System Reliability

  • Regular inspection and upkeep
  • Uptime expectations
  • Identifying potential points of failure

Code Reusablility

  • Avoiding redundancy in design

Code Abstraction

  • Hiding internal details (Information hiding)
  • Creating independent modules (Context-free modules)

Code Modularization

  • System decomposition
  • Ensuring loose coupling between components
  • Achieving strong cohesion within modules
  • Managing acyclic dependencies

Code Maintainability

  • Enhancing code readability
  • Improving testability
  • Facilitating configurability
  • Preparing for performance upgrades

Hardware Considerations

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

Summary and Conclusion

Requirements

  • Fundamental understanding of embedded systems
  • Practical experience with Embedded C programming
  • Knowledge of basic electronics principles

Target Audience:

  • Software Developers
 14 Hours

Testimonials (2)

Related Categories