Programming 16-bit Microcontrollers in C: Learning to Fly the PIC24
Microchip’s 16-bit dsPIC and PIC24 fit in the class of digital signal controllers. They were designed to support C so it is not surprising that Lucio Di Jasio chose to highlight PIC24 in C or that the accompanying CD has a free copy of the C30 compiler (that is also available as a download from Microchip’s website). The book follows a pilot’s theme starting each chapter with a flight plan, pre-flight checklist, flight, post-flight checklist and then usually Notes for C Experts and Tips and Tricks. The whole book is as well-planned and executed as the chapter layout indicates. The first few chapters cover C basics but in the context of the PIC24 so details like loops and variable types address the limitations of the PIC24. After that Di Jasio moves onto more interesting topics like interrupts and memory allocation again touching upon details of the PIC24. Each flight typically includes useful sample applications in the mix. No stone is left unturned. The book hits flash memory, communications, LCD support, and analog-to-digital converter support. The Dark Screen chapter was an interesting diversion and handy if you want to know how to bit bang a composite video signal. This chapter is rather impressive in its depth and completeness. The book wraps up with useful chapters on interface to mass storage devices including file IO support. Finally it touches on timers and PWM support suitable for a media player. Of course, all of this is done in C so you get to learn all about the PIC24 in the language you will likely be programming in. Unless you are a C30 and PIC24 wiz already, pick up this book before beginning work with one.