SPI

SPI requires the following pins:

Though it varies by chip manufacturer, the general process is to pull the desired CS pin low, perform a transfer, and set CS high again. In the Arduino SPI library, these steps should be surrounded by SPI.beginTransaction() and SPI.endTransaction().

Resources