Fall 2013 CSCI 255 Syllabus


The course instructor for CSCI 255 is J Dean Brock. The course lectures will be delivered on Monday and Wednesday from 10:00 AM to 11:15 AM in Robinson 217.

If UNC Asheville is following its Late Start Schedule, the class will meet from 11:40 AM to 12:40 PM.


The lab instructors for CSCI 255 are Dean Brock and Rebecca Bruce. There are two labs held on Thursday from 4:10 PM to 5:50 PM and 6:00 PM to 7:40 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 4:50 PM to 6:10pm PM and 6:20 PM to 7:40 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 microocontroller 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).


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 to write programs for the Microchip PIC24H MCU.

In some instances, students will be asked to view video lectures taped by the textbook’s authors before attending class meetings. In these cases, class meetings may be used to answer questions raised by the video lectures and to work on related problems.


The following weights are used in computing the course grade.

Grade component Weight
Two in-class exams 1/4
Final exam 1/4
Homework 1/4
Labs 1/4


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. 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 absenses 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 us to avoid scheduled exams. 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 UNCA 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 attending lab and working diligently should do well on the lab component. Each student is expected to type every keystroke required to complete a lab assignment. If there are not enough working lab computers, hardware setups or microcontroller boards for every student to work individually, some students will be assigned to work in pairs.

The two 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

The 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 Disability Services Office by providing supporting documentation. All information provided will remain confidential. For more information please contact the Disability Services Office at (828)232-5050 or disabilityservices@unca.edu or visit them in the OneStop Student Services Center.

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

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