Difference between revisions of "NU32 Videos"

From Mech
Jump to navigationJump to search
(22 intermediate revisions by the same user not shown)
Line 1: Line 1:
This page has a number of videos supporting chapters in the book [[NU32|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|NU32 page]].
This page has a number of videos supporting chapters in the book [[NU32|Embedded Computing and Mechatronics with the PIC32 Microcontroller]]. Sample code for the book used in these videos can be downloaded from the [[NU32|NU32 page]]. The sample code is for the PIC32MX795F512H as it is used on the NU32 development board.


You can go directly to [https://www.youtube.com/user/kevinl2145 Kevin Lynch's YouTube channel] with all the videos, or you can use the directory below to go to a specific video or to the playlist for a specific chapter. Each chapter with videos has its own playlist that plays the chapter's videos in sequence.
Most of the videos below were created using the [https://sites.google.com/site/northwesternlightboard/ 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.

Most of the videos below were created using the [https://sites.google.com/site/northwesternlightboard/ Lightboard], an ingenious and easy-to-use device developed by Prof. Michael Peshkin at Northwestern University.


===Appendix A: A Crash Course in C===
===Appendix A: A Crash Course in C===
Line 8: Line 10:


[https://www.youtube.com/playlist?list=PLggLP4f-rq02gmlePH-vQJ8PF6hyf08CN '''Click here for a playlist of all videos in this chapter''']
[https://www.youtube.com/playlist?list=PLggLP4f-rq02gmlePH-vQJ8PF6hyf08CN '''Click here for a playlist of all videos in this chapter''']
# [http://www.youtube.com/watch?v=tVInDFCDVZA&feature=youtu.be '''Writing your first program in C, HelloWorld.c'''] (5:09). Chapter A.1. Exercises: 1.
# [http://www.youtube.com/watch?v=tVInDFCDVZA&feature=youtu.be '''Writing your first program in C, HelloWorld.c'''] (5:09). Chapter A.1.
# [http://www.youtube.com/watch?v=fjSGtiPb-YY&feature=youtu.be '''Differences between C and MATLAB'''] (7:30). Chapter A.2. Exercises: 2, 3.
# [http://www.youtube.com/watch?v=fjSGtiPb-YY&feature=youtu.be '''Differences between C and MATLAB'''] (7:30). Chapter A.2.
# [http://www.youtube.com/watch?v=kC4EoTxnJys&feature=youtu.be '''Binary and hexadecimal (Base 2 and 16)'''] (4:47). Chapter A.3.1. Exercises: 4, 6.
# [http://www.youtube.com/watch?v=kC4EoTxnJys&feature=youtu.be '''Binary and hexadecimal (Base 2 and 16)'''] (4:47). Chapter A.3.1.
# [http://www.youtube.com/watch?v=V1mBtAZxHgw&feature=youtu.be '''C data types'''] (5:30). Chapter A.3.1. Exercises: 8, 10.
# [http://www.youtube.com/watch?v=V1mBtAZxHgw&feature=youtu.be '''C data types'''] (5:30). Chapter A.3.1.
# [http://www.youtube.com/watch?v=4XleTmp-RR4&feature=youtu.be '''Using C data types'''] (3:49). Chapter A.3.1. Exercises: 11.
# [http://www.youtube.com/watch?v=4XleTmp-RR4&feature=youtu.be '''Using C data types'''] (3:49). Chapter A.3.1.
# [http://www.youtube.com/watch?v=jsmCIpBeKjk&feature=youtu.be '''Representations of C data types'''] (5:15). Chapter A.3.1. Exercises: 12, 13.
# [http://www.youtube.com/watch?v=jsmCIpBeKjk&feature=youtu.be '''Representations of C data types'''] (5:15). Chapter A.3.1.
# [http://www.youtube.com/watch?v=47IS8VtAM9E&feature=youtu.be '''C pointer basics'''] (5:54). Chapter A.3.2. Exercises: 14, 15.
# [http://www.youtube.com/watch?v=47IS8VtAM9E&feature=youtu.be '''C pointer basics'''] (5:54). Chapter A.3.2.
# [http://www.youtube.com/watch?v=yBLApvS7fcY&feature=youtu.be '''Sample program: printout.c'''] (5:55). Chapter A.4. Exercises: 16 (not covered in video, reading only) 17, 18.
# [http://www.youtube.com/watch?v=yBLApvS7fcY&feature=youtu.be '''Sample program: printout.c'''] (5:55). Chapter A.4.
# [http://www.youtube.com/watch?v=YH-h-hGHIBw&feature=youtu.be '''Sample program: datasizes.c'''] (2:57). Chapter A.4. Exercises: 9.
# [http://www.youtube.com/watch?v=YH-h-hGHIBw&feature=youtu.be '''Sample program: datasizes.c'''] (2:57). Chapter A.4.
# [http://www.youtube.com/watch?v=HXXCdVuGm70&feature=youtu.be '''Sample program: overflow.c'''] (2:43). Chapter A.4. Exercises: 19.
# [http://www.youtube.com/watch?v=HXXCdVuGm70&feature=youtu.be '''Sample program: overflow.c'''] (2:43). Chapter A.4.
# [http://www.youtube.com/watch?v=dd_Uk00yURI&feature=youtu.be '''Sample program: typecast.c'''] (5:43). Chapter A.4. Exercises: 20.
# [http://www.youtube.com/watch?v=dd_Uk00yURI&feature=youtu.be '''Sample program: typecast.c'''] (5:43). Chapter A.4.
# [http://www.youtube.com/watch?v=MQaHeovdTCU&feature=youtu.be '''invest.c, part 1/5: intro to a typical C program'''] (4:18). Chapter A.4. Exercises: 23.
# [http://www.youtube.com/watch?v=MQaHeovdTCU&feature=youtu.be '''invest.c, part 1/5: intro to a typical C program'''] (4:18). Chapter A.4.
# [http://www.youtube.com/watch?v=CGmxOs7uxwI&feature=youtu.be '''invest.c, part 2/5: overview'''] (3:58). Chapter A.4. Exercises: 24, 25.
# [http://www.youtube.com/watch?v=CGmxOs7uxwI&feature=youtu.be '''invest.c, part 2/5: overview'''] (3:58). Chapter A.4.
# [http://www.youtube.com/watch?v=x218qBniZdo&feature=youtu.be '''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.
# [http://www.youtube.com/watch?v=x218qBniZdo&feature=youtu.be '''invest.c, part 3/5: sections 1-4: program comments, preprocessor commands, new data type definitions, and global variables'''] (4:48). Chapter A.4.
# [http://www.youtube.com/watch?v=2Rl3Dno42pc&feature=youtu.be '''invest.c, part 4/5: sections 5-6: helper function prototypes and the main function'''] (4:40). Chapter A.4.
# [http://www.youtube.com/watch?v=2Rl3Dno42pc&feature=youtu.be '''invest.c, part 4/5: sections 5-6: helper function prototypes and the main function'''] (4:40). Chapter A.4.
# [http://www.youtube.com/watch?v=soT9_c6XXko&feature=youtu.be '''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).
# [http://www.youtube.com/watch?v=soT9_c6XXko&feature=youtu.be '''invest.c, part 5/5: section 7: helper functions'''] (7:42). Chapter A.4.
# [http://www.youtube.com/watch?v=5UMHbzZGQuE '''Header files and libraries'''] (9:31).
# [http://www.youtube.com/watch?v=5UMHbzZGQuE '''Header files and libraries'''] (9:31). Chapter A.4.15.


----
----
Line 30: Line 32:
===Chapter 1: Quickstart===
===Chapter 1: Quickstart===


[https://www.youtube.com/playlist?list=PLggLP4f-rq00BLJVaX4LryXm45jiyXict '''Click here for a playlist of videos for the Mac (and, almost, Linux)''']
[https://www.youtube.com/playlist?list=PLggLP4f-rq00BLJVaX4LryXm45jiyXict '''Click here for a playlist of all videos in this chapter for the Mac (and, almost, Linux)''']
[https://www.youtube.com/playlist?list=PLggLP4f-rq02SD4GoDSfJEpXyPjYpHXvD '''Click here for a playlist of videos for Windows''']


[https://www.youtube.com/playlist?list=PLggLP4f-rq02SD4GoDSfJEpXyPjYpHXvD '''Click here for a playlist of all videos in this chapter for Windows''']
'''Videos''':

# [https://youtu.be/dNUD46sAQSU '''NU32 quickstart introduction''']
'''Intro video for all host computers''':
# [https://youtu.be/dNUD46sAQSU '''NU32 quickstart introduction'''] (2:06)


'''Videos specific for the Mac (and, almost, Linux):'''
'''Videos specific for the Mac (and, almost, Linux):'''
# [https://www.youtube.com/watch?v=a2o5sx1xxm4 '''NU32 quickstart for Mac, part 1: software downloads''']
# [https://www.youtube.com/watch?v=a2o5sx1xxm4 '''NU32 quickstart for Mac, part 1/3: software downloads'''] (7:11)
# [https://www.youtube.com/watch?v=tOuKL2vZWjE '''NU32 quickstart for Mac, part 2: compiling and loading''']
# [https://www.youtube.com/watch?v=tOuKL2vZWjE '''NU32 quickstart for Mac, part 2/3: compiling and loading'''] (4:04)
# [https://www.youtube.com/watch?v=o5fKVnmiKrk '''NU32 quickstart for Mac, part 3: using make''']
# [https://www.youtube.com/watch?v=o5fKVnmiKrk '''NU32 quickstart for Mac, part 3/3: using make'''] (5:31)


'''Videos specific for Windows:'''
'''Videos specific for Windows:'''
# [https://www.youtube.com/watch?v=jBwzfmpyFiY '''NU32 quickstart for Windows, part 1: software downloads''']
# [https://www.youtube.com/watch?v=jBwzfmpyFiY '''NU32 quickstart for Windows, part 1/3: software downloads'''] (5:55)
# [https://www.youtube.com/watch?v=AUF4Bx-Hfqw '''NU32 quickstart for Windows, part 2: compiling and loading''']
# [https://www.youtube.com/watch?v=AUF4Bx-Hfqw '''NU32 quickstart for Windows, part 2/3: compiling and loading'''] (4:36)
# [https://www.youtube.com/watch?v=314F5qkCQ0I '''NU32 quickstart for Windows, part 3: using make''']
# [https://www.youtube.com/watch?v=314F5qkCQ0I '''NU32 quickstart for Windows, part 3/3: using make'''] (5:13)


----
----
Line 53: Line 56:


[https://www.youtube.com/playlist?list=PLggLP4f-rq02HwYXVcY7z_9K719BxAXRF '''Click here for a playlist of all videos in this chapter''']
[https://www.youtube.com/playlist?list=PLggLP4f-rq02HwYXVcY7z_9K719BxAXRF '''Click here for a playlist of all videos in this chapter''']
# [https://www.youtube.com/watch?v=UAS0kl30EMA '''Introduction to the PIC32 microcontroller'''] (5:10).
# [https://www.youtube.com/watch?v=UAS0kl30EMA '''Introduction to the PIC32 microcontroller'''] (4:42)
# [http://youtu.be/UOv0zG_04Bg '''Introduction to the PIC32 architecture'''] (6:02).
# [http://youtu.be/UOv0zG_04Bg '''Introduction to the PIC32 architecture'''] (6:02)
# [http://youtu.be/YrkUKYBcVA8 '''The PIC32 physical memory map'''] (5:20).
# [http://youtu.be/YrkUKYBcVA8 '''The PIC32 physical memory map'''] (5:20)
# [https://www.youtube.com/watch?v=ByXYMqVQpWU '''Introduction to the NU32 development board'''] (4:03).
# [https://www.youtube.com/watch?v=ByXYMqVQpWU '''Introduction to the NU32 development board'''] (2:28)


----
----
Line 65: Line 68:


[https://www.youtube.com/playlist?list=PLggLP4f-rq00keomJD_HhrzvxwIsxB9WS '''Click here for a playlist of all videos in this chapter''']
[https://www.youtube.com/playlist?list=PLggLP4f-rq00keomJD_HhrzvxwIsxB9WS '''Click here for a playlist of all videos in this chapter''']
# [http://www.youtube.com/watch?v=VqCPafcov1c '''The PIC32 virtual memory map'''] (5:24).
# [http://www.youtube.com/watch?v=VqCPafcov1c '''The PIC32 virtual memory map'''] (5:24)
# [http://www.youtube.com/watch?v=sSvou7gxsaQ '''Understanding simplePIC.c'''] (5:42). (The latest version of simplePIC.c includes xc.h, not plib.h)
# [https://www.youtube.com/watch?v=Cfa0L990DCU '''Understanding simplePIC.c'''] (6:34).
# [http://www.youtube.com/watch?v=inq7l6p_ppE '''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.)
# [https://www.youtube.com/watch?v=HFAX6mKIlSA '''Digging through PIC32 header files'''] (6:19).
# [http://www.youtube.com/watch?v=ZlJmjcGkTl4 '''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.)
# [https://www.youtube.com/watch?v=QwA-NtxMC3E '''The PIC32 executable build process'''] (3:36).

----
----


Line 75: Line 77:


'''Video''':
'''Video''':

# [https://www.youtube.com/watch?v=ovhNxIq9Kwo '''The NU32 library'''] (5:28).
[https://www.youtube.com/playlist?list=PLggLP4f-rq02hxyFislPy2SuN6vndLMi- '''Click here for a playlist of all videos in this chapter''']
# [https://youtu.be/_qq0cOjl9Cs '''The NU32 library'''] (5:20)


----
----
Line 84: Line 88:


[https://www.youtube.com/playlist?list=PLggLP4f-rq01Sl5GNFtYcOf0gcwVqVLj2 '''Click here for a playlist of all videos in this chapter''']
[https://www.youtube.com/playlist?list=PLggLP4f-rq01Sl5GNFtYcOf0gcwVqVLj2 '''Click here for a playlist of all videos in this chapter''']
# [http://www.youtube.com/watch?v=Yxq2GuCQed0&feature=youtu.be '''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.)
# [https://youtu.be/-Xpfi9mR7oc '''Timing PIC32 code and the disassembly file'''] (11:11).
# [http://www.youtube.com/watch?v=994vc171K4A '''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.)
# [https://youtu.be/OcsLl_FuXwg '''The PIC32 memory map file'''] (8:20).


----
----
Line 94: Line 98:


[https://www.youtube.com/playlist?list=PLggLP4f-rq01y1WOKqkMxElhm8gAm8Uxg '''Click here for a playlist of all videos in this chapter''']
[https://www.youtube.com/playlist?list=PLggLP4f-rq01y1WOKqkMxElhm8gAm8Uxg '''Click here for a playlist of all videos in this chapter''']
# [http://www.youtube.com/watch?v=Kmss3C732Kg&feature=youtu.be '''Overview of interrupts on the PIC32'''] (4:29).
# [http://www.youtube.com/watch?v=Kmss3C732Kg&feature=youtu.be '''Overview of interrupts on the PIC32'''] (4:29)
# [http://www.youtube.com/watch?v=aLJX-CxMb-w&feature=youtu.be '''PIC32 interrupt SFRs'''] (6:22).
# [http://www.youtube.com/watch?v=aLJX-CxMb-w&feature=youtu.be '''PIC32 interrupt SFRs'''] (6:22)
# [http://www.youtube.com/watch?v=aIClq90qV7E&feature=youtu.be '''The PIC32 shadow register set'''] (1:25).
# [http://www.youtube.com/watch?v=aIClq90qV7E&feature=youtu.be '''The PIC32 shadow register set'''] (1:25)
# [http://www.youtube.com/watch?v=6Ap3H39iCVI&feature=youtu.be '''Seven steps to using an interrupt with the PIC32'''] (3:47)
# [http://www.youtube.com/watch?v=6Ap3H39iCVI&feature=youtu.be '''Seven steps to using an interrupt with the PIC32'''] (3:47)
# [http://www.youtube.com/watch?v=40YZFMw2nBs&feature=youtu.be '''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.
# [https://youtu.be/oydXEvJ-FUU '''PIC32 interrupt code example'''] (4:19)


----
----
Line 109: Line 113:
# [http://youtu.be/QweUbVV6zOQ '''Intro to digital I/O on the PIC32'''] (6:24)
# [http://youtu.be/QweUbVV6zOQ '''Intro to digital I/O on the PIC32'''] (6:24)
# [http://youtu.be/TyhJXYsvSgE '''Change notification on the PIC32'''] (1:18)
# [http://youtu.be/TyhJXYsvSgE '''Change notification on the PIC32'''] (1:18)
# [http://youtu.be/hgeACkWSYxc '''PIC32 program with digital I/O and change notification'''] (9:02)
# [https://youtu.be/imjtEoTcJgI '''PIC32 program with digital I/O and change notification'''] (4:33)


----
----
Line 120: Line 124:
# [http://youtu.be/wOeRTo55BCE '''Intro to PIC32 counter/timers'''] (5:59)
# [http://youtu.be/wOeRTo55BCE '''Intro to PIC32 counter/timers'''] (5:59)
# [http://youtu.be/5bNf9GZUdk8 '''PIC32 timer SFRs'''] (5:55)
# [http://youtu.be/5bNf9GZUdk8 '''PIC32 timer SFRs'''] (5:55)
# [http://youtu.be/uv-vANdWVeQ '''Using PIC32 timers to generate interrupts'''] (3:34)
# [https://youtu.be/bu6G8ERqapI '''Using PIC32 timers to generate interrupts'''] (2:39)
# [http://youtu.be/Y5MaR-D7YuM '''Example PIC32 timer interrupt program'''] (5:08)
# [https://youtu.be/bu6TTZHnMPY '''Example PIC32 timer interrupt program'''] (3:42)


----
----
Line 131: Line 135:
[https://www.youtube.com/playlist?list=PLggLP4f-rq00_EW8xrcBsgqAP90qmdDxR '''Click here for a playlist of all videos in this chapter''']
[https://www.youtube.com/playlist?list=PLggLP4f-rq00_EW8xrcBsgqAP90qmdDxR '''Click here for a playlist of all videos in this chapter''']
# [http://youtu.be/U4T53SFPhXI '''Introduction to the PIC32 output compare'''] (5:30)
# [http://youtu.be/U4T53SFPhXI '''Introduction to the PIC32 output compare'''] (5:30)
# [http://youtu.be/iQGtVHH4UM0 '''A PWM program on the PIC32'''] (3:12)
# [https://youtu.be/l9ApqJMgeoY '''A PWM program on the PIC32'''] (3:10)
# [http://youtu.be/xhdiiYYF-zY '''Using output compare to create an analog output'''] (3:09)
# [http://youtu.be/xhdiiYYF-zY '''Using output compare to create an analog output'''] (3:09)


Line 139: Line 143:


'''Video''':
'''Video''':

[https://www.youtube.com/playlist?list=PLggLP4f-rq0376JNt1ntQSQ7QdEgOfRhW '''Click here for a playlist of all videos in this chapter''']
# [http://youtu.be/JvlPeWEU5i8 '''The PIC32 analog-to-digital converter'''] (6:47)
# [http://youtu.be/JvlPeWEU5i8 '''The PIC32 analog-to-digital converter'''] (6:47)


Line 195: Line 201:


----
----

===Chapter 28: A Motor Control Project===

'''Videos''':

[https://www.youtube.com/playlist?list=PLggLP4f-rq03WhWvWauGd9ex6ZXGLtrdd '''Click here for a playlist of all videos in this chapter''']
# [https://youtu.be/sMXWoYCmfm4 '''A motor control project with the PIC32'''] (4:04)

Revision as of 06:32, 12 March 2017

This page has a number of videos supporting chapters in the book Embedded Computing and Mechatronics with the PIC32 Microcontroller. Sample code for the book used in these videos can be downloaded from the NU32 page. The sample code is for the PIC32MX795F512H as it is used on the NU32 development board.

You can go directly to Kevin Lynch's YouTube channel with all the videos, or you can use the directory below to go to a specific video or to the playlist for a specific chapter. Each chapter with videos has its own playlist that plays the chapter's videos in sequence.

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.

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.
  2. Differences between C and MATLAB (7:30). Chapter A.2.
  3. Binary and hexadecimal (Base 2 and 16) (4:47). Chapter A.3.1.
  4. C data types (5:30). Chapter A.3.1.
  5. Using C data types (3:49). Chapter A.3.1.
  6. Representations of C data types (5:15). Chapter A.3.1.
  7. C pointer basics (5:54). Chapter A.3.2.
  8. Sample program: printout.c (5:55). Chapter A.4.
  9. Sample program: datasizes.c (2:57). Chapter A.4.
  10. Sample program: overflow.c (2:43). Chapter A.4.
  11. Sample program: typecast.c (5:43). Chapter A.4.
  12. invest.c, part 1/5: intro to a typical C program (4:18). Chapter A.4.
  13. invest.c, part 2/5: overview (3:58). Chapter A.4.
  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.
  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.
  17. Header files and libraries (9:31). Chapter A.4.15.

Chapter 1: Quickstart

Click here for a playlist of all videos in this chapter for the Mac (and, almost, Linux)

Click here for a playlist of all videos in this chapter for Windows

Intro video for all host computers:

  1. NU32 quickstart introduction (2:06)

Videos specific for the Mac (and, almost, Linux):

  1. NU32 quickstart for Mac, part 1/3: software downloads (7:11)
  2. NU32 quickstart for Mac, part 2/3: compiling and loading (4:04)
  3. NU32 quickstart for Mac, part 3/3: using make (5:31)

Videos specific for Windows:

  1. NU32 quickstart for Windows, part 1/3: software downloads (5:55)
  2. NU32 quickstart for Windows, part 2/3: compiling and loading (4:36)
  3. NU32 quickstart for Windows, part 3/3: using make (5:13)

Chapter 2: Hardware

Videos:

Click here for a playlist of all videos in this chapter

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

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 (6:34).
  3. Digging through PIC32 header files (6:19).
  4. The PIC32 executable build process (3:36).

Chapter 4: Using Libraries

Video:

Click here for a playlist of all videos in this chapter

  1. The NU32 library (5:20)

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 (11:11).
  2. The PIC32 memory map file (8:20).

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:19)

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 (4:33)

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 (2:39)
  4. Example PIC32 timer interrupt program (3:42)

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:10)
  3. Using output compare to create an analog output (3:09)

Chapter 10: Analog Input

Video:

Click here for a playlist of all videos in this chapter

  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)

Chapter 28: A Motor Control Project

Videos:

Click here for a playlist of all videos in this chapter

  1. A motor control project with the PIC32 (4:04)