Full description not available
C**E
This is the best introductory book on embedded systems programming.
This is the best introductory book on embedded systems programming I have ever seen and I have seen a lot of them !Dec 2018 update : I want to elaborate on that a bit since I have been looking for good books on the topic for many years and this is still the best one I have found.I really liked the specific audience this book is aimed at. It does not try to explain the C programming language or how an "if statement" works or any basics like that, there are plenty of books and online tutorials on how to do that after all. What it does do is cover extremely well the parts of C programming which is DIFFERENT when you work on an embedded system, so the standard C tutorials you will find on the web will explain the semantics for you but will not warn you about how this tends to go wrong specifically in embedded systems.The book is quite thorough so it can also teach even very experienced embedded engineers a thing or two which may be missing from their education - I liked the section on Taylor Series as an example of this.The main areas of focus I felt were also well chosen, start with Architecture and Design first, Basic I/O and Timers, Program Structure, Peripherals, Boot Loaders, Optimization, a very important chapter on Math and then Power Saving.I think that is a great list of topics where approaching them on an embedded system is really very different from doing this on a Laptop or PC running an operating system.
N**S
best book for getting started with embedded development
excellent overview of embedded development!perfect for newbies looking to understand what it's all about - and existing embedded devs looking for a reference / refresher...In addition to covering system architecture - it also covers real-world stuff like:-Why some math operations are slow on microcontrollers (and how you can work around that)-How to make a power budget-How to read a spec sheet-How to debug things-How interrupts workThis book gets pretty technical - but manages to do so without being brutal / off-putting.It's a fake-it-till-you-make-it world... If you can figure out how to load sample code on an Arduino - studying this book might be enough to convince yourself (and maybe a startup) - that you can do embedded development professionally.If there's anything this book doesn't cover in-depth it might be stuff related to "realtime" (RTOS) / concurrency.Highly recommended!
J**E
Written for the software guys.
There's two sides to the embedded coin - hardware and software. On bigger projects, there's often a team of hardware guys and a team of software guys discriminately working on their respective sides. Yin and yang. This book is written for people who want to be the software guys. There's a chapter about hardware and how to read a datasheet and other things that will help a software guy work well with a hardware guy. There's discussions on peripherals and common embedded protocols and other embedded applications. The author assumes the reader knows a decent amount about software.As a hardware guy who was looking into learning more about embedded software, I still took quite a bit from this book. In particular, liked the discussion on state machines and communication protocols. The author's casual tone kept typically-dry material interesting. I only wish this book was longer and went into more depth.I'd reccommend checking out the author's podcast on embedded systems - just seach for "embedded.fm".
J**T
The book I wish I had starting in embedded systems.
Covers a lot of important topics that every embedded engineer should know. This is a great book in that it gives you background knowledge of things you need to know or go out and learn without getting bogged down with too many details. The idea of describing design patterns is a good one, though some of them seem a little too abstract and like they're trying too hard (like factory patterns) to formalize ideas into some universal pattern or structure.The fact there is a math section and a low power section near the end is really cool and very useful.My main issue with this book is that there are several errata (many are listed on the publisher website) that are known about but they have not bothered doing a reprint. Another issue is that some things are not explained enough so you cant tell if it is an error or intentional. For example in the bootloaders section there is a function pointer that gets cast and set to a static address. However, as well as the casting there is a dereference of the address before assigning to the function pointer which is not explained.Overall though, I highly recommend this book, plus the author comes across as a nice and cool person.
R**N
Good for newer embedded engineer folk as well as hobbyists
So far, it's a pretty good read. A lot of the examples are "silly," unreal things but still provide some information. Other examples are very good. Mostly pseudocode, but there is also a lot of C and diagrams.I am a "scientific-research oriented" computer scientist (M.S) that recently ended up as an embedded engineer for a company. So, there is a learning curve. This book is pretty good at filling that gap, sometimes it is too simplistic, other times it is just right. But it leans toward the embedded-ignorant while still maintaining a decent technical level. Generally expects the reader to have at least an inclination in technical matters; you need to know a few things about computers before reading this book.It's occasional that they don't sufficiently explain something, however, note the five stars. Recommend pairing it with the Embedded Hardware book by O'Reilly if you need a stronger background on embedded systems / hardware.Now about halfway through and still recommend. Focuses more on understanding concepts than a specific language on a specific OS. Usually uses pseudocode. and black box relationship diagrams.
Trustpilot
2 days ago
2 months ago