MicroPython:Библиотеки/pyb/Класс SPI/SPI.init(): различия между версиями
Материал из Онлайн справочника
Myagkij (обсуждение | вклад) (Новая страница: «{{MicroPython/Панель перехода}} {{Перевод от Сubewriter}} {{Myagkij-редактор}} =SPI.init(mode, baudrate=328125, *, prescaler, pol...») |
Нет описания правки |
||
Строка 5: | Строка 5: | ||
=SPI.init(mode, baudrate=328125, *, prescaler, polarity=1, phase=0, bits=8, firstbit=SPI.MSB, ti=False, crc=None)<ref>[http://docs.micropython.org/en/latest/library/pyb.SPI.html docs.micropython.org - class SPI – a master-driven serial protocol]</ref>= | =SPI.init(mode, baudrate=328125, *, prescaler, polarity=1, phase=0, bits=8, firstbit=SPI.MSB, ti=False, crc=None)<ref>[http://docs.micropython.org/en/latest/library/pyb.SPI.html docs.micropython.org - class SPI – a master-driven serial protocol]</ref>= | ||
<syntaxhighlight lang="python | <syntaxhighlight lang="python"> | ||
SPI.init(mode, baudrate=328125, *, prescaler, polarity=1, phase=0, bits=8, firstbit=SPI.MSB, ti=False, crc=None) | SPI.init(mode, baudrate=328125, *, prescaler, polarity=1, phase=0, bits=8, firstbit=SPI.MSB, ti=False, crc=None) | ||
</syntaxhighlight> | </syntaxhighlight> |
Текущая версия от 19:54, 23 мая 2023
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
SPI.init(mode, baudrate=328125, *, prescaler, polarity=1, phase=0, bits=8, firstbit=SPI.MSB, ti=False, crc=None)[1]
SPI.init(mode, baudrate=328125, *, prescaler, polarity=1, phase=0, bits=8, firstbit=SPI.MSB, ti=False, crc=None)
Инициализирует шину SPI при помощи заданных параметров:
- mode – здесь должно быть SPI.MASTER или SPI.SLAVE.
- baudrate – тактовая частота SCK (этот аргумент используется только ведущим устройством).
- prescaler – это предварительный делитель частоты, используемый для расчета SCK из частоты шины APB. Использование prescaler заменяет baudrate.
- polarity – здесь может быть «0» или «1». Это логический уровень, на котором начинается сигнал синхронизации.
- phase – здесь может быть «0» или «1». Здесь задается, по какому фронту (переднему или заднему) сигнала синхронизации будет выполняться выборка.
- bits – pздесь может быть «8» или «16». Это количество бит в каждом передаваемом слове.
- firstbit – здесь может быть SPI.MSB или SPI.LSB.
- ti – здесь задается то, какие условные обозначения будут использоваться. Если задать True, это будут условные обозначения Texas Instruments, а если False, то Motorola.
- crc – здесь задается полином или None (чтобы выключить CRC).
Обратите внимание, что тактовая частота шины SPI – это не всегда частота, заданная в аргументе baudrate. PyBoard поддерживает только те значения baudrate, которые рассчитываются как частота шины APB (см. функцию pyb.freq()), поделенная на значение в аргументе prescaler (в нем может быть 2, 4, 8, 16, 32, 64, 128 или 256). SPI1 – это AHB2, а SPI2 – это AHB1. Поэтому, чтобы более точно задать тактовую частоту SPI-шины, используйте prescaler вместо baudrate.
Печать объекта SPI покажет рассчитанную тактовую частоту и выбранный делитель.