Протокол SPI
Модуль spi позволяет вам общаться с устройством, подключенным к плате, используя
шину последовательного периферийного интерфейса (SPI). SPI использует master-slave - архитектура с одним мастером.
Вам нужно будет указать соединения для трех сигналов:
SCLK : тактовый сигнал .
MOSI : Master Output, Slave Input (Ведущий передает, Ведомый принимает).
MISO : Master Input, Slave Output (Ведущий принимает, Ведомый передает).
Функции
- microbit.spi.init(baudrate=1000000, bits=8, mode=0, sclk=pin13, mosi=pin15, miso=pin14)
Инициализировать связь SPI с указанными параметрами на указанные
pin. Обратите внимание, что для правильной связи параметры должны быть одинаковыми на обоих взаимодействующих устройствах.baudrateопределяет скорость общения.bitsопределяет размер передаваемых байтов. В настоящее время толькоbits=8поддерживается. Однако это может измениться в будущем.modeопределяет комбинацию тактовых часов и фазы согласно следующему соглашению, с тактом в качестве старшего бита и фаза как младший бит:SPI Mode
Polarity (CPOL)
Phase (CPHA)
0
0
0
1
0
1
2
1
0
3
1
1
Полярность (также известная как CPOL) 0 означает, что часы находятся на логическом значении 0 в режиме ожидания. и становится высоким (логическое значение 1), когда активен; полярность 1 означает, что часы на логическом значении 1 в режиме ожидания и становится низким (логический 0) в активном состоянии. Фаза (он же CPHA) 0 означает, что выборка данных производится по переднему фронту тактового сигнала, и 1 означает на задней кромке (viz. https://en.wikipedia.org/wiki/Signal_edge).
Аргументы
sclk,mosiиmisoопределяют контакты, которые будут использоваться для каждый тип сигнала.
- spi.read(nbytes)
Читать не более
nbytes. Возвращает прочитанное.
- spi.write(buffer)
Запишите
буфербайтов на шину.
- spi.write_readinto(out, in)
Запишите буфер
outна шину и прочитайте любой ответ вinбуфер. Длина буфера должна быть одинаковой.