Port b data register - portb, Port b data direction register - ddrb, Port b input pins address - pinb – Rainbow Electronics ATmega103L User Manual
Page 77: Port b as general digital i/o

ATmega603/103
77
The Port B pins with alternate functions are shown in the following table:
When the pins are used for the alternate function the DDRB and PORTB register have to be set according to the alternate
function description.
Port B Data Register - PORTB
Port B Data Direction Register - DDRB
Port B Input Pins Address - PINB
The Port B Input Pins address - PINB - is not a register, and this address enables access to the physical value on each Port
B pin. When reading PORTB, the Port B Data Latch is read, and when reading PINB, the logical values present on the pins
are read.
Port B as General Digital I/O
All 8 pins in port B have equal functionality when used as digital I/O pins.
PBn, General I/O pin: The DDBn bit in the DDRB register selects the direction of this pin, if DDBn is set (one), PBn is con-
figured as an output pin. If DDBn is cleared (zero), PBn is configured as an input pin. If PORTBn is set (one) when the pin
configured as an input pin, the MOS pull up resistor is activated. To switch the pull up resistor off, the PORTBn has to be
cleared (zero) or the pin has to be configured as an output pin. The port pins are tri-stated when a reset condition becomes
active, even if the clock is not running.
Table 30. Port B Pins Alternate Functions
Port Pin
Alternate Functions
PB0
SS (SPI Slave Select input)
PB1
SCK (SPI Bus Serial Clock)
PB2
MOSI (SPI Bus Master Output/Slave Input)
PB3
MISO (SPI Bus Master Input/Slave Output)
PB4
OC0/PWM0 (Output Compare and PWM Output for Timer/Counter0)
PB5
OC1A/PWM1A (Output Compare and PWM Output A for Timer/Counter1)
PB6
OC1B/PWM1B (Output Compare and PWM Output B for Timer/Counter1)
PB7
OC2/PWM2 (Output Compare and PWM Output for Timer/Counter2
Bit
7
6
5
4
3
2
1
0
$18 ($38)
PORTB7
PORTB6
PORTB5
PORTB4
PORTB3
PORTB2
PORTB1
PORTB0
PORTB
Read/Write
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
Initial value
0
0
0
0
0
0
0
0
Bit
7
6
5
4
3
2
1
0
$17 ($37)
DDB7
DDB6
DDB5
DDB4
DDB3
DDB2
DDB1
DDB0
DDRB
Read/Write
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
Initial value
0
0
0
0
0
0
0
0
Bit
7
6
5
4
3
2
1
0
$16 ($36)
PINB7
PINB6
PINB5
PINB4
PINB3
PINB2
PINB1
PINB0
PINB
Read/Write
R
R
R
R
R
R
R
R
Initial value
Hi-Z
Hi-Z
Hi-Z
Hi-Z
Hi-Z
Hi-Z
Hi-Z
Hi-Z