This function aims to ease porting code from other platforms by setting the clock speed that
SPI.setClockDivider is relative to.
For example, when porting an Arduino SPI library, each to
need to be changed to reflect the system clock speed of the device being used.
This can be avoided by placing a call to
SPI.setClockDividerReference() before the other SPI calls.
// setting divider reference // place this early in the library code SPI.setClockDividerReference(SPI_CLK_ARDUINO); // then all following calls to setClockDivider() will give comparable clock speeds // to running on the Arduino Uno // sets the clock to as close to 4MHz without going over. SPI.setClockDivider(SPI_CLK_DIV4);
The default clock divider reference is the system clock.
On Gen 3 devices (Argon, Boron, B Series SoM, and Tracker SoM), system clock speed is 64 MHz.
On the Gen 2 (Photon, P1, Electron, and E Series), the system clock speeds are:
- SPI - 60 MHz
- SPI1 - 30 MHz
Note that you must use the same
SPI object as used with
SPI.begin() so if you used
SPI1.begin() also use