Get in Touch
 Duration 14 hours

Course Outline

Introduction

  • Concepts of design
  • Distinguishing C from Embedded C

The Lifecycle of Embedded Applications

  • Development workflows
  • Maintenance procedures
  • Extended lifecycle considerations

Design Tooling

  • Comparison of open-source and proprietary solutions
  • Compilers, assemblers, and linkers
  • Standard libraries
  • Debugging tools
  • Simulation environments
  • Integrated Development Environments (IDEs)

Embedded Design Challenges

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

Establishing Design Objectives

  • Principles of simplicity
  • Defining system functionality
  • Structuring program logic and architecture

System Reliability

  • Inspection and maintenance strategies
  • Uptime and availability requirements
  • Identifying failure points

Code Reusability

  • Designing without redundancy

Code Abstraction

  • Implementing information hiding
  • Creating context-independent modules

Code Modularization

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

Code Maintainability

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

Hardware Considerations

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

Summary and Conclusion

Requirements

  • Familiarity with basic embedded systems
  • Experience with embedded C programming
  • A solid grasp of electronics fundamentals

Target Audience:

  • Software Developers

Number of participants


Price per participant

Testimonials (2)

Upcoming Courses

Related Categories