Adafruit BLE: Set SPI2X bit only when F_CPU is 8MHz (#6671)

better_chibios_wait
fauxpark 6 years ago committed by Drashna Jaelre
parent 91bd2117df
commit 0d94730da0
  1. 5
      tmk_core/protocol/lufa/adafruit_ble.cpp

@ -151,9 +151,10 @@ static struct SPI_Settings spi;
// Initialize 4Mhz MSBFIRST MODE0
void SPI_init(struct SPI_Settings *spi) {
spi->spcr = _BV(SPE) | _BV(MSTR);
#if F_CPU == 8000000
// For MCUs running at 8MHz (such as Feather 32U4, or 3.3V Pro Micros) we set the SPI doublespeed bit
spi->spsr = _BV(SPI2X);
static_assert(SpiBusSpeed == F_CPU / 2, "hard coded at 4Mhz");
#endif
ATOMIC_BLOCK(ATOMIC_RESTORESTATE) {
// Ensure that SS is OUTPUT High

Loading…
Cancel
Save