Skip to content

Commit 3d784ad

Browse files
authored
Merge pull request #27 from tannewt/remove_stop
Remove stop kwarg and use write_then_readinto.
2 parents 57b3500 + 52a42af commit 3d784ad

File tree

7 files changed

+16
-27
lines changed

7 files changed

+16
-27
lines changed

README.rst

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -136,15 +136,13 @@ we must implement ``__get__`` and ``__set__``.
136136
.. code-block:: python
137137
138138
def __get__(self, obj, objtype=None):
139-
with obj.i2c_device:
140-
obj.i2c_device.write(self.buffer, end=1, stop=False)
141-
obj.i2c_device.readinto(self.buffer, start=1)
139+
with obj.i2c_device as i2c:
140+
i2c.write_then_readinto(self.buffer, self.buffer, out_end=1, in_start=1)
142141
return bool(self.buffer[1] & self.bit_mask)
143142
144143
def __set__(self, obj, value):
145-
with obj.i2c_device:
146-
obj.i2c_device.write(self.buffer, end=1, stop=False)
147-
obj.i2c_device.readinto(self.buffer, start=1)
144+
with obj.i2c_device as i2c:
145+
i2c.write_then_readinto(self.buffer, self.buffer, out_end=1, in_start=1)
148146
if value:
149147
self.buffer[1] |= self.bit_mask
150148
else:

adafruit_register/i2c_bcd_alarm.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,8 @@ def __init__(self, register_address, has_seconds=True, weekday_shared=True, week
9595

9696
def __get__(self, obj, objtype=None):
9797
# Read the alarm register.
98-
with obj.i2c_device:
99-
obj.i2c_device.write(self.buffer, end=1, stop=False)
100-
obj.i2c_device.readinto(self.buffer, start=1)
98+
with obj.i2c_device as i2c:
99+
i2c.write_then_readinto(self.buffer, self.buffer, out_end=1, in_start=1)
101100

102101
frequency = None
103102
i = 1

adafruit_register/i2c_bcd_datetime.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,8 @@ def __init__(self, register_address, weekday_first=True, weekday_start=1):
7777

7878
def __get__(self, obj, objtype=None):
7979
# Read and return the date and time.
80-
with obj.i2c_device:
81-
obj.i2c_device.write(self.buffer, end=1, stop=False)
82-
obj.i2c_device.readinto(self.buffer, start=1)
80+
with obj.i2c_device as i2c:
81+
i2c.write_then_readinto(self.buffer, self.buffer, out_end=1, in_start=1)
8382
return time.struct_time((_bcd2bin(self.buffer[7]) + 2000,
8483
_bcd2bin(self.buffer[6]),
8584
_bcd2bin(self.buffer[5 - self.weekday_offset]),

adafruit_register/i2c_bit.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,13 +56,13 @@ def __init__(self, register_address, bit, register_width=1, lsb_first=True):
5656
def __get__(self, obj, objtype=None):
5757
with obj.i2c_device as i2c:
5858
i2c.write_then_readinto(self.buffer, self.buffer,
59-
out_end=1, in_start=1, stop=False)
59+
out_end=1, in_start=1)
6060
return bool(self.buffer[self.byte] & self.bit_mask)
6161

6262
def __set__(self, obj, value):
6363
with obj.i2c_device as i2c:
6464
i2c.write_then_readinto(self.buffer, self.buffer,
65-
out_end=1, in_start=1, stop=False)
65+
out_end=1, in_start=1)
6666
if value:
6767
self.buffer[self.byte] |= self.bit_mask
6868
else:

adafruit_register/i2c_bits.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,7 @@ def __init__(self, num_bits, register_address, lowest_bit, # pylint: disable=too
5858

5959
def __get__(self, obj, objtype=None):
6060
with obj.i2c_device as i2c:
61-
i2c.write_then_readinto(self.buffer, self.buffer,
62-
out_end=1, in_start=1, stop=False)
61+
i2c.write_then_readinto(self.buffer, self.buffer, out_end=1, in_start=1)
6362
# read the number of bytes into a single variable
6463
reg = 0
6564
order = range(len(self.buffer)-1, 0, -1)
@@ -72,8 +71,7 @@ def __get__(self, obj, objtype=None):
7271
def __set__(self, obj, value):
7372
value <<= self.lowest_bit # shift the value over to the right spot
7473
with obj.i2c_device as i2c:
75-
i2c.write_then_readinto(self.buffer, self.buffer,
76-
out_end=1, in_start=1, stop=False)
74+
i2c.write_then_readinto(self.buffer, self.buffer, out_end=1, in_start=1)
7775
reg = 0
7876
order = range(len(self.buffer)-1, 0, -1)
7977
if not self.lsb_first:

adafruit_register/i2c_struct.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,7 @@ def __init__(self, register_address, struct_format):
5555

5656
def __get__(self, obj, objtype=None):
5757
with obj.i2c_device as i2c:
58-
i2c.write_then_readinto(self.buffer, self.buffer,
59-
out_end=1, in_start=1, stop=False)
58+
i2c.write_then_readinto(self.buffer, self.buffer, out_end=1, in_start=1)
6059
return struct.unpack_from(self.format, memoryview(self.buffer)[1:])
6160

6261
def __set__(self, obj, value):
@@ -83,8 +82,7 @@ def __get__(self, obj, objtype=None):
8382
buf = bytearray(1+struct.calcsize(self.format))
8483
buf[0] = self.address
8584
with obj.i2c_device as i2c:
86-
i2c.write_then_readinto(buf, buf,
87-
out_end=1, in_start=1, stop=False)
85+
i2c.write_then_readinto(buf, buf, out_end=1, in_start=1)
8886
return struct.unpack_from(self.format, buf, 1)[0]
8987

9088
def __set__(self, obj, value):

adafruit_register/i2c_struct_array.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,7 @@
2929
* Author(s): Scott Shawcroft
3030
"""
3131

32-
try:
33-
import struct
34-
except ImportError:
35-
import ustruct as struct
32+
import struct
3633

3734
__version__ = "0.0.0-auto.0"
3835
__repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_Register.git"
@@ -67,7 +64,7 @@ def __getitem__(self, index):
6764
buf = self._get_buffer(index)
6865
with self.obj.i2c_device as i2c:
6966
i2c.write_then_readinto(buf, buf,
70-
out_end=1, in_start=1, stop=False)
67+
out_end=1, in_start=1)
7168
return struct.unpack_from(self.format, buf, 1) # offset=1
7269

7370
def __setitem__(self, index, value):

0 commit comments

Comments
 (0)