NU32 Videos

From Mech
Jump to navigationJump to search

This page has a number of videos supporting chapters in the book Embedded Computing and Mechatronics with the PIC32 Microcontroller. Some of these videos were created for a preliminary (alpha) version of the NU32 development board, which used the PIC32MX795F512L 100-pin chip. Those videos will gradually be updated for the final production version of the NU32, which uses the PIC32MX795F512H 64-pin chip. Sample code for the book can be downloaded from the NU32 page.

Most of the videos below were created using the Lightboard, an ingenious and easy-to-use device developed by Prof. Michael Peshkin at Northwestern University. Our deepest gratitude to him and Prof. Alex Birdwell, who runs the Lightboard Studio at Northwestern.

Appendix A: A Crash Course in C

Videos:

Click here for a playlist of all videos in this chapter

  1. Writing your first program in C, HelloWorld.c (5:09). Chapter A.1. Exercises: 1.
  2. Differences between C and MATLAB (7:30). Chapter A.2. Exercises: 2, 3.
  3. Binary and hexadecimal (Base 2 and 16) (4:47). Chapter A.3.1. Exercises: 4, 6.
  4. C data types (5:30). Chapter A.3.1. Exercises: 8, 10.
  5. Using C data types (3:49). Chapter A.3.1. Exercises: 11.
  6. Representations of C data types (5:15). Chapter A.3.1. Exercises: 12, 13.
  7. C pointer basics (5:54). Chapter A.3.2. Exercises: 14, 15.
  8. Sample program: printout.c (5:55). Chapter A.4. Exercises: 16 (not covered in video, reading only) 17, 18.
  9. Sample program: datasizes.c (2:57). Chapter A.4. Exercises: 9.
  10. Sample program: overflow.c (2:43). Chapter A.4. Exercises: 19.
  11. Sample program: typecast.c (5:43). Chapter A.4. Exercises: 20.
  12. invest.c, part 1/5: intro to a typical C program (4:18). Chapter A.4. Exercises: 23.
  13. invest.c, part 2/5: overview (3:58). Chapter A.4. Exercises: 24, 25.
  14. invest.c, part 3/5: sections 1-4: program comments, preprocessor commands, new data type definitions, and global variables (4:48). Chapter A.4. Exercises: 26.
  15. invest.c, part 4/5: sections 5-6: helper function prototypes and the main function (4:40). Chapter A.4.
  16. invest.c, part 5/5: section 7: helper functions (7:42). Chapter A.4. Exercises: 28-30, 32, 33 (some material covered in reading only).
  17. Header files and libraries (9:31).

Chapter 1: Quickstart

Videos:

  1. NU32 quickstart introduction

Chapter 2: Hardware

Videos:

Click here for a playlist of all videos in this chapter

  1. Introduction to the PIC32 microcontroller (5:10).
  2. Introduction to the PIC32 architecture (6:02).
  3. The PIC32 physical memory map (5:20).
  4. Introduction to the NU32 development board (4:03).

Chapter 3: Software

Videos:

Click here for a playlist of all videos in this chapter

  1. The PIC32 virtual memory map (5:24).
  2. Understanding simplePIC.c (5:42). (The latest version of simplePIC.c includes xc.h, not plib.h)
  3. Digging through PIC32 header files (7:12). (Information on plib.h, which is no longer included in simplePIC.c, can be ignored. Focus on xc.h and later.)
  4. The PIC32 executable build process (4:26). (The command line compiler commands are a bit different than in Chapter 3, but the main ideas are the same.)

Chapter 4: Using Libraries

Video:

  1. The NU32 library (5:28).

Chapter 5: Time and Space

Videos:

Click here for a playlist of all videos in this chapter

  1. Timing PIC32 code and the disassembly file (8:27). (Note that the timing.c code is slightly different from what is seen in Chapter 5.)
  2. The PIC32 memory map file (7:15). (Note that the map file looks a bit different from the one in the book, due to changes in timing.c.)

Chapter 6: Interrupts

Videos:

Click here for a playlist of all videos in this chapter

  1. Overview of interrupts on the PIC32 (4:29).
  2. PIC32 interrupt SFRs (6:22).
  3. The PIC32 shadow register set (1:25).
  4. Seven steps to using an interrupt with the PIC32 (3:47)
  5. PIC32 interrupt code example (4:10) NOTE: The code in this video is an old version of the code in Chapter 6. Do not use this code, use what's in Chapter 6.

Chapter 7: Digital Input and Output

Videos:

Click here for a playlist of all videos in this chapter

  1. Intro to digital I/O on the PIC32 (6:24)
  2. Change notification on the PIC32 (1:18)
  3. PIC32 program with digital I/O and change notification (9:02)

Chapter 8: Counters / Timers

Videos:

Click here for a playlist of all videos in this chapter

  1. Intro to PIC32 counter/timers (5:59)
  2. PIC32 timer SFRs (5:55)
  3. Using PIC32 timers to generate interrupts (3:34)
  4. Example PIC32 timer interrupt program (5:08)

Chapter 9: Output Compare

Videos:

Click here for a playlist of all videos in this chapter

  1. Introduction to the PIC32 output compare (5:30)
  2. A PWM program on the PIC32 (3:12)
  3. Using output compare to create an analog output (3:09)

Chapter 10: Analog Input

Video:

  1. The PIC32 analog-to-digital converter (6:47)

Chapter 23: PID Feedback Control

Videos:

Click here for a playlist of all videos in this chapter

  1. Introduction to PID control (4:28)
  2. Improving the basic PID control algorithm (2:33)
  3. PID control of a mass-spring-damper (4:10)
  4. P, PI, and PD variants of PID control (2:42)
  5. Empirical PID gain tuning (7:08)

Chapter 25: Brushed Permanent Magnet DC Motors

Videos:

Click here for a playlist of all videos in this chapter

  1. Intro to brushed permanent magnet DC motors, part 1/2 (4:31)
  2. Intro to brushed permanent magnet DC motors, part 2/2 (7:10)
  3. Brushed DC motor equations (6:53)
  4. Brushed DC motor speed-torque curve (5:59)
  5. The DC motor speed-torque plane (4:27)
  6. DC motor electrical and mechanical power in the speed-torque plane (3:52)
  7. DC motor output power (2:05)
  8. Friction in DC motors (0:55)
  9. A DC motor data sheet (4:34)

Chapter 26: Gearing and Motor Sizing

Videos:

Click here for a playlist of all videos in this chapter

  1. Introduction to gears (4:12)
  2. Gear efficiency (2:40)
  3. Types of gears (3:47)

Chapter 27: DC Motor Control

Videos:

Click here for a playlist of all videos in this chapter

  1. Driving DC motors, part 1/3: Flyback diodes (7:03)
  2. Driving DC motors, part 2/3: PWM (3:05)
  3. Driving DC motors, part 3/3: H-bridges (4:22)
  4. A professional motor control system (6:55)