Peripheral Simulation
For Texas Instruments LM3S101 — General Purpose Input/Output (GPIOA-C)
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.
General Purpose Input/Output Port A (GPIOA) Dialog
The GPIO Port A Dialog controls the direction of the general
purpose port pins. You may use the following controls to select and
configure the GPIO port settings.
Port A
-
DIR (Port Bit Configuration Registers) specify how each
I/O Port bit is configured (input, output, alternate function,
etc.
- DATA checkboxes represent the data bits output.
-
Pins allows you to manually set or clear
individual pins for this port.
General Purpose Input/Output Port B (GPIOB) Dialog
The GPIO Port B Dialog controls the direction of the general
purpose port pins. You may use the following controls to select and
configure the GPIO port settings.
Port B
-
DIR (Port Bit Configuration Registers) specify how each
I/O Port bit is configured (input, output, alternate function,
etc.
- DATA checkboxes represent the data bits output.
-
Pins allows you to manually set or clear
individual pins for this port.
General Purpose Input/Output Port C (GPIOC) Dialog
The GPIO Port C Dialog controls the direction of the general
purpose port pins. You may use the following controls to select and
configure the GPIO port settings.
Port C
-
DIR (Port Bit Configuration Registers) specify how each
I/O Port bit is configured (input, output, alternate function,
etc.
- DATA checkboxes represent the data bits output.
-
Pins allows you to manually set or clear
individual pins for this port.
Digital I/O Ports VTREG
Data Type: unsigned char
The PORTx VTREGs represent the I/O pins of the simulated
MCU for Port A, Port B, and so on. PORTA represents Port A, PORTB
represents Port B, 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,
PORTA
to obtain value corresponding to the set pins of Port A. You may
also change the input values of port pins by changing the value of
the VTREG. For example,
PORTA=0x000000F0
sets the upper four port pins of Port 0 to a value of 1 and all
other 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:
PORTA |= 0x00000001; /* Set P0.0 Pin */
PORTB &= ~0x00000200; /* Clr P1.9 Pin */
PORTA ^= 0x00800000; /* Toggle P0.23 Pin */