Course Learning Outcomes
- Recognize, enumerate and classify different microprocessor architectures and platforms,
- Remember differences in software development tools and processes for personal computing platforms and embedded systems,
- Use a host-target model to develop software for embedded systems,
- Analyze and debug correctness and timing behavior of embedded software systems,
- Implement basic digital input/output tasks in embedded assembly language,
- Explain how interrupts and timers operate and how they can be used to perform input/output and timing operations within an embedded system,
- Implement real-time embedded software systems using interrupts and timers in a simple microcontroller using the C language,
- Enumerate Analog to Digital conversion methods and describe how they can be used to interface microcontrollers with sensors,
- Implement embedded software systems that interface with sensors through A/D conversion,
- Explain how Real-Time Operating Systems (RTOS) operate and differ from General Purpose Operating Systems (GPOS),
- Explain how schedulers, synchronization and communication tools offered by RTOS’s operate,
- Use an RTOS to design and implement a medium-scale embedded software system for a small microcontroller, using digital I/O, serial communications, A/D, timers and interrupts.