Peripheral Simulation
For Maxim MAX7651 — Port 0
Simulation support for this peripheral or feature is comprised of:
- Dialog boxes which display and allow you to change peripheral configuration.
- VTREGs (Virtual Target Registers) which support I/O with the peripheral.
These simulation capabilities are described below.
Parallel Port 0 Dialog
This dialog displays the SFR and pins of Port 0.
-
P0: This is the P0 SFR. The HEX value and value of each
bit is displayed and may be changed from this dialog.
-
Pins: These are the states of the pins on the simulated
MCU. When used as outputs, these have the same value as the P0 SFR.
When used as inputs (P0.x is 1) you may set the level of the input
pin to high (1) or low (0).
The PORT0 VTREG may be used (from the Command Window or from a
user or signal function) to affect the input values of the simulated
pins of Port 0.
Timer/Counter 0 Dialog
The Keil Debugger simulates all aspects of Timer/Counter 0. The
configuration is reflected in the Timer/Counter 0 Dialog that you may
open from the Peripherals Menu. You may use the controls in the
dialog to override the settings configured by your target program.
This allows you to learn how the timer/counter works by interactively
changing the configuration settings.
Mode
-
Mode settings select the size and auto-reload functions,
and set either Timer or Counter operation.
-
TCON (Timer Control Register) holds the run/stop and
overflow flag for Timers 0 and 1.
-
TMOD (Timer Mode Register) holds the mode, gate cotrol
and counter/timer select bits.
-
TH0 (Timer 0 - High Byte) contains the upper 8-bits of
the Timer 0 value.
-
TL0 (Timer 0 - Low Byte) contains the lower 8-bits of
the Timer 0 value.
-
T0 Pin is the Timer/Counter 0 pin for external input
(P3.4/T0).
-
TF0 (Timer 0 Overflow Flag) is set when when Timer 0
overflows.
Control
-
Status (Timer/Counter Status) displays the current
status of the Timer/Counter.
-
TR0 (Timer 0 Run Control) is set to turn Timer 0 on, and
reset to turn it off.
-
GATE (Gating Control) is set to enable a timer/counter
while the INT0 flag is high and run control (TR0) is set.
-
INT0# External Interrupt 0 Input / Timer 0 Gate Control
Input pin.
PORTx VTREG
Data Type: unsigned char
The PORTx VTREGs represent the I/O pins of the simulated
MCU for Port 0, Port 1, and so on. PORT0 represents Port 0, PORT1
represents Port 1, etc. You may read PORTx to determine the
state of the output pins of that port. For example, in the command
window, you may type,
PORT0
to obtain value corresponding to the set pins of Port 0. You may
also change the input values of port pins by changing the value of
the VTREG. For example,
PORT1=0xF0
sets the upper four port pins of Port 1 to a value of 1 and the
lower 4 port pins to a value of 0. You may use the bitwise operators
AND(&), OR(|) and XOR(^) to change individual bits of the PORTx
VTREGs. For example:
PORT1 |= 0x01; /* Set P1.0 Pin */
PORT3 &= ~0x02; /* Clr P3.1 Pin */
PORT1 ^= 0x80; /* Toggle P1.7 Pin */