We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents ad95d3c + 738a0e9 commit 182a28aCopy full SHA for 182a28a
libraries/SPI/SPI.cpp
@@ -93,8 +93,13 @@ void SPIClass::config(SPISettings settings)
93
this->settings = settings;
94
_p_sercom->disableSPI();
95
96
- _p_sercom->initSPI(_padTx, _padRx, SPI_CHAR_SIZE_8_BITS, getBitOrder(settings));
97
- _p_sercom->initSPIClock(getDataMode(settings), settings.getClockFreq());
+ uint32_t clock_freq = settings.getClockFreq();
+ if (clock_freq > F_CPU/2) {
98
+ clock_freq = F_CPU/2;
99
+ }
100
+
101
+ _p_sercom->initSPI(_padTx, _padRx, SPI_CHAR_SIZE_8_BITS, getBitOrder(settings));
102
+ _p_sercom->initSPIClock(getDataMode(settings), clock_freq);
103
104
_p_sercom->enableSPI();
105
}
0 commit comments