Product Details
Advanced PIC Microcontroller Projects in C: From USB to RTOS with the PIC 18F Series

Advanced PIC Microcontroller Projects in C: From USB to RTOS with the PIC 18F Series
By Dogan Ibrahim

List Price: $39.95
Price: $35.95 & eligible for FREE Super Saver Shipping on orders over $25. Details

Availability: Usually ships in 24 hours
Ships from and sold by Amazon.com

32 new or used available from $27.92

Average customer review:

Product Description

This book is ideal for the engineer, technician, hobbyist and student who have knowledge of the basic principles of PIC microcontrollers and want to develop more advanced applications using the 18F series.
The architecture of the PIC 18FXXX series as well as typical oscillator, reset, memory, and input-output circuits is completely detailed. After giving an introduction to programming in C, the book describes the project development cycle in full, giving details of the process of editing, compilation, error handling, programming and the use of specific development tools. The bulk of the book gives full details of tried and tested hands-on projects, such as the 12C BUS, USB BUS, CAN BUS, SPI BUS and real-time operating systems.

* A clear introduction to the PIC 18FXXX microcontroller's architecture
* 20 projects, including developing wireless and sensor network applications, using I2C BUS, USB BUS, CAN BUS and the SPI BUS, which give the block and circuit diagram, program description in PDL, program listing and program description.
* Numerous examples of using developmental tools: simulators, in-circuit debuggers (especially ICD2) and emulators
* A CDROM of all the programs, hex listings, diagrams, data sheets and tables


Product Details

  • Amazon Sales Rank: #70550 in Books
  • Published on: 2008-04-09
  • Original language: English
  • Number of items: 1
  • Binding: Paperback
  • 560 pages

Features


Editorial Reviews

From the Back Cover
Over 20 projects for the PIC18 included in this book!

Microchip's PIC18 offers a world of possibilities from LEDs to voltmeters to real-time operating systems (RTOSs). Filled with projects, this book starts the reader with an overview of the basic features of microcontrollers followed by a review of the PIC18 series in depth. Also, included is a brief tutorial on the C programming language. The mikroC compiler is used throughout the book with a chapter devoted to its functions and libraries. Currently available development kits are discussed including simulators, emulators, and in-circuit debuggers with examples of what these tools can bring to a project. All of this is in preparation for the challenging projects that you will find between these covers.

Advanced PIC18 projects include:
.SD Card projects such as: Read CID Register and Display on a PC Screen
.USB-based projects such as: USB-based Microcontroller Input/Output
.CAN bus projects such as: Temperature sensor
.RTOS projects such as: Random number generator



The accompanying CD-ROM contains source files and HEX files for all of the projects and a limited-version of the mikroC compiler.

About the Author
Dogan Ibrahim works for the Traffic Control Systems Unit in London, UK. He was formerly a lecturer at South Bank University and Head of Department at Near East University, Cyprus in the UK.


Customer Reviews

Broad coverage, well-written, but maybe not worthy of the title "advanced"4

This book is well-written and is of the "something for everybody" variety.

Actually as I review the contents of the book, I realize how much ground was covered. There are a lot topics in this book that are directly on-target for a lot of practicing engineers.

As an example, in the last 12 months (before having this book at my fingertips, actually), I implemented USB, SD card functionality, CAN and an RTOS. All of these topics, and more, are covered in this single book.

I will say that the material is not covered in depth, and does seem to betray the "advanced" moniker in the title. The other ding on the book is that it is heavily geared towards the mikroC compiler, which is not very well-known or respected in the PIC community.

Chapter 1 covers the requisite "introduction to computers & microcontrollers" topics, such as number systems, memories, etc.. This will be review / skippable for most readers, but it's good that the author included it.

Chapter 2 is a good survey of the PIC18F. Sure, most of the information is in the datasheets, but here in the book it's digested/summarized, and in some cases, in my opinion, explained better than the Microchip documentation. Worth the read.

Chapter 3 covers the C programming language. I glossed over this chapter, since I've been using C for more than half of my life.

Chapters 4 and 5 cover the mikroC compiler, which is included with the book (limited version), as well as the libraries, development toolset & some sample code. Worth some time, especially if you're new to the toolset. If the author hadn't used this toolset, these chapters wouldn't be as necessary.

Chapter 6 starts with some simple projects. Blinking LEDs, serial communications, basic electronics.... well done but experienced readers will breeze through the material. "Advanced" does not apply to this chapter (its title says as much - "Simple PIC18 projects")

Chapter 7 is more advanced & covers the hardware & firmware aspects of implementing SD-card functionality on an embedded system. There is enough non-PIC-specific information to make this chapter alone worthwhile to anyone implementing SD, even with another microcontroller family. It discusses the SPI interface to the card and card read/write operations (using the mikroC toolset however.) I wish the author had developed more "bare-metal" code, however, as opposed to relying on mikroC libraries.

Chapter 8 covers USB. Again, the material is broad and will be useful to many people, even those not implementing USB with a PIC as is done in the book.

Chapter 9 covers CAN, which is becoming more & more prevalent. Not a substitute for reading the actual CAN specifications, but a very good survey of the topic. What I like about the book, in many of the chapters, simple schematics are provided. These schematics help bring the reader all the way down to the hardware in a gentle way. It's very important to understand this level of detail when developing an embedded sysem, and the author has clearly kept this in mind.

Chapter 10 discusses multi-tasking, RTOSs, state machines and a specific kernel from CCS. Most of the concepts are general & broad enough that they apply regardless of the reader's choice of kernel. A simple multitasking example ties everything together at the end of the book.

Altogether, a solid effort, aimed at beginner to junior embedded staff. The book's language is clear, the drawings are plentiful and the included development tools are enough to begin working & tinkering right away.

Just beware - if you're comfortable with a scope & the PIC family, there is not a lot of PIC material or code that will be entirely new to you. You might pick up some knowledge on USB, CAN, multi-tasking, etc... however.

At The Very Least, It's Current Technology For A Change !!4
I have mixed feelings about this book so far. The first couple of chapters were very elementary but I enjoyed reading them as it explained, quite well, some things I didn't pick up from other books. What followed was something resembling a command and language reference. The commands were sparsely illustrated with sample code and I think these chapters, although useful, should have gone to the back of the book as appendices. I also note that these commands were far more advanced than the the introductory projects that followed so it kind of gave the reader a backward, throw them in the deep end first, introduction. These chapters 3 and 4 should have followed chapter 5 and 6, in my opinion and I'd even recommend the reader work through the book in that order. The very first real project, Example2.C had no comments in it so the reader is left to fend for themselves on understanding that one. Chapter 6 gets into some basic projects with excellent comments but I can see where advanced users would be put off by their simplicity. The book however wastes no time in getting into advanced topics using modern up-to-date technology such as USBs and SD cards. I can't agree with other reviewers that the book is not advanced. Certainly the state of the technology employed is. Another reviewer suggested the USB project was written in Basic. As far as I can see, only the front end was written in Visual Basic and I can't see too many professional programmers complaining about that. VB is often the language of choice for Windows based graphical interfaces. I haven't gotten there quite yet though, but, am looking forward to it. That's the biggest strength of this book: It's 2008 not 1998 !! What a relief that is to see something current.

Not a good choice.2
Although there aren't any books related with C programming for the PIC18F family, I would not recommend this book. I expected a more serious and detailed approach of building a C project for these microcontrollers avoiding to use ready made C libraries of a specific compiler like microC. I would only recommend this book to novice programmers and especially to those owning the microC compiler. The term "advanced" does not fit in this book. I have found much more advanced topis and learned searching the Internet rather than having bought and read this book. It's a pitty but I was expecting a more vertical approach.