В HTML      В PDF
микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная страница > Обзоры по типам > Микроконтроллеры > MAXQ

реклама

 
радиационно стойкие ПЗУ Миландр

Продажа силового и бронированного кабеля и провода в Москве

текст еще



Режимы SPI

Режим ведущего SPI

Модуль SPI переходит в режим ведущего после установки бита MSTM в управляющем регистре SPI. Передачу данных может инициализировать только ведущий SPI. Ведущий ответственен за выборку/отключение ведущих устройств. Осуществлять выбор устройств можно при помощи порта ввода-вывода общего назначения. Запись данных в регистр сдвига SPI (SPIB) в режиме ведущего начинает передачу данных. Ведущий SPI немедленно смещает данные последовательно на вывод MOSI, начиная со старшего значащего бита, при этом одновременно формируются синхроимпульсы сдвига на выводе SPICK. Одновременно в младший байт приемного регистра загружаются данные, выбираемые на выводе MISO. Настройка формат передачи данных (полярность синхроимпульсов и фаза), длительности посылки и скорость обмена данными была описана выше. В течение передачи устанавливается бит занятости передатчика SPI (SPICN.7:STBY). По окончании передачи данные, содержащиеся регистре сдвига пересылаются в приемный буфер, бит STBY очищается аппаратно и бит окончания передачи SPI (SPICN.6: SPIC) устанавливается. Установка бита SPIC генерирует запрос на прерывание (если оно разрешено, т.е. ESPII = 1).

Режим ведомого SPI

Модуль SPI работает в режиме ведомого когда бит MSTM бит сброшен 0. В режиме ведомого работа модуля SPI зависит от синхроимпульсов SPICK, формируемых ведущим. Частота входных синхроимпульсов SPICK должна быть не больше, чем частота системных синхроимпульсов, деленная на 8. Перед обменом данных ведущий должен установить на выводе выбора ведущего SSEL активный сигнал. Сигнал на выводе SSEL должен быть установлен низким до начала посылки данных и оставаться в таком состоянии в течение всей передачи. Если данные должны быть посланы ведомым прибором, то перед этим они должны быть записаны в регистр сдвига. Ведомый прибор полагает, что передача начинается с первого фронта синхроимпульса или по спадающему фронту сигнала SSEL (в зависимости от режима передачи данных).

Ведомый SPI прибор принимает данные от внешнего ведущего на выводе MOSI, причем старшим значащим битом вперед, одновременно передавая данные ведущему из регистра сдвига на вывод MISO, также старшим значащим битом вперед. Данные, полученные от внешнего ведущего устройства, заменяют данные во внутреннем регистре сдвига по окончании передачи. Точно так же, как в режиме ведущего, конце передачи полученные данные загружаются в приемный буферный регистр и флаг передачи SPI устанавливается. Установка флага окончания передачи генерирует прерывание, если оно разрешено.

Если сигнал на выводе SSEL не является активным, то ведущее устройство игнорирует синхроимпульсы SPICK и регистр сдвига отключен. В этом случае модуль неактивен, данные из регистра смещения не поступают на внешний вывод, и данные с вывода MOSI также не выбираются. Вывод MISO работает в режиме входа и слегка подтянут к шине питания, что позволяет другим приборам вести обмен данными по этой шине. Снятие ведущим активного сигнала с вывода SSEL в течение передачи (прежде чем послан полный пакет данных, длительность которого определяется битом CHR), прерывает текущую передачу. Когда передача прервана, то никакие данные не загружаются в приемный буферный регистр, флаг SPIC не устанавливается, а логическая схема ведомого и счетчик битов сбрасываются.

В ведомом режиме биты коэффициента деления (CKR7:0) не имеют никакого значения, так как внешний ведущий сам формирует синхроимпульсы. Формат передачи (параметры настройки CKPOL и CKPHA) и бит выбора длительности посылки (CHR) для ведомого прибора, однако, должна соответствовать параметрам передатчика ведущего устройства.



<-- Предыдущая страница Оглавление Следующая страница -->





 
Впервые? | Реклама на сайте | О проекте | Карта портала
тел. редакции: +7 (495) 514 4110. e-mail:info@eust.ru
©1998-2016 ООО Рынок Микроэлектроники