Get in Touch

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)

Related Categories