to the ADuC812, sometimes the program would run
when it should not have. This would happen because
the ADuC812 does not finish a download with all of its
registers reset to their default values (Analog Device
Technical notes). In particular, it leaves a timer running
that is turned off after a reset. Students would forget to
turn on the timer in their program, would find that their
program worked on the microconverter but not in
simulation, and would hand in the programs not
understanding what had happened. A somewhat
different problem with our IDE is how it simulates non-
ADuC devices. The IDE has the ability to simulate the
“other side” of a UART. One can ask the IDE to open a
window that behaves very much like the Windows
“HyperTerminal” program that allows one to
communicate using the (virtual) P.C.’s (virtual) serial
(COM) port. The problem with the window opened by
the IDE is that it automatically adjusts itself to
whatever baudrate the user has, in fact, selected. If the
user meant to select a baudrate of 19,200 symbols/sec
but in fact selected 1,200 symbols/sec, the
“HyperTerminal” window will show perfect
communications. When the user downloads the
program to the microcontroller, it may take a fair
amount of time for him/her to realize where the mistake
was. Here one cannot say the simulator did not work
correctly. It worked correctly but allowed the user to
fool him or herself.
7 LESSONS WE HAVE LEARNED
After working with various simulation tools, one
realizes that they have advantages and disadvantages.
The simulation tools may be more accessible than the
physical system being simulated is. The simulation
tools may allow one to observe things that would
otherwise be difficult or impossible to observe. The
tools may also be less expensive than the physical
system. For these reasons one uses the tools.
When one uses simulation tools intensively, one
realizes that they must be considered a separate type of
“equipment.” Just as standard physical systems have
their personalities, their quirks, so do simulators and
virtual equipment. During an engineer’s working
lifetime, the engineer will have to learn to work with
many types of equipment, and it will be necessary to
understand the idiosyncrasies of each piece of
equipment.
An experienced engineer should not have a problem
distinguishing between the properties of a simulator
and the properties of an actual piece of equipment.
When working with students, however, it is not as
certain that the students will manage to make the
distinction. For this reason great care must be exercised
when running a lab on equipment other than the actual
industry-standard equipment.
In our microcontroller lab, much effort is expended
in order to help the students understand what a “virtual
microcontroller” is and what a real microcontroller is.
As long as we succeed in making that distinction clear,
we are helping our budding engineers understand the
tools of the trade – both “virtual equipment” and “real”
equipment. That is, of course, our goal.
ACKNOWLEDGEMENTS
Many people have contributed to the microcontroller
lab over the years. We are particularly grateful to Prof.
Aryeh Weiss of Bar Ilan University who has supported
the lab from its outset and to the members of our team
– Messrs. Tamir Rozental, Shai Tamir, Amikam
Borkowski, Amihai Meiri, and Aviram Gur.
REFERENCES
Analog Devices, “MicroConverter Technical Note -
uC004 Understanding the Serial Download Protocol,”
Analog Devices, Inc., Norwood, MA, 2001.
Barbosa, A. Lula, B. and Lima, A. F., 2007. Symbolic and
numeric quantum circuit simulation, Proceedings of
the 1st International Conference on Quantum, Nano,
and Micro Technologies (ICQNM'07), pp. 6-10.
Chaturvedi, S. K. and Akan, O., 2006. Simulation and
Visualization Enhanced Engineering Education,
International Mechanical Engineering Education
Conference, Beijing, China.
Davidovitch, L. Parush, A. and Shtub, A., 2006.
Simulation-based Learning in Engineering Education:
Performance and Transfer in Learning Project, Journal
of Engineering, American Society for Engineering
Education, Oct., pp. 289-300.
Donzellini, G. and Ponta, D., 2007. A Simulation
Environment for e-Learning in Digital Design, IEEE
Transactions on Industrial Electronics, vol. 54, no. 6,
pp. 3078-3085.
Engelberg, S. 2012. ADuC841 Microcontroller Design Manual:
From Microcontroller Theory to Design Projects, Circuit
Cellar, Vernon, CT, to appear.
Feisel, L. D. and Rosa, A. J. 2005. The role of the
laboratory in undergraduate engineering education,
Journal of Engineering Education, vol. 94, no. 1, pp.
121–130.
Hundhausen, C. D. and Brown, J. L. , 2005. What you see
is what you code: a radically dynamic algorithm
visualization development model for novice learners,
Proceedings of the 2005 IEEE Symposium on Visual
Languages and Human-Centric Computing
(VL/HCC'05), pp. 163-170.
Ma, J. and. Nickerson, J. V., 2006. Hands-on, simulated,
and remote laboratories: A comparative literature
A"PARTIALLYVIRTUAL"MICROCONTROLLERLABORATORY
341