ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 02.06.2025

Просмотров: 3633

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Special Function IO Register –

SFIOR

Bit

7

6

5

4

3

2

1

0

ACME

PUD

PSR2

PSR10

SFIOR

Read/Write

R

R

R

R

R/W

R/W

R/W

R/W

Initial Value

0

0

0

0

0

0

0

0

• Bit 2 – PUD: Pull-up Disable

When this bit is written to one, the pull-ups in the I/O ports are disabled even if the DDxn and PORTxn Registers are configured to enable the pull-ups ({DDxn, PORTxn} = 0b01). See “Configuring the Pin” on page 50 for more details about this feature.

Alternate Functions of Port B The Port B pins with alternate functions are shown in Table 22.

Table 22. Port B Pins Alternate Functions

Port Pin

Alternate Functions

PB7

XTAL2 (Chip Clock Oscillator pin 2)

TOSC2 (Timer Oscillator pin 2)

PB6

XTAL1 (Chip Clock Oscillator pin 1 or External clock input)

TOSC1 (Timer Oscillator pin 1)

PB5

SCK (SPI Bus Master clock Input)

PB4

MISO (SPI Bus Master Input/Slave Output)

PB3

MOSI (SPI Bus Master Output/Slave Input)

OC2 (Timer/Counter2 Output Compare Match Output)

(SPI Bus Master Slave select)

PB2

SS

OC1B (Timer/Counter1 Output Compare Match B Output)

PB1

OC1A (Timer/Counter1 Output Compare Match A Output)

PB0

ICP1 (Timer/Counter1 Input Capture Pin)

The alternate pin configuration is as follows:

• XTAL2/TOSC2 – Port B, Bit 7

XTAL2: Chip clock Oscillator pin 2. Used as clock pin for crystal Oscillator or Low-fre- quency crystal Oscillator. When used as a clock pin, the pin can not be used as an I/O pin.

TOSC2: Timer Oscillator pin 2. Used only if internal calibrated RC Oscillator is selected as chip clock source, and the asynchronous timer is enabled by the correct setting in ASSR. When the AS2 bit in ASSR is set (one) to enable asynchronous clocking of Timer/Counter2, pin PB7 is disconnected from the port, and becomes the inverting output of the Oscillator amplifier. In this mode, a crystal Oscillator is connected to this pin, and the pin cannot be used as an I/O pin.

If PB7 is used as a clock pin, DDB7, PORTB7 and PINB7 will all read 0.

• XTAL1/TOSC1 – Port B, Bit 6

XTAL1: Chip clock Oscillator pin 1. Used for all chip clock sources except internal calibrated RC Oscillator. When used as a clock pin, the pin can not be used as an I/O pin.

TOSC1: Timer Oscillator pin 1. Used only if internal calibrated RC Oscillator is selected as chip clock source, and the asynchronous timer is enabled by the correct setting in ASSR. When the AS2 bit in ASSR is set (one) to enable asynchronous clocking of Timer/Counter2, pin PB6 is disconnected from the port, and becomes the input of the

56 ATmega8(L)

2486O–AVR–10/04


ATmega8(L)

inverting Oscillator amplifier. In this mode, a crystal Oscillator is connected to this pin, and the pin can not be used as an I/O pin.

If PB6 is used as a clock pin, DDB6, PORTB6 and PINB6 will all read 0.

• SCK – Port B, Bit 5

SCK: Master Clock output, Slave Clock input pin for SPI channel. When the SPI is enabled as a Slave, this pin is configured as an input regardless of the setting of DDB5. When the SPI is enabled as a Master, the data direction of this pin is controlled by DDB5. When the pin is forced by the SPI to be an input, the pull-up can still be controlled by the PORTB5 bit.

• MISO – Port B, Bit 4

MISO: Master Data input, Slave Data output pin for SPI channel. When the SPI is enabled as a Master, this pin is configured as an input regardless of the setting of DDB4. When the SPI is enabled as a Slave, the data direction of this pin is controlled by DDB4. When the pin is forced by the SPI to be an input, the pull-up can still be controlled by the PORTB4 bit.

• MOSI/OC2 – Port B, Bit 3

MOSI: SPI Master Data output, Slave Data input for SPI channel. When the SPI is enabled as a Slave, this pin is configured as an input regardless of the setting of DDB3. When the SPI is enabled as a Master, the data direction of this pin is controlled by DDB3. When the pin is forced by the SPI to be an input, the pull-up can still be controlled by the PORTB3 bit.

OC2, Output Compare Match Output: The PB3 pin can serve as an external output for the Timer/Counter2 Compare Match. The PB3 pin has to be configured as an output (DDB3 set (one)) to serve this function. The OC2 pin is also the output pin for the PWM mode timer function.

• SS/OC1B – Port B, Bit 2

SS: Slave Select input. When the SPI is enabled as a Slave, this pin is configured as an input regardless of the setting of DDB2. As a Slave, the SPI is activated when this pin is driven low. When the SPI is enabled as a Master, the data direction of this pin is controlled by DDB2. When the pin is forced by the SPI to be an input, the pull-up can still be controlled by the PORTB2 bit.

OC1B, Output Compare Match output: The PB2 pin can serve as an external output for the Timer/Counter1 Compare Match B. The PB2 pin has to be configured as an output (DDB2 set (one)) to serve this function. The OC1B pin is also the output pin for the PWM mode timer function.

• OC1A – Port B, Bit 1

OC1A, Output Compare Match output: The PB1 pin can serve as an external output for the Timer/Counter1 Compare Match A. The PB1 pin has to be configured as an output (DDB1 set (one)) to serve this function. The OC1A pin is also the output pin for the PWM mode timer function.

• ICP1 – Port B, Bit 0

ICP1 – Input Capture Pin: The PB0 pin can act as an Input Capture Pin for

Timer/Counter1.

Table 23 and Table 24 relate the alternate functions of Port B to the overriding signals shown in Figure 25 on page 54. SPI MSTR INPUT and SPI SLAVE OUTPUT constitute the MISO signal, while MOSI is divided into SPI MSTR OUTPUT and SPI SLAVE INPUT.

57

2486O–AVR–10/04

Table 23. Overriding Signals for Alternate Functions in PB7..PB4

Signal

PB7/XTAL2/

PB6/XTAL1/

Name

TOSC2(1)(2)

TOSC1(1)

PB5/SCK

PB4/MISO

PUOE

+

+ AS2

SPE •

SPE • MSTR

EXT

(INTRC

INTRC

MSTR

AS2)

PUO

0

0

PORTB5 •

PORTB4 •

PUD

PUD

DDOE

+

+ AS2

SPE •

SPE • MSTR

EXT

(INTRC

INTRC

MSTR

AS2)

DDOV

0

0

0

0

PVOE

0

0

SPE • MSTR

SPE •

MSTR

PVOV

0

0

SCK OUTPUT

SPI SLAVE OUTPUT

DIEOE

+

+ AS2

0

0

EXT

(INTRC

INTRC

AS2)

DIEOV

0

0

0

0

DI

SCK INPUT

SPI MSTR INPUT

AIO

Oscillator Output

Oscillator/Clock

Input

Notes: 1. INTRC means that the internal RC Oscillator is selected (by the CKSEL Fuse).

2.EXT means that the external RC Oscillator or an external clock is selected (by the CKSEL Fuse).

Table 24. Overriding Signals for Alternate Functions in PB3..PB0

Signal

Name

PB3/MOSI/OC2

PB2/SS/OC1B

PB1/OC1A

PB0/ICP1

PUOE

SPE •

SPE •

0

0

MSTR

MSTR

PUO

PORTB3 •

PORTB2 •

0

0

PUD

PUD

DDOE

SPE •

SPE •

0

0

MSTR

MSTR

DDOV

0

0

0

0

PVOE

SPE • MSTR +

OC1B ENABLE

OC1A ENABLE

0

OC2 ENABLE

PVOV

SPI MSTR OUTPUT + OC2

OC1B

OC1A

0

DIEOE

0

0

0

0

DIEOV

0

0

0

0

DI

SPI SLAVE INPUT

SPI

ICP1 INPUT

SS

AIO

58 ATmega8(L)

2486O–AVR–10/04


ATmega8(L)

Alternate Functions of Port C The Port C pins with alternate functions are shown in Table 25.

Table 25. Port C Pins Alternate Functions

Port Pin

Alternate Function

PC6

(Reset pin)

RESET

PC5

ADC5 (ADC Input Channel 5)

SCL (Two-wire Serial Bus Clock Line)

PC4

ADC4 (ADC Input Channel 4)

SDA (Two-wire Serial Bus Data Input/Output Line)

PC3

ADC3 (ADC Input Channel 3)

PC2

ADC2 (ADC Input Channel 2)

PC1

ADC1 (ADC Input Channel 1)

PC0

ADC0 (ADC Input Channel 0)

The alternate pin configuration is as follows:

• RESET – Port C, Bit 6

RESET, Reset pin: When the RSTDISBL Fuse is programmed, this pin functions as a normal I/O pin, and the part will have to rely on Power-on Reset and Brown-out Reset as its reset sources. When the RSTDISBL Fuse is unprogrammed, the reset circuitry is connected to the pin, and the pin can not be used as an I/O pin.

If PC6 is used as a reset pin, DDC6, PORTC6 and PINC6 will all read 0.

• SCL/ADC5 – Port C, Bit 5

SCL, Two-wire Serial Interface Clock: When the TWEN bit in TWCR is set (one) to enable the Two-wire Serial Interface, pin PC5 is disconnected from the port and becomes the Serial Clock I/O pin for the Two-wire Serial Interface. In this mode, there is a spike filter on the pin to suppress spikes shorter than 50 ns on the input signal, and the pin is driven by an open drain driver with slew-rate limitation.

PC5 can also be used as ADC input Channel 5. Note that ADC input channel 5 uses digital power.

• SDA/ADC4 – Port C, Bit 4

SDA, Two-wire Serial Interface Data: When the TWEN bit in TWCR is set (one) to enable the Two-wire Serial Interface, pin PC4 is disconnected from the port and becomes the Serial Data I/O pin for the Two-wire Serial Interface. In this mode, there is a spike filter on the pin to suppress spikes shorter than 50 ns on the input signal, and the pin is driven by an open drain driver with slew-rate limitation.

PC4 can also be used as ADC input Channel 4. Note that ADC input channel 4 uses digital power.

• ADC3 – Port C, Bit 3

PC3 can also be used as ADC input Channel 3. Note that ADC input channel 3 uses analog power.

• ADC2 – Port C, Bit 2

PC2 can also be used as ADC input Channel 2. Note that ADC input channel 2 uses analog power.

• ADC1 – Port C, Bit 1

59

2486O–AVR–10/04


PC1 can also be used as ADC input Channel 1. Note that ADC input channel 1 uses analog power.

• ADC0 – Port C, Bit 0

PC0 can also be used as ADC input Channel 0. Note that ADC input channel 0 uses analog power.

Table 26 and Table 27 relate the alternate functions of Port C to the overriding signals shown in Figure 25 on page 54.

Table 26. Overriding Signals for Alternate Functions in PC6..PC4

Signal Name

PC6/RESET

PC5/SCL/ADC5

PC4/SDA/ADC4

PUOE

TWEN

TWEN

RSTDISBL

PUOV

1

PORTC5 •

PORTC4 •

PUD

PUD

DDOE

TWEN

TWEN

RSTDISBL

DDOV

0

SCL_OUT

SDA_OUT

PVOE

0

TWEN

TWEN

PVOV

0

0

0

DIEOE

0

0

RSTDISBL

DIEOV

0

0

0

DI

AIO

RESET INPUT

ADC5 INPUT / SCL INPUT

ADC4 INPUT / SDA INPUT

Table 27. Overriding Signals for Alternate Functions in PC3..PC0(1)

Signal Name

PC3/ADC3

PC2/ADC2

PC1/ADC1

PC0/ADC0

PUOE

0

0

0

0

PUOV

0

0

0

0

DDOE

0

0

0

0

DDOV

0

0

0

0

PVOE

0

0

0

0

PVOV

0

0

0

0

DIEOE

0

0

0

0

DIEOV

0

0

0

0

DI

AIO

ADC3 INPUT

ADC2 INPUT

ADC1 INPUT

ADC0 INPUT

Note: 1. When enabled, the Two-wire Serial Interface enables slew-rate controls on the output pins PC4 and PC5. This is not shown in the figure. In addition, spike filters are connected between the AIO outputs shown in the port figure and the digital logic of the TWI module.

60 ATmega8(L)

2486O–AVR–10/04