- Amazon Student members save an additional 10% on Textbooks with promo code TEXTBOOK10. Enter code TEXTBOOK10 at checkout. Here's how (restrictions apply)
Programming 8-bit PIC Microcontrollers in C: with Interactive Hardware Simulation Paperback – Jul 15 2008
|New from||Used from|
Special Offers and Product Promotions
Customers Who Bought This Item Also Bought
To get the free app, enter your e-mail address or mobile phone number.
About the Author
Martin Bates is one of the leading authors specializing in introductory level texts on PIC microcontrollers for the academic, professional and hobby markets, with 20 years’ experience of teaching microprocessor systems.
Inside This Book(Learn More)
Top Customer Reviews
However, what the book doesn't outright tell you is that the compiler (CCS) costs ~$150 and if you want to use a free compiler, the code in this book doesn't work. I'm now considering buying another book on C (XC8 Compiler) or using AVR microcontrollers.
Most Helpful Customer Reviews on Amazon.com (beta)
This was the book that "got me over the hump" and I am now comfortably programming PIC microcontrollers in C using the CCS compiler. Overall, I am very happy with this purchase and think that the price is very reasonable for the knowledge that you gain from this text.
If you know about embedded systems, you know that they are the most basic elements of circuitry. All they are is a chip and you have to figure out how to make it "Go" and do something useful. Just getting it to turn on takes an organized act of programming and hardware together. By contrast, most books on learning C programming start with the almost famous printf ("Hello World"); program that requires not only that the processor be running, but that it have some kind of output device (Monitor, printer, etc.) attached to it and be working. In other words, this is practically impossible to accomplish as you have to have a completely functional system and a high level of proficiency in programming before you can even start to learn how to program. I own a sizable stack of books on learning C and they all subscribe to this same backwards technique and have all proved useless toward actually learning C on embedded systems. Martin Bates book is the first one that I have read that starts with turning the processor on and takes you through turning an LED on which is a realistic example of a first C program with a microcontroller. You already have a half-dozen or so projects under your belt before you see a printf statement, which is the ONLY way to do it in an embedded world.
I don't really have all that much negative to say about this book. It does use the Proteus simulator for most of the projects in the beginning, which I elected not to use and to do it all in actual hardware. I am not interested in trying to learn two tools at the same time, so this caused me to have to "modify" the programs slightly to run on my hardware. This was ultimately a good thing and helped me learn, but it is notable. The middle section of the book uses the actual hardware from the Microchip PICDEM Mechatronics board that has motors and stuff on it, which makes that part kind of fun to do.
Another thing that I would like to address is the other reviews talking about the membership to the website and all of that. This is not a required part of the curriculum and is barely mentioned. I never looked for it as I didn't need it.
I own several microcontroller books, including Bates books about microcontrollers (PICs), the one before this one (the assembler one).
I have a good programming background in assembler for these micros, the mid range and base range (16Fs and 12Fs) so I know the architecture of several micros (including the new 16F887). Actually, if you know a little of PICs architecture you know it's very much the same on all the "product line".
I've programmed in BASIC with PICBASIC PRO, and know how the code generates (32 bytes of RAM just to use the compiler) but lately I wanted to learn another programming language for the Microchip PIC. Since I use 12F, 16F and 18F series I wanted a good compiler and I was between the FED C (from Dogan Ibrahim books) and the CCS (from several forums and the fact it can run in MPLAB). I own Prata's C PRIMER PLUS and "The white book" (K&R second edition) and have read a little, so if I see a program, I think I can understand it.
That been said, let's get to the book:
Bates does a great job of presenting the programming basics (for, while, if, switch, etc) with the CCS compiler, as he presents the program, comments on it (explains how it works) and provides several pointers on each subject. He also proposes several exercices at the end of each chapter.
After the explanation with respect to the programming fundamentals, he goes into the modules of the PIC (again, using CCS) and does a good job of explaining the program and also the inner workings of the modules.
If you have 150 dollars you could get the mechatronics development board from Microchip (I own it), since one of the chapters is devoted to it.
He states that you need almost no programming experience to get results from this book, and he might be right but, I think you must have some.
You could like CCS or not; comming from assembler I want to know where I put every BYTE and every BIT, I can tell you that CCS it's not a very good compiler (for the beginner it might be) because of the definitions but, that does not mean that BATES did not produce a very good book.
Anyone that want's to make the transition from Assamler to C (PICs) should get this book.
Please forgive my english, it's very rusty.
Look for similar items by category
- Books > Computers & Technology > Hardware > Microprocessors & System Design > Embedded Systems
- Books > Computers & Technology > Hardware > Microprocessors & System Design > PIC Microcontroller
- Books > Computers & Technology > Programming > C
- Books > Computers & Technology > Programming > Languages & Tools
- Books > Professional & Technical > Engineering > Electrical & Electronics > Electronics
- Books > Science & Math
- Books > Textbooks > Computer Science & Information Systems > Programming Languages
- Books > Textbooks > Engineering > Electrical & Electronic Engineering