Syllabus: Fall 2010 CSCI 255


The course instructor for CSCI 255 is Dean Brock. The course lectures will be delivered on Tuesday and Thursday from 3:10 PM to 4:25 PM in Robinson 217.


The lab instructor for CSCI 255 is Rebecca Bruce. The labs will be held on Mondays from 4:10 PM to 5:50 PM in Robinson 223.

Class home page

All class handouts, including homework assignments, can be found through the following URL:


The required textbook for the course will be Microcontrollers: From Assembly Language to C Using the PIC24 Family, written by Robert Reese, J. W. Bruce, and Bryan A. Jones and published by Course Technology (ISBN 978-1-58450-583-9).

Course Content

This course introduces students to the fundamentals of computer engineering from both the hardware and software points of view and to embedded programming. After taking this course, you will have a better understanding of how a program is translated into commands for execution on hardware; how the hardware executes those commands; and how microcontrollers manage consumer devices.

Grading components


All exams will be closed book and closed notes. A reference sheet will be provided which lists detailed information, such as the syntax of the C language and the PIC instruction set architecture, that would be burdensome (and unproductive) to memorize.

Two equally-weighted 75-minute in-class exams will be given during the semester along with one final exam.

Attendance at all exams is mandatory. Only University-approved excuses will be accepted, provided that they are accompanied by the appropriate official documentation. Makeup exams may be given for excused absences at the discretion of the instructor. If you miss an exam without an acceptable excuse or without giving notice before the exam is given, you will receive a zero for that exam.


UNCA CSCI 255 students will complete near-weekly homeworks that will usually be turned in at class or submitted via the UNCA moodle system.


Assignments can be either programming or circuit design assignments. There will be about six assignments during the semester. Each programming assignment must represent your own individual work. It is acceptable to talk with another student about approaches to the assignment or to discuss a particular programming problem that you are having with another student. It is not acceptable to modify the problem of someone else and submit it as your own or to submit a solution "found" on the Internet. If two or more students turn in a programming assignment with trivial differences, such as variable names, the students will be asked to explain the similarities of their submitted programs before the assignment will be graded. Assignments will turned in via UNCA's Moodle system.

CSCI 255 Labs

Students enrolled in CSCI 255 must participate in labs in which programs are written in a C-like language for the PIC processor. A separate web page is devoted to the CSCI 255 labs and should be consulted for information about that part of the course.

Weighting of grade components

First, there is the weighting of the lecture and lab. The instructors for these parts of the course will provide a grade which will be given the following weighting in determining the course grade.

Grade component Weight
Lecture 3/4
Lab 1/4

For the lecture part of the course the following weights will be applied.

Grade component Weight
Two in-class exams 1/3
Final exam 1/3
Assignments 2/9
Homework 1/9


The following numerical scale will be used in assigning grades based on Score, the weighted score computed using the preceding table.

Score ≥ 93A
Score ≥ 90 & Score < 93A-
Score ≥ 87 & Score < 90B+
Score ≥ 83 & Score < 87B
Score ≥ 80 & Score < 83B-
Score ≥ 77 & Score < 80C+
Score ≥ 73 & Score < 77C
Score ≥ 70 & Score < 73C-
Score ≥ 67 & Score < 70D+
Score ≥ 63 & Score < 67D
Score ≥ 60 & Score < 63D-
Score < 60F

There will no "rounding-up" in computing the final grade. A score of 69.95 is less than 70 and results in a grade of D+.

Email Communication

Academic administrators at UNCA have told instructors that information protected by the Family Educational Rights and Privacy Act should only be sent to official university email addresses. Information related to recorded grades is clearly protected, as is any discussion that would allow a reader to draw conclusions about your performance or attendance in class.

For more information

The best way to get in touch with me is to send email to If you need to see me, send me email to arrange an appointment.