Keil Logo

Peripheral Simulation

For Silicon Laboratories, Inc. C8051F361 — Ports 0-4

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

Parallel Port 0

This dialog displays the SFR and pins of Port 0. This port may be used as a 8-bit general purpose I/O port.

  • P0 represents the P0 SFR. The HEX value and value of each bit is displayed and may be changed from this dialog.
  • P0MDIN is set to configure the type of input for each pin. When P0MDIN.x=1, input is digital. When P0MDIN.x=0, input is analog.
  • P0MDOUT configures the output mode of each pin for this port. When P0MDOUT.x=1, P0.x is push-pull. When P0MDOUT.x=0, P0.x is open drain.
  • P0SKIP is set to instruct the Digital I/O Crossbar to ignore or "skip over" this pin when assigning Port pins for peripherals.
  • 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).

Parallel Port 1 Dialog

Parallel Port 1

This dialog displays the SFR and pins of Port 1. This port may be used as a 8-bit general purpose I/O port.

  • P1 represents the P1 SFR. The HEX value and value of each bit is displayed and may be changed from this dialog.
  • P1MDIN is set to configure the type of input for each pin. When P1MDIN.x=1, input is digital. When P1MDIN.x=0, input is analog.
  • P1MDOUT configures the output mode of each pin for this port. When P1MDOUT.x=1, P1.x is push-pull. When P1MDOUT.x=0, P1.x is open drain.
  • P1SKIP is set to instruct the Digital I/O Crossbar to ignore or "skip over" this pin when assigning Port pins for peripherals.
  • 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).

Parallel Port 2 Dialog

Parallel Port 2

This dialog displays the SFR and pins of Port 2. This port may be used as a 8-bit general purpose I/O port.

  • P2 represents the P2 SFR. The HEX value and value of each bit is displayed and may be changed from this dialog.
  • P2MDOUT configures the output mode of each pin for this port. When P2MDOUT.x=1, P2.x is push-pull. When P2MDOUT.x=0, P2.x is 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).

Parallel Port 3 Dialog

Parallel Port 3

This dialog displays the SFR and pins of Port 3. This port may be used as a 8-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.
  • P3MDOUT configures the output mode of each pin for this port. When P3MDOUT.x=1, P3.x is push-pull. When P3MDOUT.x=0, P3.x is 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).

Parallel Port 4 Dialog

Parallel Port 4

This dialog displays the SFR and pins of Port 4. This port may be used as a 8-bit general purpose I/O port.

  • P4 represents the P4 SFR. The HEX value and value of each bit is displayed and may be changed from this dialog.
  • P4MDOUT configures the output mode of each pin for this port. When P4MDOUT.x=1, P4.x is push-pull. When P4MDOUT.x=0, P4.x is 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).

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 */
Get more information about the
Peripheral Simulation Capabilities
of the µVision Debugger.
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.