class SPI – a master-driven serial protocol¶
SPI is a serial protocol that is driven by a master. At the physical level there are 3 lines: SCK, MOSI, MISO.
Constructors¶
Methods¶
-
SPI.
init
(mode, baudrate=1000000, *, polarity=0, phase=0, bits=8, firstbit=SPI.MSB, pins=(CLK, MOSI, MISO))¶ Initialise the SPI bus with the given parameters:
mode
must beSPI.MASTER
.baudrate
is the SCK clock rate.polarity
can be 0 or 1, and is the level the idle clock line sits at.phase
can be 0 or 1 to sample data on the first or second clock edge respectively.bits
is the width of each transfer, accepted values are 8, 16 and 32.firstbit
can beSPI.MSB
only.pins
is an optional tuple with the pins to assign to the SPI bus.
-
SPI.
deinit
()¶ Turn off the SPI bus.
-
SPI.
write
(buf)¶ Write the data contained in
buf
. Returns the number of bytes written.
-
SPI.
read
(nbytes, *, write=0x00)¶ Read the
nbytes
while writing the data specified bywrite
. Return the number of bytes read.
-
SPI.
readinto
(buf, *, write=0x00)¶ Read into the buffer specified by
buf
while writing the data specified bywrite
. Return the number of bytes read.
-
SPI.
write_readinto
(write_buf, read_buf)¶ Write from
write_buf
and read intoread_buf
. Both buffers must have the same length. Returns the number of bytes written