Rabbit 4000 Microprocessor
User's Manual
PREV INDEX NEXT


8. Parallel Port A

8.1 Overview

Parallel Port A is a byte-wide port that can be used as an input or an output port. Parallel Port A is also used as the data bus for the slave port and auxiliary I/O bus. The Slave Port Control Register (SPCR) is used to configure how Parallel Port A is used. Parallel Port A is an input at startup or reset. If the SMODE pins have selected the slave port bootstrap mode, Parallel Port A will be the slave port data bus until disabled by the processor. Parallel Port A can also be used as an external I/O data bus to isolate external I/O from the main data bus.

Table 8-1. Parallel Port A Pin Alternate Output Functions

Pin Name

Slave Port Data Bus

Auxiliary I/O Bus

PA[7:0]
SD[7:0]
ID[7:0]


8.1.1 Block Diagram


8.1.2 Registers

Register Name

Mnemonic

I/O Address

R/W

Reset

Port A Data Register
PADR
0x0030
R/W
xxxxxxxx


8.2 Dependencies

8.2.1 I/O Pins

Parallel Port A uses pins PA0 through PA7. These pins can be used as follows.

All Parallel Port A bits are inputs at startup or reset.

See the associated peripheral chapters for details on how they use Parallel Port A.

8.2.2 Clocks

Any outputs on Parallel Port A are clocked by the peripheral clock.

8.2.3 Other Registers

Register

Function

SPCR
Used to set up Parallel Port A.


8.2.4 Interrupts

There are no interrupts associated with Parallel Port A.

8.3 Operation

The following steps explain how to set up Parallel Port A.

  1. Select the desired mode using SPCR.

  2. If the slave port or auxiliary I/O bus is selected, refer to the chapters for those peripherals for further setup.

Once Parallel Port A is set up, data can be read or written by accessing PADR. Note that Parallel Port A is not available for general-purpose I/O while the slave port or the auxiliary I/O bus is selected. Selecting these options for Parallel Port A affects Parallel Port B because Parallel Port B is then used for address and control signals.

8.4 Register Descriptions

Parallel Port A Data Register (PADR) (Address = 0x0030)

Bit(s)

Value

Description

7:0
Read
The current state of Parallel Port A pins PA7–PA0 is reported.
Write
The Parallel Port A buffer is written with this value for transfer to the Parallel Port A output register on the next rising edge of the peripheral clock.


Slave Port Control Register (SPCR) (Address = 0x0024)

Bit(s)

Value

Description

7
0
Program fetch as a function of the SMODE pins.
1
Ignore the SMODE pins program fetch function.
6:5
read
These bits report the state of the SMODE pins.
write
These bits are ignored and should be written with zero.
4:2
000
Disable the slave port. Parallel Port A is a byte-wide input port.
001
Disable the slave port. Parallel Port A is a byte-wide output port.
010
Enable the slave port, with /SCS from Parallel Port E bit 7.
011
Enable the auxiliary I/O bus. Parallel Port A is used for the data bus and Parallel Port B[7:2] is used for the address bus.
100
This bit combination is reserved and should not be used.
101
This bit combination is reserved and should not be used.
110
Enable the slave port, with /SCS from Parallel Port B bit 6.
111
Enable the auxiliary I/O bus. Parallel Port A is used for the data bus and Parallel Port B[7:0] is used for the address bus.
1:0
00
Slave port interrupts are disabled.
01
Slave port interrupts use Interrupt Priority 1.
10
Slave port interrupts use Interrupt Priority 2.
11
Slave port interrupts use Interrupt Priority 3.



Rabbit Semiconductor
www.rabbit.com
PREV INDEX NEXT