ME 333 Readings, Videos, and Sample Code
From Mech
Revision as of 12:02, 12 February 2014 by MatthewElwin (talk | contribs) (→Appendix: A Crash Course in C)
Readings, videos, exercises, and sample code for ME 333 Introduction to Mechatronics.
You can download the most updated version of the class readings here.
Appendix: A Crash Course in C
Reading: A Crash Course in C, C Compilers
Videos:
- Writing your first program in C, HelloWorld.c (5:09). Chapter A.1. Exercises: 1.
- Differences between C and MATLAB (7:30). Chapter A.2. Exercises: 2, 3.
- Binary and hexadecimal (Base 2 and 16) (4:47). Chapter A.3.1. Exercises: 4, 6.
- Data types (5:30). Chapter A.3.1. Exercises: 8, 10.
- Using the data types (3:49). Chapter A.3.1. Exercises: 11.
- Representations of data types (5:15). Chapter A.3.1. Exercises: 12, 13.
- Pointer basics (5:54). Chapter A.3.2. Exercises: 14, 15.
- Sample program: printout.c (5:55). Chapter A.4. Exercises: 16 (not covered in video, reading only) 17, 18.
- Sample program: datasizes.c (2:57). Chapter A.4. Exercises: 9.
- Sample program: overflow.c (2:43). Chapter A.4. Exercises: 19.
- Sample program: typecast.c (5:43). Chapter A.4. Exercises: 20.
- invest.c, part 1/5: intro to a typical C program (4:18). Chapter A.4. Exercises: 23.
- invest.c, part 2/5: overview (3:58). Chapter A.4. Exercises: 24, 25.
- 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.
- invest.c, part 4/5: sections 5-6: helper function prototypes and the main function (4:40). Chapter A.4.
- 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).
- Header files and libraries (9:31).
Sample Code:
- Section A.1: HelloWorld.c
- Section A.4: printout.c, datasizes.c, overflow.c, typecast.c, invest.c
- Section A.4.16: helper.h, helper.c, main.c
- Problems, Section A.5: bubble.c, lights.c, hexdump.c
Microchip Documentation:
Chapter 1: Quickstart
Reading: Chapter 1
Videos: none
Sample Code:
- Section 1.3: PIC32quickstart.zip
Chapter 2: Looking Under the Hood: Hardware
Reading: Chapter 2
Videos:
- Introduction to the PIC32 microcontroller (5:10).
- Introduction to the PIC32 architecture (6:02).
- The PIC32 physical memory map (5:20).
- Introduction to the NU32 development board (4:03).
Sample Code: none
Chapter 3: Looking Under the Hood: Software
Reading: Chapter 3
Videos:
- The PIC32 virtual memory map (5:24).
- Understanding simplePIC.c (5:42).
- Digging through PIC32 header files (7:12).
- The PIC32 executable build process (4:26).
Sample Code:
Chapter 4: Using Libraries
Reading: Chapter 4
Videos:
- The NU32 library (5:28).
Sample Code:
- Section 4.5:
- NU32.c and NU32.h are included in Chapter 1
- LCD.c
- LCD.h
- LCDwrite.c
Chapter 5: Time and Space
Reading: Chapter 5
Videos:
- Timing PIC32 code and the disassembly file (8:27).
- The PIC32 memory map file (7:15).
Sample Code:
- Section 5.1:
Chapter 6: Interrupts
Reading: Chapter 6
Videos:
- Overview of interrupts on the PIC32 (4:29).
- PIC32 interrupt SFRs (6:22).
- The PIC32 shadow register set (1:25).
- Seven steps to using an interrupt with the PIC32 (3:47)
- PIC32 interrupt code example (4:10)
Sample Code:
Chapter 7: Digital Input and Output
Reading: Chapter 7
Videos:
- Intro to digital I/O on the PIC32 (6:24)
- Change notification on the PIC32 (1:18)
- PIC32 program with digital I/O and change notification (9:02)
Sample Code:
Chapter 8: Counters / Timers
Reading: Chapter 8
Videos:
- Intro to PIC32 counter/timers (5:59)
- PIC32 timer SFRs (5:55)
- Using PIC32 timers to generate interrupts (3:34)
- Example PIC32 timer interrupt program (5:08)
Sample Code:
Chapter 9: Output Compare
Reading: Chapter 9
Videos:
- Introduction to the PIC32 output compare (5:30)
- A PWM program on the PIC32 (3:12)
- Using output compare to create an analog output (3:09)
Sample Code:
Chapter 10: Analog Input
Reading: Chapter 10
Sample Code: