The Advanced
®
Osmometer Model 3320 Service Manual
20
future expansion. The read-only memory is
divided into four sections: reset vector, boot
code, parameter blocks (unused), and appli-
caiton code. The reset vector tells the proces-
sor where to first start executing code; in this
case, the boot code is executed first after
reset. The boot code determines if new soft-
ware will be downloaded by checking if the
program switch or dip switch is in the “PRO-
GRAM” position. If it is, the boot code waits
for new software to be downloaded through
the serial port. If not, the application code
starts.
The real time clock maintains the current date
and time, and contains nonvolatile memory
where the instrument’s operation parameters
are stored. A internal lithium battery pre-
serves the contents of the nonvolatile memory
when the instrument is turned off. Finally, the
read-write memory is used for stacks, vari-
ables, etc., except for the small section allo-
cated for the interrupt vectors. The interrupt
vectors tell the processor what code to run
when an interrupt occurs, and functions simi-
larly to the reset vector.
Please note that all memory addresses and
sizes are always defined in terms of bytes,
even though the processor handles words (1
word = 2 bytes, 1 byte = 8 bits; therefore, 16
bits = 1 word).
Input/Output Map: The 64 kilobytes of I/O
address space control access to all peripherals
such as the serial ports, application board, etc.
The processor uses 256 bytes, called the
Peripheral Control Block, to control the inte-
grated serial ports, timers, interrupts, chip
selects, and I/O pins. The Peripheral Control
Block is fully described in the
80C186EB/80C188EB Microprocessor User’s
Manual. The application board’s registers and
the CPU board’s registers control access to
various functions and are described later.
Memory: Two types of memory are avail-
able: read-only and read/write. The chips
used here have 8-bit wide data buses. Used in
pairs, the memory becomes compatible with
the processor’s 16-bit wide data bus. The
read-only memory is implemented using two
128 kilobytes x 8 bits Flash EPROMs. Flash
memory is only programmable when a pro-
gramming voltage (in this case, 12 volts DC)
is applied to the memory; otherwise, it
behaves like read-only memory. The boot
code controls the programming voltage, since
this is the only place where new software can
be downloaded. The read/write memory is
implemented using two 128 kilobytes x 8 bits
static RAMs.
Watchdog Timer: The watchdog timer pro-
vides a mechanism to reset the processor
when the software is not behaving normally.
The software “pets” the watchdog every 100 -
200 milliseconds. As long as the watchdog is
“petted”, nothing happens. However, if the
software stops “petting” the watchdog, the
watchdog “bites” the processor by activating
the processor’s RESET pin, causing the
processor to reset. The watchdog will also
reset the processor if the power supply falls
below 4.75 VDC. These two features allow
the instrument to recover from abnormal soft-
ware and hardware conditions.
Real Time Clock (RTC): The real time
clock maintains the current date and time.
The RTC uses an internal clock circuit with
an internal, 10-year life, lithium battery to
perform timekeeping. The battery also pre-
serves the contents of internal memory.
Dip Switch: The four-position dip switch
allows the user to download new software via
one switch. The other three switches are
available for selecting different operating
modes. These operating modes and the
process for downloading software are
described later in this manual.
Voltages: Three voltages are present on the
CPU board: +5 VDC, +12 VDC, and V
PP
.
+5 VDC powers all the logic. +12 VDC is
switched on and off to create the flash memo-
ry’s programming voltage, V
PP
.
Glue Logic: The glue logic performs the
functions of creating the RAM memory chip
selects, the Flash memory write signals, the