
Embedded Computing and Mechatronics with the PIC32 Microcontroller
Resources
Description
Key Features
- Extensive, freely downloadable sample code for the NU32 development board incorporating the PIC32MX795F512H microcontroller
- Free online instructional videos to support many of the chapters
Readership
Table of Contents
- Dedication
- Figure Credits
- Preface
- Contents
- Choices made in this book
- The NU32 development board
- How to use this book in a course
- Website, videos, and flipped classrooms
- Other PIC32 references
- Acknowledgments
- I: Quickstart
- Chapter 1: Quickstart
- Abstract
- 1.1 What You Need
- 1.2 Compiling the Bootloader Utility
- 1.3 Compiling Your First Program
- 1.4 Loading Your First Program
- 1.5 Using make
- 1.6 Chapter Summary
- Chapter 1: Quickstart
- II: Fundamentals
- Chapter 2: Hardware
- Abstract
- 2.1 The PIC32
- 2.2 The NU32 Development Board
- 2.3 Chapter Summary
- 2.4 Exercises
- Chapter 3: Software
- Abstract
- 3.1 The Virtual Memory Map
- 3.2 An Example: simplePIC.c
- 3.3 What Happens When You Build?
- 3.4 What Happens When You Reset the PIC32?
- 3.5 Understanding simplePIC.c
- 3.6 Bootloaded Programs vs. Standalone Programs
- 3.7 Build Summary
- 3.8 Useful Command Line Utilities
- 3.9 Chapter Summary
- 3.10 Exercises
- Chapter 4: Using Libraries
- Abstract
- 4.1 Talking PIC
- 4.2 The NU32 Library
- 4.3 Bootloaded Programs
- 4.4 An LCD Library
- 4.5 Microchip Libraries
- 4.6 Your Libraries
- 4.7 Chapter Summary
- 4.8 Exercises
- Chapter 5: Time and Space
- Abstract
- 5.1 Compiler Optimization
- 5.2 Time and the Disassembly File
- 5.3 Space and the Map File
- 5.4 Chapter Summary
- 5.5 Exercises
- Chapter 6: Interrupts
- Abstract
- 6.1 Overview
- 6.2 Details
- 6.3 Steps to Configure and Use an Interrupt
- 6.4 Sample Code
- 6.5 Chapter Summary
- 6.6 Exercises
- Chapter 2: Hardware
- III: Peripheral Reference
- Chapter 7: Digital Input and Output
- Abstract
- 7.1 Overview
- 7.2 Details
- 7.3 Sample Code
- 7.4 Chapter Summary
- 7.5 Exercises
- Chapter 8: Counter/Timers
- Abstract
- 8.1 Overview
- 8.2 Details
- 8.3 Sample Code
- 8.4 Chapter Summary
- 8.5 Exercises
- Chapter 9: Output Compare
- Abstract
- 9.1 Overview
- 9.2 Details
- 9.3 Sample Code
- 9.4 Chapter Summary
- 9.5 Exercises
- Chapter 10: Analog Input
- Abstract
- 10.1 Overview
- 10.2 Details
- 10.3 Sample Code
- 10.4 Chapter Summary
- 10.5 Exercises
- Chapter 11: UART
- Abstract
- 11.1 Overview
- 11.2 Details
- 11.3 Sample Code
- 11.4 Wireless Communication with an XBee Radio
- 11.5 Chapter Summary
- 11.6 Exercises
- Chapter 12: SPI Communication
- Abstract
- 12.1 Overview
- 12.2 Details
- 12.3 Sample Code
- 12.4 Chapter Summary
- 12.5 Exercises
- Chapter 13: I2C Communication
- Abstract
- 13.1 Overview
- 13.2 Details
- 13.3 Sample Code
- 13.4 Chapter Summary
- 13.5 Exercises
- Chapter 14: Parallel Master Port
- Abstract
- 14.1 Overview
- 14.2 Details
- 14.3 Sample Code
- 14.4 Chapter Summary
- 14.5 Exercises
- Chapter 15: Input Capture
- Abstract
- 15.1 Overview
- 15.2 Details
- 15.3 Sample Code
- 15.4 Chapter Summary
- 15.5 Exercises
- Chapter 16: Comparator
- Abstract
- 16.1 Overview
- 16.2 Details
- 16.3 Sample Code
- 16.4 Chapter Summary
- 16.5 Exercises
- Chapter 17: Sleep, Idle, and the Watchdog Timer
- Abstract
- 17.1 Overview
- 17.2 Details
- 17.3 Sample Code
- 17.4 Chapter Summary
- 17.5 Exercises
- Chapter 18: Flash Memory
- Abstract
- 18.1 Overview
- 18.2 Details
- 18.3 Sample Code
- 18.4 Chapter Summary
- 18.5 Exercises
- Chapter 19: Controller Area Network (CAN)
- Abstract
- 19.1 Overview
- 19.2 Details
- 19.3 Sample Code
- 19.4 Chapter Summary
- 19.5 Exercises
- Chapter 20: Harmony and Its Application to USB
- Abstract
- 20.1 Overview
- 20.2 The Framework
- 20.3 PLIB
- 20.4 Harmony Concepts
- 20.5 Drivers
- 20.6 System Services
- 20.7 Program Structure
- 20.8 USB
- 20.9 Chapter Summary
- 20.10 Exercises
- Chapter 7: Digital Input and Output
- IV: Mechatronics
- Chapter 21: Sensors
- Abstract
- 21.1 Contact: Buttons and Switches
- 21.2 Light
- 21.3 Angle of a Revolute Joint
- 21.4 Position of a Prismatic Joint
- 21.5 Acceleration and Angular Velocity: Gyros, Accelerometers, and IMUs
- 21.6 Magnetic Field Sensing: Hall Effect Sensors
- 21.7 Distance
- 21.8 Force
- 21.9 Temperature
- 21.10 Current
- 21.11 GPS
- 21.12 Exercises
- Chapter 22: Digital Signal Processing
- Abstract
- 22.1 Sampled Signals and Aliasing
- 22.2 The Discrete Fourier Transform
- 22.3 Finite Impulse Response (FIR) Digital Filters
- 22.4 Infinite Impulse Response (IIR) Digital Filters
- 22.5 FFT-Based Filters
- 22.6 DSP on the PIC32
- 22.7 Exercises
- Chapter 23: PID Feedback Control
- Abstract
- 23.1 The PID Controller
- 23.2 Variants of the PID Controller
- 23.3 Empirical Gain Tuning
- 23.4 Model-Based Control
- 23.5 Chapter Summary
- 23.6 Exercises
- Chapter 24: Feedback Control of LED Brightness
- Abstract
- 24.1 Wiring and Testing the Circuit
- 24.2 Powering the LED with OC1
- 24.3 Playing an Open-Loop PWM Waveform
- 24.4 Establishing Communication with MATLAB
- 24.5 Plotting Data in MATLAB
- 24.6 Writing to the LCD Screen
- 24.7 Reading the ADC
- 24.8 PI Control
- 24.9 Additional Features
- 24.10 Chapter Summary
- 24.11 Exercises
- Chapter 25: Brushed Permanent Magnet DC Motors
- Abstract
- 25.1 Motor Physics
- 25.2 Governing Equations
- 25.3 The Speed-Torque Curve
- 25.4 Friction and Motor Efficiency
- 25.5 Motor Windings and the Motor Constant
- 25.6 Other Motor Characteristics
- 25.7 Motor Data Sheet
- 25.8 Chapter Summary
- 25.9 Exercises
- Chapter 26: Gearing and Motor Sizing
- Abstract
- 26.1 Gearing
- 26.2 Choosing a Motor and Gearhead
- 26.3 Chapter Summary
- 26.4 Exercises
- Chapter 27: DC Motor Control
- Abstract
- 27.1 The H-Bridge and Pulse Width Modulation
- 27.2 Motion Control of a DC Motor
- 27.3 Chapter Summary
- 27.4 Exercises
- Chapter 28: A Motor Control Project
- Abstract
- 28.1 Hardware
- 28.2 Software Overview
- 28.3 Software Development Tips
- 28.4 Step by Step
- 28.5 Extensions
- 28.6 Chapter Summary
- 28.7 Exercises
- Chapter 29: Other Actuators
- Abstract
- 29.1 Solenoids
- 29.2 Speakers and Voice Coil Actuators
- 29.3 RC Servos
- 29.4 Stepper Motors
- 29.5 Brushless DC Motors
- 29.6 Linear Brushless Motors
- 29.7 Chapter Summary
- 29.8 Exercises
- Chapter 21: Sensors
- Appendix A: A Crash Course in C
- A.1 Quick Start in C
- A.2 Overview
- A.3 Important Concepts in C
- A.4 C Syntax
- A.5 Exercises
- Appendix B: Circuits Review
- B.1 Basics
- B.2 Linear Elements: Resistors, Capacitors, and Inductors
- B.3 Nonlinear Elements: Diodes and Transistors
- B.4 Operational Amplifiers
- B.5 Modular Circuit Design: Input and Output Impedance
- Appendix C: Other PIC32 Models
- C.1 The PIC32MX5xx/6xx/7xx Family
- C.2 PIC32MX3xx/4xx Family
- C.3 PIC32MX1xx/2xx Family
- C.4 PIC32MX1xx/2xx/5xx 64-100 Pin Family
- C.5 PIC32MX330/350/370/430/450/470 Family
- C.6 PIC32MZ Family
- C.7 Conclusion
- Index
- Dedication
Product details
- No. of pages: 650
- Language: English
- Copyright: © Newnes 2015
- Published: December 2, 2015
- Imprint: Newnes
- eBook ISBN: 9780124202351
- Paperback ISBN: 9780124201651
About the Authors
Kevin Lynch
Affiliations and Expertise
Nicholas Marchuk
Affiliations and Expertise
Matthew Elwin
Affiliations and Expertise
Ratings and Reviews
Latest reviews
(Total rating for all reviews)
FedericoFregonese Tue Mar 26 2019
Great
Great
GergelyDEGI Wed Dec 05 2018
Positive comment
Hi! I really liked that i could downloaded the e-book in different types, altough i only use the PDF format. After some minutes after the purchase i gave an e-mail about i can download the book soon, but i did not thing that it would be 5 minutes. I am in love with the linked contents. The program code in the book i think it shoud be colored, at least about the e-book, in this way it would be easier to read, but i think it is the author's responsibility.
Uriel P. Tue Oct 30 2018
Embedded Computing and Mechatronics with the PIC32 Microcontroller
Clear and complete description of how to use the PIC32 microcontroller through the use of the NU32 development board. It helped me start up with Digilent's MAX32 ChipKit.
Uriel P. Wed May 16 2018
Highly recomended
Clearly explained with lots of easy to understand examples.
rodrigo t. Mon May 14 2018
Books reviews
I really enjoyed both of the books. They´re great reference for intefacing with matlab, visual studio and mplab programs. They also have different applications with timers for state machine which is great for define tasks where time measurements are important factors. Overall I would definetely suggest students, hobbists and professionals to have have them. Thanks Rod