Skip to content

Commit 8b20d91

Browse files
committed
fix comment issues, move to using toolkit functions for swaping - not hard coded bit fiddling
1 parent 9aba53f commit 8b20d91

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/sfeTkArdI2C.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@ sfeTkError_t sfeTkArdI2C::writeRegisterRegion(uint8_t devReg, const uint8_t *dat
209209
//
210210
sfeTkError_t sfeTkArdI2C::writeRegister16Region(uint16_t devReg, const uint8_t *data, size_t length)
211211
{
212-
// devReg = ((devReg << 8) & 0xff00) | ((devReg >> 8) & 0x00ff);
212+
// Byteorder check
213213
if (sftk_system_byteorder() != _byteOrder)
214214
devReg = sftk_byte_swap(devReg);
215215
return writeRegisterRegionAddress((uint8_t *)&devReg, 2, data, length);
@@ -230,7 +230,7 @@ sfeTkError_t sfeTkArdI2C::writeRegister16Region16(uint16_t devReg, const uint16_
230230

231231
// okay, we need to swap
232232
devReg = sftk_byte_swap(devReg);
233-
// devReg = ((devReg << 8) & 0xff00) | ((devReg >> 8) & 0x00ff);
233+
234234
uint16_t data16[length];
235235
for (size_t i = 0; i < length; i++)
236236
data16[i] = ((data[i] << 8) & 0xff00) | ((data[i] >> 8) & 0x00ff);
@@ -393,15 +393,16 @@ sfeTkError_t sfeTkArdI2C::readRegister16Region16(uint16_t devReg, uint16_t *data
393393
{
394394
// if the system byte order is the same as the desired order, flip the address
395395
if (sftk_system_byteorder() != _byteOrder)
396-
devReg = ((devReg << 8) & 0xff00) | ((devReg >> 8) & 0x00ff);
396+
devReg = sftk_byte_swap(devReg);
397+
397398

398399
sfeTkError_t status = readRegisterRegionAnyAddress((uint8_t *)&devReg, 2, (uint8_t *)data, numBytes * 2, readWords);
399400

400401
// Do we need to flip the byte order?
401402
if (status == kSTkErrOk && sftk_system_byteorder() != _byteOrder)
402403
{
403404
for (size_t i = 0; i < numBytes; i++)
404-
data[i] = ((data[i] << 8) & 0xff00) | ((data[i] >> 8) & 0x00ff);
405+
data[i] = sftk_byte_swap(data[i]);
405406
}
406407
readWords = readWords / 2; // convert to words
407408
return status;

0 commit comments

Comments
 (0)