Skip to content

Commit c07c8dc

Browse files
rsaxvcigrr
authored andcommitted
Small cleanup to SPI write16 and write32 for big-endian
Merge a common line.
1 parent 5b5ba1a commit c07c8dc

File tree

1 file changed

+5
-9
lines changed

1 file changed

+5
-9
lines changed

libraries/SPI/SPI.cpp

+5-9
Original file line numberDiff line numberDiff line change
@@ -343,12 +343,11 @@ void SPIClass::write16(uint16_t data, bool msb) {
343343
if(msb) {
344344
// MSBFIRST Byte first
345345
SPI1W0 = (data >> 8) | (data << 8);
346-
SPI1CMD |= SPIBUSY;
347346
} else {
348347
// LSBFIRST Byte first
349348
SPI1W0 = data;
350-
SPI1CMD |= SPIBUSY;
351349
}
350+
SPI1CMD |= SPIBUSY;
352351
while(SPI1CMD & SPIBUSY) {}
353352
}
354353

@@ -367,14 +366,11 @@ void SPIClass::write32(uint32_t data, bool msb) {
367366
} data_;
368367
data_.l = data;
369368
// MSBFIRST Byte first
370-
SPI1W0 = (data_.b[3] | (data_.b[2] << 8) | (data_.b[1] << 16) | (data_.b[0] << 24));
371-
SPI1CMD |= SPIBUSY;
372-
} else {
373-
// LSBFIRST Byte first
374-
SPI1W0 = data;
375-
SPI1CMD |= SPIBUSY;
369+
data = (data_.b[3] | (data_.b[2] << 8) | (data_.b[1] << 16) | (data_.b[0] << 24));
376370
}
377-
while(SPI1CMD & SPIBUSY) {}
371+
SPI1W0 = data;
372+
SPI1CMD |= SPIBUSY;
373+
while(SPI1CMD & SPIBUSY) {}
378374
}
379375

380376
/**

0 commit comments

Comments
 (0)