Skip to content

Commit 6ce7476

Browse files
author
KTOWN
committed
Updated readU16/readS16 for correct 16-bit reads
1 parent 69bb1f2 commit 6ce7476

File tree

1 file changed

+2
-6
lines changed

1 file changed

+2
-6
lines changed

Adafruit_I2C/Adafruit_I2C.py

+2-6
Original file line numberDiff line numberDiff line change
@@ -117,9 +117,7 @@ def readS8(self, reg):
117117
def readU16(self, reg):
118118
"Reads an unsigned 16-bit value from the I2C device"
119119
try:
120-
hibyte = self.readU8(reg)
121-
lobyte = self.readU8(reg+1)
122-
result = (hibyte << 8) + lobyte
120+
result = self.bus.read_word_data(self.address,reg)
123121
if (self.debug):
124122
print "I2C: Device 0x%02X returned 0x%04X from reg 0x%02X" % (self.address, result & 0xFFFF, reg)
125123
return result
@@ -129,9 +127,7 @@ def readU16(self, reg):
129127
def readS16(self, reg):
130128
"Reads a signed 16-bit value from the I2C device"
131129
try:
132-
hibyte = self.readS8(reg)
133-
lobyte = self.readU8(reg+1)
134-
result = (hibyte << 8) + lobyte
130+
result = self.bus.read_word_data(self.address,reg)
135131
if (self.debug):
136132
print "I2C: Device 0x%02X returned 0x%04X from reg 0x%02X" % (self.address, result & 0xFFFF, reg)
137133
return result

0 commit comments

Comments
 (0)