Peripheral Simulation
For NXP (founded by Philips) P89LPC920 — Port 3 (Quasi-bidirectional, Push-Pull, Input Only, Open Drain, 2-bits)
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 3 Dialog
This dialog displays the SFR and pins of Port 3. This port may be
used as a 2-bit general purpose I/O port.
-
P3 represents the P3 SFR. The HEX value and value of
each bit is displayed and may be changed from this dialog.
-
P3M1 and P3M2 configure the output mode of each
pin for this port.
-
Set P3M1.x:P3M2.x as follows: 0:0 for
Quasi-Bidirectional, 0:1 for Push-Pull, 1:0 for Input Only
(Hi-Z), or 1:1 for Open Drain.
-
Pins represents the states of the pins on the simulated
MCU. You may set the level of the input pin to high (1) or low
(0).
-
ENCLK (Enable Output Clock) is set to output CCLK/2 on
the XTAL2 pin (P3.0) and the crystal oscillator is not being
used.
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 */