Background Debugger
The Motorola Background Debugger is a tool for hardware debugging
the 68332 from a PC. On the 68332 side, the software is on the chip,
the software for the PC is available free from Motorola.
- hardware requirements: background debugger circuit+cable to interface
EyeBot to PC parallel port
- make sure the PC parallel port is set to "EPP" mode. You can change/verify
the port setting by entering the system setup when booting the PC
(usually by pressing the "Del" key during bootup)
- only needed for changing the "Robios" operating system,
residing on the EyeBot's Flash-ROM
- for detailed information see Motorola db32 Debugger.
- for working eith assembler files see
debugger with assembly description.
Debugger Operation
Install the background debugger on your PC and connect the debugger circuit.
Then start the debugger:
bd32
Now switch on EyeBot and enter
stop
in the debugger and press the reset button on the board.
The screen should now show that the board
is halted (bottom line of the screen).
Then initialize the 68332 registers:
do mapcs
Now you can use all debugger commands, e.g. breakpoints, single step,
memory display and memory modify. The command "window on" allows to see
registers, memory contents, and commands all at once.
Flash-ROM (128K)
There are currently two ROM sizes used in the EyeBot; 128K and 1MB.
If you have a 1MB version, please refer to the next section.
The flash-ROM is divided into two partitions: a large partition for
the RoBIOS operating system and all system routines, and a small
partition for the hardware description table (HDT).
This allows a separate flashing of the HDT in case new hardware
componentes are added or deleted, so the RoBIOS does not
need to be changed.
To erase and rewrite the Flash-ROM for RoBIOS:
flash 11111110 robios.hex 0
The file 'robios.hex' will be flashed with offset zero. Currently used is a
29F010 chip, which means 8 segments of 16 kB each. The first string
of 8 "1"s or "0" determines how many segments are erased.
Depending on program size,
you may want to specify a smaller area, e.g. 11110000 for half the flash-ROM
(check the assembler output file, not the S-record file).
To erase and rewrite only the Flash-ROM for the HDT, simply
download the HDT or:
(xxxx stand for a specific name, e.g. vehi
for vehicle)
flash 00000001 hdtxxxx.hex $1c000
If everything worked properly, you should see the type of the F-ROM
on the screen (currently: AMD 29F010) and the programming should start
(you will be able to see the progress). Depending on the system you
are using, this takes a few seconds to a few minutes.
Flash-ROM (512K)
In a system with 1MB of ROM, there is additional space to save
up to 3 user programs in ROM. These can be saved and loaded from
the "USR"/"ROM" menu.
Since the sectors are larger for the 1MB ROM, the addresses for
flashing are different.
To erase and rewrite the Flash-ROM for RoBIOS and HDT:
(xxxx stand for a specific name, e.g. vehi for vehicle)
flash 11000000 robios.hex 0
flash 00000000 hdtxxxx.hex $1c000
To update the HDT only, simply download the HDT or:
flash 00110000 hdtxxxx.hex $20000
The HDT will be copied into its original place upon restart of
the system.
This will erase any user program stored in the first ROM slot.
Hardware Description Table (HDT)
Please see the
full HDT documentation.
In order to add/remove any sensors/actuators or change other
EyeBot characteristics (eg. CPU speed), you can change the corresponding
HDT file (eg. myhdt.c). Compile the altered c-file into
a hex-file by using:
gcchdt myhdt.c
Then download the new hex-file like
you would an ordinary application program. RoBIOS will automatically
detect the HDT-file and reflash the HDT section of the operating
system. Reset the system after the reflash is completed.
Thomas Bräunl, 1998