MicroPython:Библиотеки/machine/Класс SPI/SPI.init()

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


SPI.init() (со стороны ведущего устройства)[1]

  • SPI.init(baudrate=1000000, *, polarity=0, phase=0, bits=8, firstbit=SPI.MSB, sck=None, mosi=None, miso=None, pins=SCK, MOSI, MISO) – инициализирует шину SPI при помощи заданных параметров:
    • baudrate – тактовая частота линии SCK.
    • polarity – здесь может быть «0» или «1»; это полярность тактового сигнала, и она задает его состояние в момент, когда передача данных не осуществляется.
    • phase – здесь может быть «0» или «1»; это фаза тактового сигнала, и она задает, по какому фронту (он может быть передним или задним) будет считываться значение на линии данных.
    • bits – это размер передаваемых данных (в битах). На всех устройствах гарантированно поддерживается только 8 бит.
    • firstbit – здесь может быть SPI.MSB (самый старший бит) или SPI.LSB (самый младший бит).
    • sck, mosi и miso – это объекты machine.Pin, используемые для линий шины. В большинстве аппаратных SPI-шин (задаваемых в аргументе id в конструкторе) эти контакты фиксированы и поменять их нельзя. В некоторых случаях у аппаратных шин бывает 2-3 альтернативных набора контактов. Произвольное назначение контактов допускаются только при использовании программной (bit-banging) SPI-коммуникации (id = -1).
    • pins – порт WiPy не поддерживает аргументы sck, mosi и miso. Вместо этого контакты для SPI-коммуникации для WiPy задаются с помощью кортежа pins.

В случае аппаратной SPI-шины реальная тактовая частота может быть меньше запрошенной – той, что была задана в аргументе baudrate. Это зависит от компонентов, установленных на платформе. Реальную тактовую частоту можно определить, распечатав объект SPI.

<syntaxhighlight lang="python" enclose="div">

См.также

Внешние ссылки