8.1 Description

The SPI circuit is a synchronous serial data link that provides communication with external devices in client mode. The Serial Peripheral Interface is essentially a Shift register that serially transmits data bits to a host SPI device. During a data transfer, SPI host controls the data flow, while the client device has data shifted in and out by the host.

The SPI system consists of two data lines and two control lines:

  • MOSI (host out client in): This data line supplies the output data from the host shifted into the input(s) of the client(s)
  • MISO (host in client out): This data line supplies the output data from a client to the input of the host. There may be no more than one client transmitting data during any particular transfer
  • SCK (Serial Clock): This control line is driven by the host and regulates the flow of the data bits. The host can transmit data at a variety of baud rates; there is one SCK pulse for each bit that is transmitted
  • CS (Peripheral Chip Select): This control line allows clients to be turned on and off by hardware