
The first set of preparatory exercises and the first project is supported by PLDs
(programmable logic devices), and the final achievement is a small didactic micro-
processor, that is a sub set of the 8031 microcontroller, built with a CPLD, a RAM
and an EEPROM [3] [4].
The second set of preparatory exercises and the second project is supported by the
already presented kit, based on the 8031 microcontroller. The emphasis of this paper
is around this set of exercises.
For the first set of exercises, system’s decomposition into control and data parts is
a central concept in our approach. The laboratory assignments sequence stands for
half a semester, and is composed by the following mini-project sequence:
- Introductory PLD assignment: revisit to PLD configuration using combinatorial
functions and state machines. Lab classes stands for one week (two classes of
two hours each per week).
- Introductory project: the goal is to implement a two-byte multiplier through suc-
cessive additions. Lab classes stands for two weeks.
- Intermediary project: the goal is to implement a simple calculator, able to com-
pute an expression like 2.A-B. Lab classes stands for one week.
- Preparatory project: the goal is to get acquainted with memory usage, namely
write/read data to/from RAM and read data from ROM (fundamental blocks
within microprocessor architecture). Lab classes stands for one week.
- Mini-microprocessor project: the goal is to build a didactic mini-
microprocessor, named 7½ [3] [4]. Lab classes stands for two weeks and a half.
Students need to dedicate some extra-hours to conclude the assignment.
For the second set of exercises, usage of 8031 microcontroller is the main focus.
The laboratory assignments sequence stands for half a semester, and is composed by
the following mini-project sequence:
- Introductory project I: the goal is to implement a two-byte multiplier through
successive additions using the 8031. Emphasis on simulation. Lab classes stands
for half week.
- Introductory project II: the goal is to implement a multiplier of N bytes per N
bytes, using previous results. Emphasis on simulation. Lab classes stands for
half week.
- Introductory project III: the goal is to configure and use built-in timers, and ob-
tain a square wave generator. Lab classes stands for half week.
- Introductory project IV: the goal is to configure and use the built-in serial inter-
face with a terminal. Lab classes stands for half week.
- Introductory project V: the goal is to implement the greatest common divisor,
and to test using a terminal for input-output. Lab classes stands for half week.
- Microcontroller final project: the goal is to build a complete program to be
downloaded into the 8031 kit. Lab classes stands for two weeks and a half. Stu-
dents need to dedicate some extra-hours to conclude the assignment.
The focus of our remote lab is to support the second set of experiments. For the fi-
nal project, students can choose among a set of possible applications (in the sense that
we want to get different syllabus for the different projects to be executed by the dif-
ferent groups). Those options range from computational intensive programs to input-
output intensive embedded applications. In order to get students more involved in the
91