Fall 2014 CSCI 255 Syllabus


The course instructor for CSCI 255 is J Dean Brock. The course lectures will be delivered on Monday and Wednesday from 1:45 PM to 3:00 PM in Carmichael 132.

If UNC Asheville is following its Late Start Schedule, the class will meet from 2:50 PM to 3:30 PM.


There are two labs held on Thursday from 1:45 PM to 4:15 PM and 4:35 PM to 7:15 PM in Robinson 223. You need to attend the lab in which you are enrolled.

If UNC Asheville is following its Late Start Schedule, the labs will meet from 2:30 PM to 4:30pm PM and 4:50 PM to 7:20 PM.

Class home page

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

Course topics

Fairly specific, though sometimes tentative, information about the topics covered in the course can be found on the class’ topics and schedule pages.

Catalog Course Description

Organization of digital computers including data representation, logic design and architectural features needed to support high-level languages. Includes a formal laboratory section using circuit design tools. Prerequisite: CSCI 181 or 182.

Learning objectives

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

You should also learn how to accomplish the following specific tasks in this course.

  1. Carry out arithmetic computations in binary and hexadecimal number systems.
  2. Translate between Boolean expressions, truth tables, and acyclic logic gate implementations.
  3. Design combinational and sequential logic circuits from functional descriptions of digital systems.
  4. Translate small sections of pseudo-code to assembly language.
  5. Write C programs for a microcontroller.
  6. Build a single board microcontroller system.
  7. Integrate a microcontroller with sensors and actuators.

Textbook and readings

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).

Here are a few on-line sources for tutorials that might also be useful.


The logic circuit simulation tool Logisim will be used for some early assignments in the course. During the second half of the semester, we will use the MPLAB® X IDE and MPLAB® XC compilers (XC16) to write programs for the Microchip PIC24H MCU. These programs are free and available for Linux, Mac OS X, and Windows.


The following weights are used in computing the course grade.

Grade component Weight
Two in-class exams
Final exam


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

All exams will be closed book and closed notes. No electronic devices, including calculators, may be used during the exam.

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

UNC Asheville’s Academic Policies and Procedures do provide excused absences for “travel on university-sanctioned business” and “up to two excused absences per semester for religious observances” when seven days notice is given. The seven day notice will allow the instructor to reschedule exams to avoid excused ab-senses. For this reason, attendance at all exams is mandatory.

Homework and assignments

Students will complete near-weekly assignments to be turned in at class or submitted via the UNC Asheville moodle system.

Homework ranges from simple “finger” exercises (which may even be in-class) to programming or circuit design assignments.

Students are required to cite any sources, including the work of other students, used in completing their assignments. If this is not done, no credit will be given for the homework. Use of other sources can result in adjustments to the homework grade.

All homework has a specific due time. Any late homework must be submitted to the late assignment bin as discussed in the policy on late assignments.


In general, the lab grade is passed on participation. Students who complete all the objectives of the lab efficiently will receive 9 of 10. Students who sparkle and inspire will receive 10 of 10. Students who don’t read lab instructions will receive 7 of 10. Students who TXT during the lab will receive 5 of 10. Students who TXT each other during the lab will receive 2 of 10.

If there are not enough hardware setups or microcontroller boards for every student to work individually, some students will be assigned to work in pairs.

The lowest lab grades will dropped in computing the lab grade average.


The following numerical scale will be used in assigning grades based on Score, the score computed using the weights described above.

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 ≥ 60 & Score < 67D
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+.

Accommodations for Students with Disabilities

Statement from the Office of Academic Accessibility

University of North Carolina at Asheville is committed to making courses, programs and activities accessible to persons with documented disabilities. Students requiring reasonable accommodations must register with the Office of Academic Accessibility by providing supporting documentation. All information provided will remain confidential. For more information please contact the Office of Academic Accessibility at (828)232-5050 or academicaccess@unca.edu or visit them in the OneStop Student Services Center.

Specific clarifications for CSCI 255

Students who have been approved for extended time for exams by the Office of Academic Accessibility must have their exams administered by the Office of Academic Accessibility and must take their exams at a time overlapping the schedule in-class exam.

Students who need additional time for CSCI 255 labs should register for the first lab period and plan on attending the two successive lab periods.

Email Communication

Academic administrators at UNC Asheville 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 brock@unca.edu. If you need to see me, send email to arrange an appointment.

I get lots of email, so please include CSCI 255 in the subject line.