Initializes the SPI bus by setting SCK, MOSI, and a user-specified slave-select pin to outputs, MISO to input. SCK is pulled either high or low depending on the configured SPI data mode (default high for
SPI_MODE3). Slave-select is pulled high.
Note: The SPI firmware ONLY initializes the user-specified slave-select pin as an
OUTPUT. The user's code must control the slave-select pin with
digitalWrite() before and after each SPI transfer for the desired SPI slave device. Calling
SPI.end() does NOT reset the pin mode of the SPI pins.
// SYNTAX SPI.begin(ss); SPI1.begin(ss); // Example with no SS pin configured: SPI.begin(PIN_INVALID);
Where, the parameter
ss is the
SPI device slave-select pin to initialize. The default SS pin varies by port and device, see above.
// Example using SPI1, with D5 as the SS pin: SPI1.begin(); // or SPI1.begin(D5);