Slovak title: Efektívne Počítačom Podporované Vyučovanie, 1993 Led by Ing. Štefan Švarc, PhD. A more recent version of the project is available here: IPPV.
Basic concept
Each student has a device (called a student mouse) with four keys. The teacher occasionally asks students questions with up to four possible answers (presented as options A/B/C/D). Answers are collected by a computer and validated against the correct answer, as defined by the teacher. Answers are scored and displayed per student in real time.
Class data are available for later analysis. Historical and statistical data by question/class/student are processed in a separate application.
|
The software was initially implemented in MS-DOS. The application accessed the LPT port directly. This approach became an issue when we considered migrating to the Windows environment.
A suite of supporting applications was developed and coded in Borland Pascal 5.5. For time-critical sections, inline assembler was used.
Figure 2 - EPPV Menu Screen
Functional design schema
- Each box has assigned a unique device number via DIP switches,
- The reset signal initializes the response capture cycle,
- The signal clock increments the internal counter on each device. The clock count is compared to the device number. If these two numbers match, the DEVSel signal becomes active.
- Combined with the lowest two bites (used to address individual keys), a state of the addressed key is copied to a shared signal BtnX.
- Since the PC controls the Reset and Clock signals, the control procedure always knows which key is selected.
To make this network work, one must consider the fan-out coefficient (the number of Inputs fed by a single Output). The concept of a shared BtnX signal can be implemented either as "three-state logic" or a technique called wired-AND (using open collector circuits).
The Circuit diagram below shows the building blocks of each device.
Figure 3 - A Student Mouse Circuit diagram
Code examples
- Demonstrated routines collect responses from connected devices. Coded in Borland Pascal / Inline assembler, compiled for MS DOS environment.
- Keyboard driver code (no need for a TSR routine) handles regional characters.
- String library with various string manipulation functions.
|