]> Repositories - Adafruit_Blinka-hackapet.git/blobdiff - src/adafruit_blinka/microcontroller/nxp_lpc4330/spi.py
Updated for STM32->STM32F405 PlatformDetect rename
[Adafruit_Blinka-hackapet.git] / src / adafruit_blinka / microcontroller / nxp_lpc4330 / spi.py
index 37cc6c4aace1081ca481318b66142e09a3992db1..17859a42d374e19b23f93de123c7ea97172072d7 100644 (file)
@@ -1,6 +1,7 @@
 """SPI Class for NXP LPC4330"""
 from greatfet import GreatFET
 
+
 class SPI:
     """Custom I2C Class for NXP LPC4330"""
 
@@ -10,6 +11,8 @@ class SPI:
         self._gf = GreatFET()
         self._frequency = None
         self.buffer_size = 255
+        self._mode = 0
+        self._spi = None
         self._presets = {
             204000: (100, 9),
             408000: (100, 4),
@@ -25,9 +28,9 @@ class SPI:
             34000000: (2, 2),
             51000000: (2, 1),
             102000000: (2, 0),
-       }
-        
-    # pylint: disable=too-many-arguments
+        }
+
+    # pylint: disable=too-many-arguments,unused-argument
     def init(
         self,
         baudrate=100000,
@@ -44,7 +47,7 @@ class SPI:
         polarity = int(polarity)
         phase = int(phase)
         self._mode = (polarity << 1) | phase
-        
+
         # Using API due to possible interface change
         self._spi = self._gf.apis.spi
         # Check baudrate against presets and adjust to the closest one
@@ -57,6 +60,7 @@ class SPI:
 
         # Set the polarity and phase (the "SPI mode").
         self._spi.set_clock_polarity_and_phase(self._mode)
+
     # pylint: enable=too-many-arguments
 
     def _find_closest_preset(self, target_frequency):
@@ -67,7 +71,9 @@ class SPI:
         closest_preset = None
         for frequency in self._presets:
             preset = self._presets[frequency]
-            if self._frequency is None or abs(frequency - target_frequency) < abs(self._frequency - target_frequency):
+            if self._frequency is None or abs(frequency - target_frequency) < abs(
+                self._frequency - target_frequency
+            ):
                 self._frequency = frequency
                 closest_preset = preset
 
@@ -104,8 +110,6 @@ class SPI:
         in_end = in_end if in_end else len(buffer_in)
 
         result = self._transmit(buffer_out[out_start:out_end], in_end - in_start)
-        for i, b in enumerate(result):
-            buf[start + i] = b
         for i, b in enumerate(result):
             buffer_in[in_start + i] = b
 
@@ -126,8 +130,8 @@ class SPI:
         # Transmit our data in chunks of the buffer size.
         while data_to_transmit:
             # Extract a single data chunk from the transmit buffer.
-            chunk = data_to_transmit[0:self.buffer_size]
-            del data_to_transmit[0:self.buffer_size]
+            chunk = data_to_transmit[0 : self.buffer_size]
+            del data_to_transmit[0 : self.buffer_size]
 
             # Finally, exchange the data.
             response = self._spi.clock_data(len(chunk), bytes(chunk))