Update. /JL
This commit is contained in:
52
microbit/spi.py
Normal file
52
microbit/spi.py
Normal file
@@ -0,0 +1,52 @@
|
||||
from microbit import pin13, pin15, pin14
|
||||
#SPI
|
||||
|
||||
""" The SPI module lets you talk to a device connected to your board using a serial
|
||||
peripheral interface (SPI) bus. SPI uses a so-called master-slave architecture with
|
||||
a single master. You will need to specify the connections for three signals:
|
||||
|
||||
SCLK : Serial Clock (output from master).
|
||||
MOSI : Master Output, Slave Input (output from master).
|
||||
MISO : Master Input, Slave Output (output from slave). """
|
||||
|
||||
#Functions
|
||||
|
||||
def init(baudrate=1000000, bits=8, mode=0, sclk=pin13, mosi=pin15, miso=pin14):
|
||||
""" Initialize SPI communication with the specified parameters on the specified pins.
|
||||
Note that for correct communication, the parameters have to be the same on both
|
||||
communicating devices.
|
||||
|
||||
The baudrate defines the speed of communication.
|
||||
|
||||
The bits defines the size of bytes being transmitted. Currently only bits=8 is
|
||||
supported. However, this may change in the future.
|
||||
|
||||
The mode determines the combination of clock polarity and phase according to the
|
||||
following convention, with polarity as the high order bit and phase as the low
|
||||
order bit:
|
||||
SPI Mode Polarity (CPOL) Phase (CPHA)
|
||||
0 0 0
|
||||
1 0 1
|
||||
2 1 0
|
||||
3 1 1
|
||||
|
||||
Polarity (aka CPOL) 0 means that the clock is at logic value 0 when idle and goes high
|
||||
(logic value 1) when active; polarity 1 means the clock is at logic value 1 when idle
|
||||
and goes low (logic value 0) when active. Phase (aka CPHA) 0 means that data is sampled
|
||||
on the leading edge of the clock, and 1 means on the trailing edge
|
||||
(viz. https://en.wikipedia.org/wiki/Signal_edge).
|
||||
|
||||
The sclk, mosi and miso arguments specify the pins to use for each type of signal. """
|
||||
pass
|
||||
def read(nbytes):
|
||||
""" Read at most nbytes. Returns what was read. """
|
||||
pass
|
||||
|
||||
def write(buffer):
|
||||
""" Write the buffer of bytes to the bus. """
|
||||
pass
|
||||
|
||||
def write_readinto(Out, In):
|
||||
""" Write the out buffer to the bus and read any response into the in buffer.
|
||||
The length of the buffers should be the same. The buffers can be the same object. """
|
||||
pass
|
||||
Reference in New Issue
Block a user