It is hard to overestimate the importance of error handling in regards to embedded software. Embedded systems should work without supervision in varying physical conditions, such as controlling external peripheral devices that may fail over or not always provide reliable communication lines. And in many cases, a failure of the system is either expensive or plain unsafe.
In this chapter, we will learn about common strategies and best practices that will help you write reliable and fault-tolerant embedded applications.
We will cover the following recipes in this chapter:
- Working with error codes
- Using exceptions for error handling
- Using constant references when catching exceptions
- Tackling static objects
- Working with watchdogs
- Exploring heartbeats for highly available systems
- Implementing software debouncing logic
These recipes will help you...