THRSim11 68HC11 Simulator for Windows.
Back to the THRSim11 home page ...
Copyright © 2013 Harry
Broeders. Version 5.30 April 2013
What's new in version 5.30?
The Motorola 68HC11 microcontroller was a popular microcontroller used in
many applications. With the THRSim11 program you can edit, assemble, simulate
and debug programs for the 68HC11 on your windows PC. You can also use
THRSim11 to debug the program on your target EVM or EVB compatable
board. The simulator simulates the CPU, ROM, RAM, and all memory mapped
I/O ports. It also simulates the on board peripherals such as:
-
timer (including pulse accumulator),
-
analog to digital converter,
-
parallel ports (including handshake),
-
serial port,
-
I/O pins (including analog and interrupt pins).
While debugging the graphical user interface makes it possible to view and
control every register (CPU registers and I/O registers), memory location
(data, program, and stack), and pin of the simulated microcontroller. Even
when the program is running! It is possible to stop the simulation at any
combination of events. For example: stop when RxD becomes low and RAM location
$003F contains $BD or I/O register TCNT is greater than $3456.
A number of (simulated) external components can be connected to the pins
of the simulated 68HC11 while debugging. For example:
-
LED's,
-
switches,
-
analog sliders (variable voltage potential).
-
serial transmitter and receiver.
-
many more... see the THRSim11 components page.
There is also a 4 x 20 LCD character display mapped in the address space
of the 68HC11.
THRSim11 can communicate with the Motorola EVM and EVB boards or with any
other board running the BUFFALO monitor program. This monitor program can
be downloaded (for free) from the Motorola website. When your assembly program
is loaded into the target board the graphical user interface makes it
possible to view and control every register (CPU registers and I/O registers)
and memory location (data, program, and stack) of the real microcontroller.
It is possible to stop the execution at any address and inspect or change
the registers and memory.
For high level language (C/C++) support THRSim11 has a debugger that reads
object files with debug info in the DWARF2 debug format used by the
free GNU gcc compiler.
C variables are also updated while running the program.
More information on debugging GNU gcc C/C++
or as assembler programs with THRSim11 is available here.
Information about THRAss11.
Technical specifications of the THRSim11 68HC11 Simulator:
-
nearly Complete
simulation of the Motorola 68HC11A8 microcontroller.
-
Complete instruction-set simulation.
-
nearly
Complete simulation of the registerset.
-
CPU registers: A, B, D, X, Y, SP (stack pointer), PC (program
counter) and CCR (condition code register).
-
Port registers: PORTA, PORTB, PORTC, PORTCL, PIOC, PORTD,
PORTE, DDRC and DDRD.
-
Timer registers: TCNT, TIC1, TIC2, TIC3, TOC1, TOC2, TOC3,
TOC4, TOC5, TCTL1, TCTL2, TMSK1, TFLG1, TMSK2 and TFLG2.
-
Serial registers: BAUD, SCCR1, SCCR2, SCSR and SCDR.
-
Pulse accumulator registers: PACTL and PACNT.
-
AD converter registers: ADCTL, ADR1, ACR2, ADR3 and ADR4.
-
Handshake registers: PIOC, PORTB, PORTC and PORTCL.
-
Other registers:
CONFIG, COPRST, HPRIO, INIT, OPTIONS and PPROG.
-
CONFIG register can only be changed by using the thrsim11_options.txt file
and can be used to enable the COP system which is fully simulated.
-
COPRST register must be used to reset the COP timer regulary when the COP
system is enabled.
-
HPRIO register can be used to select a high priority interrupt.
-
INIT register can be used to remap the location of RAM and the location of
the I/O registers.
-
OPTION register can be used to select the sensitivity of the IRQ input, to
power up the ADC, and to select the COP timer rate.
-
nearly
Complete simulation of memory.
-
0.25 KBytes of RAM ($0000 to $00FF). Extensible in the licensed
version to a maximum of 64KByte ($0000 to $FFFF).
-
0.25 KBytes of ROM ($FF00 to $FFFF). Extensible in the licensed
version to a maximum of 64KBytes ($0000 to $FFFF).
-
nearly Complete
I/O simulation.
-
Simulation of all pins.
-
PA0 to PA7 (including the IC1 to IC3 and OC1 to OC5 function).
-
PB0 to PB7.
-
PC0 to PC7.
-
PD0 to PD5 (including the RxD and TxD function).
-
PE0 to PE7 (analog pins).
-
IRQ and XIRQ
-
RESET
-
STRA and STRB
-
VrL and VrH (analog pins).
-
Timer (including pulse accumulator).
-
Analog to Digital Converter.
-
Parallel ports (including handshake).
-
Serial port.
-
Simulation of some external hardware.
-
Simulator Graphical User Interface (GUI). See
this screenshot.
-
Register windows (CPU and I/O registers) with edit, trace
and breakpoint capabilities.
-
Pin windows with edit, trace and breakpoint capabilities.
-
Memory window with edit, trace and breakpoint capabilities.
-
Custom made window with the registers (CPU and or I/O),
memory places and pins you want to combine! And you still have edit,
trace and breakpoint capabilities. You can even remove or add registers,
memory places and/or pins.
-
List window with breakpoints, tracing and single stepping.
-
Disassembler window (e.g. to trace self modifying code).
-
Memory dump window for an broader overview with edit
capabilities.
-
Stack window with edit, trace and breakpoint capabilities.
-
Command window with edit and redo capabilities. About 50 commands
including HELP.
-
Label window with edit, add and remove capabilities.
-
Breakpoint window with edit, add and remove capabilities.
-
Target Board Graphical User Interface (GUI).
See this screenshot.
-
Target Register windows (CPU and I/O registers) with edit
and trace capabilities.
-
Target Memory window with edit and trace capabilities.
-
Target custom made window with the target registers (CPU
and or I/O) and target memory places you want to combine! And you
still have edit, trace and breakpoint capabilities. You can even remove or
add target registers or target memory places.
-
List window with breakpoints, tracing and single stepping. The
target board's PC can also be traced in the simulator's list window.
-
Target Disassembler window (e.g. to trace self modifying
code).
-
Target Memory dump window for an broader overview with edit
capabilities.
-
Target Stack window with edit and trace capabilities.
-
Target Command window with edit and redo capabilities. All EVB
or EVM commands plus severall extra commands.
-
Label window with edit, add and remove capabilities. All
labels can be used in target commands also.
-
Target Breakpoint list with add and remove menu items.
-
Integrated assembler and editor with drag
and drop support.
-
Support for debugging C
programs compiled with GNU gcc for 68HC11.
-
Support for debugging 68HC11 assembler
programs compiled with GNU as for 68HC11.
-
Complete help file including context sensitive help.
-
A lot of components that you can download and
plug into THRSim11.
-
THRSim11 CDK (Component
Development Kit) which you can use to develop your own components.
Installation of THRSim11:
Making a small payment to compensate for the work involved.
THRSim11 is free of charge. But a small payment to compensate for
the work involved is appreciated. To make a small payment click
here. To get more information about the
THRSim11. Please contact:
Harry Broeders
Mariniersweg 24
3255 VG Oude Tonge
The Netherlands
Tel: +31 187641143
E-mail: harry@hc11.demon.nl