34 lines
805 B
Python
34 lines
805 B
Python
from pyb import SPI
|
|
|
|
# test we can correctly create by id
|
|
for bus in (-1, 0, 1, 2):
|
|
try:
|
|
SPI(bus)
|
|
print("SPI", bus)
|
|
except ValueError:
|
|
print("ValueError", bus)
|
|
|
|
spi = SPI(1)
|
|
print(spi)
|
|
|
|
spi = SPI(1, SPI.MASTER)
|
|
spi = SPI(1, SPI.MASTER, baudrate=500000)
|
|
spi = SPI(1, SPI.MASTER, 500000, polarity=1, phase=0, bits=8, firstbit=SPI.MSB, ti=False, crc=None)
|
|
print(str(spi)[:28], str(spi)[49:]) # don't print baudrate/prescaler
|
|
|
|
spi.init(SPI.SLAVE, phase=1)
|
|
print(spi)
|
|
try:
|
|
# need to flush input before we get an error (error is what we want to test)
|
|
for i in range(10):
|
|
spi.recv(1, timeout=100)
|
|
except OSError:
|
|
print("OSError")
|
|
|
|
spi.init(SPI.MASTER)
|
|
spi.send(1, timeout=100)
|
|
print(spi.recv(1, timeout=100))
|
|
print(spi.send_recv(1, timeout=100))
|
|
|
|
spi.deinit()
|