Customer Reviews


9 Reviews
5 star:
 (4)
4 star:
 (2)
3 star:
 (1)
2 star:
 (1)
1 star:
 (1)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 
Only search this product's reviews

The most helpful favorable review
The most helpful critical review


28 of 32 people found the following review helpful:
5.0 out of 5 stars Great guide to developing embedded systems
This book is the much needed update to the book on embedded systems also published by O'Reilly. This book assumes that the reader already has some programming experience and is at least familiar with the syntax of the C language. It also helps if you have some familiarity with basic data structures, such as linked lists. The book does not assume that you have a great deal...
Published on November 8, 2006 by calvinnme

versus
26 of 28 people found the following review helpful:
3.0 out of 5 stars Good book, bad development kit
Presents a good introduction to embedded system programming; no complaints there. However, their choice of development kit is poor. The Arcom (now EuroTech) kit is $600, rather than the $300 stated in the book. And it took almost 3 weeks for them to respond to a quote request. Fortunately, there are kits available from other vendors (BiPom, Olimex, etc.) which can be...
Published on September 22, 2008 by Clayton Carney


Most Helpful First | Newest First

26 of 28 people found the following review helpful:
3.0 out of 5 stars Good book, bad development kit, September 22, 2008
By 
Clayton Carney (Albuquerque, NM USA) - See all my reviews
(REAL NAME)   
Amazon Verified Purchase(What's this?)
This review is from: Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition (Paperback)
Presents a good introduction to embedded system programming; no complaints there. However, their choice of development kit is poor. The Arcom (now EuroTech) kit is $600, rather than the $300 stated in the book. And it took almost 3 weeks for them to respond to a quote request. Fortunately, there are kits available from other vendors (BiPom, Olimex, etc.) which can be substituted for less than $300. However, the impracticality of using the Arcom kit robs the book of its purpose of being a hands-on, guided tutorial.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


28 of 32 people found the following review helpful:
5.0 out of 5 stars Great guide to developing embedded systems, November 8, 2006
This review is from: Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition (Paperback)
This book is the much needed update to the book on embedded systems also published by O'Reilly. This book assumes that the reader already has some programming experience and is at least familiar with the syntax of the C language. It also helps if you have some familiarity with basic data structures, such as linked lists. The book does not assume that you have a great deal of knowledge about computer hardware, but it does expect that you are willing to learn a little bit about hardware along the way. This is, after all, a part of the job of an embedded programmer.

The book contains 14 chapters and 5 appendixes. The chapters can be divided into two parts. The first part consists of Chapters 1 through 5 and is intended mainly for newcomers to embedded systems. These chapters should be read in their entirety and in the order that they appear. This will bring you up to speed quickly and introduce you to the basics of embedded software development. After completing Chapter 5, you will be ready to develop small pieces of embedded software on your own.

The second part of the book consists of Chapters 6 through 14 and discusses advanced topics that are of interest to inexperienced and experienced embedded programmers alike. These chapters are mostly self-contained and can be read in any order. In addition, Chapters 6 through 12 contain example programs that might be useful to you on a future embedded software project.

Throughout the book, the authors strike a balance between specific examples and general information. Minor details have been eliminated making the book more readable, at least in my opinion. You will gain the most from the book if you view the examples primarily as tools for understanding important concepts. Try not to get bogged down in the details of any one circuit board or chip. If you understand the general C programming concepts, you should be able to apply them to any embedded system you encounter. To focus the book's example code on specific concepts, these examples have been left intentionally incomplete. For example, certain include files and redundant variable declarations are omitted. For complete details about the code, you can refer to the full example source code on the book's web site. I discuss this book further in the context of its table of contents:

Chapter 1, Introduction - Explains the field of embedded programming and lays out the parameters of the book, including the reference hardware used for examples.

Chapter 2, Getting to Know the Hardware - Shows how to explore the documentation for your hardware and represent the components you need to interact with in C.

Chapter 3, Your First Embedded Program - Creates a simple blinking light application that illustrates basic principles of embedded programming.

Chapter 4, Compiling, Linking, and Locating - Goes over the ways that embedded systems differ from conventional computer systems during program building steps, covering such issues as cross-compilers.

Chapter 5, Downloading and Debugging - Introduces the tools you'll need in order to iron out problems in both hardware and software.

Chapter 6, Memory - Describes the different types of memory that developers choose for embedded systems and the issues involved in using each type.

Chapter 7, Peripherals - Introduces the notion of a device driver, along with other coding techniques for working with devices.

Chapter 8, Interrupts - Covers this central area of working with peripherals.

Chapter 9, Putting It All Together - Combines the concepts and code from the previous chapter with convenience functions and a main program, to create a loadable, testable application.

Chapter 10, Operating Systems - Introduces common operating system concepts, including tasks and synchronization mechanisms, along with the reasons for adding a real-time operating system.

Chapter 11, eCos Examples - Shows how to use some features of the eCos real-time operating system.

Chapter 12, Embedded Linux Examples - Accomplishes the same task as the previous chapter, but for the embedded Linux operating system.

Chapter 13, Extending Functionality - Describes options for adding buses, networking, and other communication features to a system.

Chapter 14, Optimization Techniques - Describes ways to decrease code size, reduce memory use, and conserve power.

Appendix A, The Arcom VIPER-Lite Development Kit - Describes the board used for the examples in this book and how to order one for yourself.

Appendix B, Setting Up Your Software Development Environment - Gives instructions for loading the software described in this book on your host Windows or Linux computer.

Appendix C, Building the GNU Software Tools - Shows you how to compile the GNU development tools

Appendix D, Setting Up the eCos Development Environment - Shows you how to build an eCos library appropriate for your embedded system so you can compile programs to run on your system.

Appendix E, Setting Up the Embedded Linux Development Environment - Describes how to install the embedded Linux tools for your Arcom system and build and run a program on it.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


18 of 20 people found the following review helpful:
4.0 out of 5 stars Great Introduction to Embedded Systems Programming., December 16, 2006
This review is from: Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition (Paperback)
This book gives an excellent overview of programming embedded systems. It provides numerous examples of real-world hands-on embedded programming. I'd recommend that you have experience in C. Experience with operating systems concepts (such as interrupt service routines) would also be helpful.

Unlike usual programming books, you won't be able to pick up the book, download something, and start working. You'll need to have an embedded system that you can use. The authors use a system from Arcom that will run you about $300. I've not used it and was very wary about it when I first started reading, but as I read through the various examples I gained a great appreciation for the system. It looks like a great way to gain hands-on experience with embedded programming.

Before getting this book I read through the Lego Mindstorm NXT documentation and felt very lost. I didn't understand the symbols on the schematics and they used strange acronyms (like I2C and PWM). I also have an Iguanaworks USB infrared transceiver. I bought it to use in a MythTV system I am building. This book has enabled me to understand the schematics of both the Mindstorm and the transceiver as well as the documentation of both systems. I now feel ready to do my own embedded systems programming.

That said, I did not like everything in this book. They gloss over areas that I felt would have helped me (such as how to use a JTAG adapter and how to create an interrupt service routine under Linux). There are areas where the writing does not flow well and is redundant. The book switched from using an embedded x86 processor in the first edition to using an ARM processor in the second and there are still references to the old processor.

Even with its faults I am glad I got this book. It filled in many of the gaps that I have as a software engineer who is wanting to learn about embedded systems programming. I feel a whole new world has just been opened up to me and I can't wait to jump in.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


11 of 12 people found the following review helpful:
1.0 out of 5 stars Possibly a good book if updated, October 3, 2009
Amazon Verified Purchase(What's this?)
This review is from: Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition (Paperback)
I purchased this book in an effort to learn how to program embedded systems. When I opened the book I quickly realized that the true strength of this book's potential lies in it's ability to pattern it's teaching off of an embedded development kit that I would need to purchase separately.
I was okay with this and called the dev kit manufacturer from the appendix - arcom and tried to purchase the hardware development kit so I could follow along with the book.

The Arcom distributor for my area indicated that the kit used by this book for this second edition was not only obsoleted but end of lifed and not available for purchase.

This made me quite sad since without the hardware development environment this book becomes practically useless. That is a real shame. Perhaps the authors simply need to locate a dev kit that is available to their readers and do an update?

As a previous embedded developer and hardware engineer I could probably go through the text and learn a handful of techniques, but embedded programming for me has always required some hardware platform.
This is such a shame....

After being a loyal Seattle Amazon customer for so many years, I felt so strongly that this is my very first review after literally dozens and dozens of Amazon purchases. This is the very first time I felt my money was unfortunately wasted.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


3 of 3 people found the following review helpful:
2.0 out of 5 stars Tied..., January 28, 2011
By 
Amazon Verified Purchase(What's this?)
This review is from: Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition (Paperback)
This book is too tightly bound to the development kit. If you don't want to buy that kit, then you're sort reduced to reading the book and hoping it sinks in.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


2 of 3 people found the following review helpful:
4.0 out of 5 stars Learning Tool for a Foundation Course, May 6, 2008
By 
Vincent Socci (Endicott, NY USA) - See all my reviews
(REAL NAME)   
This review is from: Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition (Paperback)
If you are just getting into embedded systems and you want to understand the myriad of interacting concepts, this book is a good start. You will get a solid overview of the basic elements, such as hardware, software tools and techniques, memory and peripherals, processing controls and design strategies.

As with any embedded systems book, there has to be some alignment with specific hardware and application examples. The author uses these examples to tie together embedded elements, but the integration is a bit choppy.

The book is organized as a general introduction to embedded systems. About half the book describes the system elements and about half provides full system examples. A single book cannot cover all topologies and development platforms, so I wouldn't recommend it for someone who is trying to solve a specific problem on his/her embedded application. For cases like that, your vendors and FAEs are probably your best bet.

So if you are trying to learn embedded systems development, this is a great resource. If you intend to use it to guide a current project or debug an embedded problem, it may become more of a distraction.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5.0 out of 5 stars Like it, October 24, 2011
This review is from: Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition (Paperback)
I particularly like the way how the book is written. It's good to see some of the fundamentals of embedded system are put together.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


3 of 5 people found the following review helpful:
5.0 out of 5 stars Good Introductory Book to 32-bit Embedded Programming, March 23, 2009
This review is from: Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition (Paperback)
Embedded system requires very diversified skillsets and I don't believe all of them can be covered in one book. In my opinion, the skilset of embedded system programming can be loosely grouped into two categories which are 8-bit and 32-bit. Engineers writing software for 8-bit microcontroller would usually be more involved in hardware details such as keypad debouncing, soft I2C etc. On the other hand, their 32-bit counterpart would spend more time designing more complex software that may includes bootloader, structured programming and RTOS. This book is more appropriate for those who intend to use 32-bit processor i.e. ARM rather than 8-bit microcontrollers i.e. 8051 and PIC.

I had quite some years of experience developing PIC/8051 firmware on Windwos platform, but did not had any experience on Unix. I found the book is particular useful in introducing building project on Unix platform, it is brief, but that's exactly what I wanted - short and simple.

Chapters on hardware, tool chain, memory, interrupts and RTOS are quite fundamental but could come handy to beginner in embedded world despite there are many other books that excel in these areas. However, I found Chapter 7 "Peripherals" is well written to teach you how to write a device driver. I believe this is something new to learn for engineers with either software or hardware background. Hardware engineers tend to access the hardware registers directly. On the other hand, softawre guys may not be familiar with low-level hardware. The authors talked about the device driver philosophy and elaborate on how to use struct and bitfield to provide hardware abstraction. Finally, a serial port device driver is presented as an example.

As a conclusion, this is a very good introductory book to 32-bit embedded programming, or better still if you use Unix/Linux/eCOS. For those who want to learn deeper about RTOS and hardware (say, how to write soft I2C, keypad/button debounce, LCD driver), you wouldn't gain much from this book.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


3 of 7 people found the following review helpful:
5.0 out of 5 stars A classroom and lending collection standard., December 10, 2006
This review is from: Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition (Paperback)
Programming Embedded Systems with C and GNU Development Tools appears in its second updated edition to include even more real-world and Linux examples, and is a recommended pick for programmers with a familiarity with C. It's been used as a college textbook and covers everything from basic debugging skills to determining the applications and needs of real-time projects. In updating details and clarifying routines, the 2nd edition of Programming Embedded Systems should be considered both a classroom and lending collection standard.

Diane C. Donovan
California Bookwatch
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


Most Helpful First | Newest First

This product

Programming Embedded Systems: With C and GNU Development Tools, 2nd Edition
Used & New from: $79.95
Add to wishlist See buying options