Add local development to SPI

This commit is contained in:
Konstantin Lampalzer 2021-10-14 13:36:03 +02:00
parent 881f8ddbf8
commit eafad7ccdb

View file

@ -1,4 +1,4 @@
import spidev
import importlib
from threading import Thread, Lock
from enum import IntEnum
import time
@ -12,13 +12,17 @@ SPI_SPEED = 1000000
SPI_BUFFER_SIZE = 32
SPI_HEALTH = True
spi = spidev.SpiDev()
spi.open(SPI_BUS, SPI_DEVICE)
spi.max_speed_hz = SPI_SPEED
spi.mode = 0
spi.bits_per_word = 8
# For development purposes
spi_found = importlib.util.find_spec("spidev") is not None
spi = None
if spi_found:
spi = spidev.SpiDev()
spi.open(SPI_BUS, SPI_DEVICE)
spi.max_speed_hz = SPI_SPEED
spi.mode = 0
spi.bits_per_word = 8
spi_mutex = Lock()
spi_mutex = Lock()
class Register(IntEnum):
IDENTIFICATION_MODEL_ID = 1,
@ -106,6 +110,9 @@ class Spi(object):
@staticmethod
def transfer(tx_buffer: list):
if not spi_found:
return [] * SPI_BUFFER_SIZE
write_reg = tx_buffer[1]
spi.xfer(tx_buffer)