Externally indexed torrent
If you are the original uploader, contact staff to have it moved to your account
Textbook in PDF format
This eBook demonstrates an orderly way of designing embedded software. It works pretty well after preliminary development activities are complete. This design approach is illustrated with a simple, fully implemented example system, including Arduino SAMD M0 source code. The example is an air temperature measurement device, which repeatedly outputs readings over Bluetooth LE. It sounds an alarm and outputs a warning message if the temperature goes above or below defined limits. It might be used in a sauna or with a hair dryer to make sure they don’t get too hot. It could also be used to alert the user when the temperature in a walk-in freezer, wine cellar, or refrigerator truck goes beyond the upper or lower limits.
Design Prerequisites
Embedded software design is best begun after the system requirements, safety analysis, and system hardware have been mostly agreed upon and documented by the project team. The requirements represent the project team interpretation of the needs and wants of the project sponsor. The requirements may be stated in a variety of ways but usually they describe the users of the system, the different ways it can be used, and a list of verifiable statements about the needed capabilities of the system.
The Unified Modeling Language was developed to provide just such a design framework. It was developed primarily for large, object-oriented projects developed for personal computers, and feature-rich electronic products. The methods used in this eBook were motivated by a need to simplify the more elaborate approach taken by UML while providing consistency, and economy of effort for embedded software designers.
The software design of an embedded system project is composed of a preliminary design, choice of a runtime pattern, and a detailed design