Merge pull request #5 from siddacious/master

fixed? mask calculation for RegisterBits
This commit is contained in:
Limor "Ladyada" Fried 2019-10-12 19:08:42 -04:00 committed by GitHub
commit 5fb64d14e6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 2 additions and 2 deletions

View File

@ -229,7 +229,7 @@ Adafruit_BusIO_RegisterBits::Adafruit_BusIO_RegisterBits(Adafruit_BusIO_Register
uint32_t Adafruit_BusIO_RegisterBits::read(void) {
uint32_t val = _register->read();
val >>= _shift;
return val & ((1 << (_bits+1)) - 1);
return val & ((1 << (_bits)) - 1);
}
@ -241,7 +241,7 @@ void Adafruit_BusIO_RegisterBits::write(uint32_t data) {
uint32_t val = _register->read();
// mask off the data before writing
uint32_t mask = (1 << (_bits+1)) - 1;
uint32_t mask = (1 << (_bits)) - 1;
data &= mask;
mask <<= _shift;