def config_interface(spi_dev: SpiDev, clock: int) -> None: spi_dev.cshigh = True # use inverted CS spi_dev.mode = 0b01 spi_dev.max_speed_hz = clock # set SPI clock
_REG_TMRC = 0x0b _REG_RESULT = 0x24 _READ_OFFSET = 0x80 _INSTRUCTION_SLEEP = 0.05 _RES_DRDY = 0x80 _GPIO_CHIP_SELECT = 24 _GPIO_DRDY = 23 _SPI_FREQ = 100000 spi = SpiDev() spi.open(0, 0) spi.max_speed_hz = 1000000 spi.cshigh = False # Clean up GPIOs on exit def signal_handler(sig, frame): GPIO.cleanup() sys.exit(0) signal.signal(signal.SIGINT, signal_handler) def write(reg, value): res = spi.xfer2([reg, value])[0] print(res) return res def read(reg): res = spi.xfer2([reg | _READ_OFFSET, 0x00])[1]