ECE 177 --- Introduction to Programming for Engineers
Assignments

Homework Assignments:

Homework handed in and zyBook assignments are due at the beginning of the class period. Substantial points will be taken off if late.
CodeLab is here for homework that requires it. CodeLab is due at 11:59 on the given day. Half credit is given for problems completed late.

# Due Assignment
C1) Wed. Sep 6: Sign up for Codelab Instructions here.
H1) Wed. Sep 6: Homework 1. Same assignment in Word format if you want to fill it out it on the computer.
H2) Wed. Sep 13: Homework 2
H3) Wed. Sep 13: Homework 3
C4) Wed. Sep 20 (11:59pm): Work all CodeLab problems corresponding to Homework 4
C8) Wed. Sep. 27 (11:59pm): Work all CodeLab problems titled Homework 5
C9) Lab 7 Prelab: Work all CodeLab problems related to Lab 7 before coming to lab (week of ???).
C10) No due date: Work all CodeLab problems titled Homework 6
C12) Lab 8 Prelab: Work all CodeLab problems related to Lab 8 before coming to lab (week of ???).
C14) Lab 9 Prelab: Work all CodeLab problems related to Lab 9 before coming to lab (week of ???).
C16) Lab 10 Prelab: Work all CodeLab problems related to Lab 10 before coming to lab (week of ???).
C18) Wed. Oct 25 (11:59pm): Work all CodeLab problems titled Homework 7.

Labs:

Lab 7a: Week of October 11 Breadboard wiring is here.  Hex code for testing is here.
 FYI, datasheet for the AVR is here.
 Instructions for setting up the programmer are here.
Lab 7b: Week of October 18 - Lab 7 assignment is here. and starter code is here. Note: For pre-lab work the CodeLab problems associated with this lab before coming to lab.
 To use the LCD you will need lcd.h and liblcd.a and link them with your code (may need to "Save link as...")
 Info on compiling and programming is here for Windows users and here for Mac users
Lab 8: Week of October 25 - Lab 8 assignment is here. and starter code is here.
 Note: For pre-lab work the CodeLab problems associated with this lab before coming to lab.
 Optional: Here is a test program for testing your getkey() routine before putting it into CodeLab
 Optional: Here is a hex code for testing your keypad and wiring
Lab 9: Week of November 1 - Lab 9 assignment is here. and starter code is here.
 Note: For pre-lab work the CodeLab problems associated with this lab before coming to lab.
 Here are some test sequences:
Lab 10: Week of November 8 - Lab 10 assignment is here. and starter code is here.
 Note: For pre-lab work the CodeLab problems associated with this lab before coming to lab. Read "Pre-lab" section on lab sheet first.
Lab 11: Week of November 15 - Lab 11 assignment is here. and starter code is here.
 Note: For pre-lab write what you can before coming to lab.

Notes and examples from class:

Simple C program
Moon Age program
Control structures
More on repetition control structures
Examples of array operations
Examples of array operations with some function calls
Examples of arrays, pointers and functions
Working with structs (and pointers)
Sorting and searching with arrays of things

Other exercises/examples:



Quick Guides and hardware info:

Quick start guide for setting up a console application in Visual Studio (for PCs)

Quick start guide for setting up PuTTY, running ssh, and doing a gcc compile (PC)

One page quick reference on the linux command line

Guides and other useful information for doing the labs can be found here.

Data sheet for the AVR can be found here.

Data sheet for the PIC can be found here.

Data sheet for the LCD display can be found here.

Highlight of some gdb (gcc command line) debugger commands here.

Windows Programming files here (avr.zip)

Notes:

Precedence Chart