Serial peripheral interface – spi, Atmega128(l) – Rainbow Electronics ATmega128L User Manual

Page 157

Advertising
background image

157

ATmega128(L)

2467B–09/01

Serial Peripheral
Interface – SPI

The Serial Peripheral Interface (SPI) allows high-speed synchronous data transfer
between the ATmega128 and peripheral devices or between several AVR devices. The
ATmega128 SPI includes the following features:

Full-duplex, 3-wire Synchronous Data Transfer

Master or Slave Operation

LSB First or MSB First Data Transfer

Seven Programmable Bit Rates

End of Transmission Interrupt Flag

Write Collision Flag Protection

Wake-up from Idle Mode

Double Speed (CK/2) Master SPI Mode

Figure 74. SPI Block Diagram

Note:

Refer to

Figure 1 on page 2, and Table 30 on page 69 for SPI pin placement.

The interconnection between Master and Slave CPUs with SPI is shown in

Figure 75.

The system consists of two shift registers, and a Master clock generator. The SPI Mas-
ter initiates the communication cycle when pulling low the Slave Select SS pin of the
desired Slave. Master and Slave prepare the data to be sent in their respective shift reg-
isters, and the Master generates the required clock pulses on the SCK line to
interchange data. Data is always shifted from Master to Slave on the Master Out – Slave
In, MOSI, line, and from Slave to Master on the Master In – Slave Out, MISO, line. After
each data packet, the Master will synchronize the Slave by pulling high the Slave Select,
SS, line.

SPI2X

SPI2X

DIVIDER

/2/4/8/16/32/64/128

Advertising