The new generation of 32-bit PIC microcontrollers can be used to solve the increasingly complex embedded system design challenges faced by engineers today. This book teaches the basics of 32-bit C programming, including an introduction to the PIC 32-bit C compiler. It includes a full description of the architecture of 32-bit PICs and their applications, along with coverage of the relevant development and debugging tools. Through a series of fully realized example projects, Dogan Ibrahim demonstrates how engineers can harness the power of this new technology to optimize their embedded designs.
With this book you will learn:
- The advantages of 32-bit PICs
- The basics of 32-bit PIC programming
- The detail of the architecture of 32-bit PICs
- How to interpret the Microchip data sheets and draw out their key points
- How to use the built-in peripheral interface devices, including SD cards, CAN and USB interfacing
- How to use 32-bit debugging tools such as the ICD3 in-circuit debugger, mikroCD in-circuit debugger, and Real Ice emulator
Key Features
- Helps engineers to get up and running quickly with full coverage of architecture, programming and development tools
- Logical, application-oriented structure, progressing through a project development cycle from basic operation to real-world applications
- Includes practical working examples with block diagrams, circuit diagrams, flowcharts, full software listings an in-depth description of each operation
Preface
Acknowledgments
Chapter 1. Microcomputer Systems
Abstract
1.1 Introduction
1.2 Microcontroller Systems
1.3 Microcontroller Features
1.4 Microcontroller Architectures
1.5 8, 16, or 32 Bits?
1.6 Number Systems
1.7 Converting Binary Numbers into Decimal
1.8 Converting Decimal Numbers into Binary
1.9 Converting Binary Numbers into Hexadecimal
1.10 Converting Hexadecimal Numbers into Binary
1.11 Converting Hexadecimal Numbers into Decimal
1.12 Converting Decimal Numbers into Hexadecimal
1.13 Converting Octal Numbers into Decimal
1.14 Converting Decimal Numbers into Octal
1.15 Converting Octal Numbers into Binary
1.16 Converting Binary Numbers into Octal
1.17 Negative Numbers
1.18 Adding Binary Numbers
1.19 Subtracting Binary Numbers
1.20 Multiplication of Binary Numbers
1.21 Division of Binary Numbers
1.22 Floating Point Numbers
1.23 Converting a Floating Point Number into Decimal
1.24 Binary Coded Decimal Numbers
1.25 The American Standard Code for Information Interchange Table
1.26 Summary
1.27 Exercises
Chapter 2. PIC32 Microcontroller Series
Abstract
2.1 The PIC32MX360F512L Architecture
2.2 Summary
2.3 Exercises
Chapter 3. C Programming for 32-Bit PIC Microcontrollers
Abstract
3.1 Structure of a Simple mikroC Pro for PIC32 Program
3.2 Functions
3.3 PIC32 Microcontroller Specific Features
3.4 Summary
3.5 Exercises
Chapter 4. mikroC Pro for PIC32 Built-in Library Functions
Abstract
4.1 ADC Library
4.2 LCD Library
4.3 Software UART Library
4.4 Hardware UART Library
4.5 Sound Library
4.6 ANSI C Library
4.7 Miscellaneous Library
4.8 Summary
4.9 Exercises
Chapter 5. PIC32 Microcontroller Development Tools
Abstract
5.1 Software Development Tools
5.2 Hardware Development Tools
5.3 mikroC Pro for PIC32 IDE
5.4 Summary
5.5 Exercises
Chapter 6. Microcontroller Program Development
Abstract
6.1 Using the Program Description Language and Flowcharts
6.2 Examples
6.3 Representing for Loops in Flowcharts
6.4 Summary
6.5 Exercises
Chapter 7. Simple PIC32 Microcontroller Projects
Abstract
7.1 Project 7.1—LED DICE
7.2 Project 7.2—Liquid-Crystal Display Event Counting
7.3 Project 7.3—Creating a Custom LCD Character
7.4 Project 7.4—LCD Progress Bar
7.5 Project 7.5—Shifting Text on LCD
7.6 Project 7.6—External Interrupt-Based Event Counting Using LCD
7.7 Project 7.7—Switch Contact Debouncing
7.8 Project 7.8—Timer Interrupt-Based Counting
7.9 Project 7.9—Temperature Measurement and Display on LCD
7.10 Project 7.10—Playing a Melody
7.11 Project 7.11—Playing a Melody Using Push-Button Switches
7.12 Project 7.12—Generating Sine Wave Using D/A Converter
7.13 Project 7.13—Communicating with a PC Using the RS232 PORT
7.14 Project 7.14—Scrolling LCD Display
Chapter 8. Advanced PIC32 Projects
Abstract
8.1 Project 8.1—Generating High-Frequency Sine Waveform
8.2 Project 8.2—Generating Pulse-Width Modulation Waveform
8.3 Project 8.3—Changing the Brightness of an LED
8.4 Project 8.4—Using a Thin Film Transistor Display
8.5 Project 8.5—Plotting a Graph on the TFT Display
8.6 Project 8.6—Using Secure Digital Cards
8.7 Project 8.7—Storing Temperature Readings in a File on the SD Card
8.8 Project 8.8—Designing a Finite Impulse Response Filter
8.9 Project 8.9—Calculating Timing in Digital Signal Processing
Appendix. MPLAB and PIC32 Compiler
PIC32 Starter Kit Development Board
PIC32 Starter Kit Project
Using the MPLAB PIC32 Compiler
Index
- Di Jasio: Programming 16-Bit Microcontrollers in C, 2e, Newnes, 2011, 396pp, Paperback, ISBN: 9781856178709, $59.95/ £36.99 /€42.95
- Wilmshurst: Designing Embedded Systems with PIC Microcontrollers, 2e, Newnes, 2009, 750pp, Paperback, ISBN: 9781856177504, $49.95/ £29.99 /€35.95
- Bates: PIC Microcontrollers, 3e, Newnes, 2011, 444pp, Paperback, ISBN: 9780080969114, $41.95/ £24.99/ €45.41
Professional electronics engineers, embedded designers and programmers; students taking a course using the 32-bit PIC
Wang, Liu, Wang, Stroe, Fernande