Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Hands-On Embedded Programming with C++17

You're reading from  Hands-On Embedded Programming with C++17

Product type Book
Published in Jan 2019
Publisher Packt
ISBN-13 9781788629300
Pages 458 pages
Edition 1st Edition
Languages
Author (1):
Maya Posch Maya Posch
Profile icon Maya Posch

Table of Contents (19) Chapters

Title Page
Copyright and Credits
About Packt
Contributors
Preface
1. What Are Embedded Systems? 2. C++ as an Embedded Language 3. Developing for Embedded Linux and Similar Systems 4. Resource-Restricted Embedded Systems 5. Example - Soil Humidity Monitor with Wi-Fi 6. Testing OS-Based Applications 7. Testing Resource-Restricted Platforms 8. Example - Linux-Based Infotainment System 9. Example - Building Monitoring and Control 10. Developing Embedded Systems with Qt 11. Developing for Hybrid SoC/FPGA Systems 1. Best Practices 2. Other Books You May Enjoy Index

Requirements are not optional


Writing embedded software without having a firm set of requirements for the project is like starting to build a new house without a clear idea of how many rooms it should have, where the windows and doors should be, and where the plumbing and wiring should run.

While you can totally start writing working code and hammer out a functioning prototype in no time, the reality is that these prototypes are usually put into production without having had time to fully consider the life cycle of the product, or those who will have to keep patching up the firmware over the coming years to add features that the original firmware code was never designed for.

 

After completing the requirements that the product has to fulfill, these are then translated into an architecture (the overall structure of the application), which is then translated into a design (what will be implemented). The design is then translated into the actual code.

The advantages of this approach are that not only do you need to answer a lot of questions about why something is done a particular way, it also generates a lot of documentation, which can then be used practically as is once the project is completed.

Additionally, in an embedded project having the full set of requirements can save a lot of money and time as it allows one to pick the right MCU or SoC for the project without having to spend more money on a more powerful than needed chip 'just in case'. It also prevents embarrassing mid-project discoveries where a feature which had been 'forgotten' about suddenly necessitates a change in the hardware design.

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €14.99/month. Cancel anytime}