I/o port b, Attiny11/12 – Rainbow Electronics ATtiny12 User Manual

Page 41

Advertising
background image

41

ATtiny11/12

1006C–09/01

I/O Port B

All AVR ports have true read-modify-write functionality when used as general digital I/O
ports. This means that the direction of one port pin can be changed without unintention-
ally changing the direction of any other pin with the SBI and CBI instructions. The same
applies for changing drive value (if configured as output) or enabling/disabling of pull-up
resistors (if configured as input).

Port B is a 6-bit bi-directional I/O port.

Three I/O memory address locations are allocated for Port B, one each for the Data
Register – PORTB, $18, Data Direction Register – DDRB, $17, and the Port B Input
Pins – PINB, $16. The Port B Input Pins address is read only, while the Data Register
and the Data Direction Register are read/write.

Ports PB5..3 have special functions as described in the section “Pin Descriptions” on
page 5. If
PB5 is not configured as external reset, it is input with no pull-up. On
ATtiny12, it can also output a logical zero, acting as an open-drain output. Note that,
since PB5 only has one possible output value, the output functionality of this pin is con-
trolled by the DDRB register alone. If PB4 and/or PB3 are not used for clock function,
they are I/O pins. All I/O pins have individually selectable pull-ups.

The Port B output buffers on PB0 to PB4 can sink 20 mA and thus drive LED displays
directly. On ATtiny12, PB5 can sink 12 mA. When pins PB0 to PB4 are used as inputs
and are externally pulled low, they will source current (I

IL

) if the internal pull-ups are

activated.

The Port B pins with alternate functions are shown in Table 19:

When the pins PB2..0 are used for the alternate function, the DDRB and PORTB regis-
ter has to be set according to the alternate function description. When PB5..3 are used
for alternate functions, the values in the corresponding DDRB and PORTB bits are
ignored.

Table 19. Port B Pins Alternate Functions

Port Pin

Alternate Functions

Device

PB0

AIN0 (Analog Comparator Positive Input)

ATtiny11/12

MOSI (Data Input Line for Memory Downloading)

ATtiny12

PB1

INT0 (External Interrupt0 Input)

ATtiny11/12

AIN1 (Analog Comparator Negative Input)

ATtiny11/12

MOSI (Data Output Line for Memory Downloading)

ATtiny12

PB2

T0 (Timer/Counter0 External Counter Input)

ATtiny11/12

SCK (Serial Clock Input for Serial Programming)

ATtiny12

PB3

XTAL1 (Oscillator Input)

ATtiny11/12

PB4

XTAL2 (Oscillator Output)

ATtiny11/12

PB5

RESET (External Reset Pin)

ATtiny11/12

Advertising