.. _spi: ===== SPI ===== The Serial Peripheral Interface Bus (SPI) is a serial data transfer protocol useful for interacting with a wide variety of hardware peripherals. The public libmaple API for managing the SPI ports is the :ref:`HardwareSPI <lang-hardwarespi>` class. Recommended Reading ------------------- * `Wikipedia Article on Serial Peripheral Interface Bus (SPI) <http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus>`_ * `Arduino reference on SPI <http://arduino.cc/en/Reference/SPI>`_ * `Hardcore SPI on Arduino <http://web.archive.org/web/20100522034122/http://klk64.com/arduino-spi/>`_ by kik64 * ST Documentation: * Reference Manual `RM0008 <http://www.st.com/web/en/resource/technical/document/reference_manual/CD00171190.pdf>`_ (PDF), Chapter 25, "Serial Peripheral Interface"