68HC11
The MultiMIPS plan is to port the MultiMIPS 8051 Operating System
Kernel to 68HC11. The MultiMIPS 8051 Monitor will then work equally
well with either Kernel, and it will be renamed to MultiMIPS
Microcontroller Monitor.
During the summer of 2000 I took the following course at Fanshawe
College:
DIGL403 - Microprocessors I
A detailed analysis of the architecture of the MC68HC11 Microcontroller;
the machine and assembly language programming, and hardware interfacing
My final grade was A+. We did the following projects:
1. a simple assembly language Program #1 to type in and run; it
illustrated a loop, loading registers, machine language vs data
2. a simple assembly language Program #2 to type in and run; it
illustrated access to subroutines in the Buffalo monitor
3. a simple assembly language Program #3 to type in and run; it
illustrated converting between HEX and ASCII
4. use the Buffalo MM and MD commands and a voltmeter to alter the
value at a port and view the results; write an assembly language Program #4
to read port C and send the data to port B
5. write an assembly language Program #5 to bubble sort data in given
memory locations
6. write an assembly language Program #6 to generate a 22 ms positive
pulse on PA3 whenever a positive edge is detected on PA0
The challenge of project 6 has to do with the complexity of PA3 as follows.
Writes to port A pins that are configured for either IC or OC do not change
the pin state. PA3 is by default configured for O5 so the program must
explicitly turn off O5. In turning off O5 the program implicitly chooses I4.
We do not want I4, but it is disabled by the default setting of bits 6 and 7 of
TCTL2 so choosing it has no ill effects. To further complicate things, the
Buffalo Trace command depends on O5 being set. Once O5 is disabled
debugging the program becomes more of a challenge.