Поиск по сайту:

 


По базе:  

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

реклама

 




Мероприятия:




Форматы передачи по интерфейсу SPI

В течение передачи по интерфейсу SPI данные одновременно передаются и принимаются по двум линиям синхронно с синхроимпульсами сдвига. Полярность и фаза последовательных синхроимпульсов сдвига - это основной компонент, определяющий формат передачи данных по интерфейсу SPI. Полярность последовательных синхроимпульсов соответствует свободному логическому состоянию линии синхронизации и поэтому также определяет, какой фронт синхроимпульса является активным ребром. Для того, чтобы свободное логическое состояние линии синхронизации было определено как низкое логическое состояние (активным фронтом синхроимпульса является нарастающий фронт), бит выбора полярности синхроимпульсов (CKPOL; SPICF.0) должен быть сброшен в 0, а установка этого бита в единицу (CKPOL = 1) определит свободное состояние синхроимпульса как высокое логическое состояние, т.е. активным фронтом синхроимпульса будет являться спадающий фронт. Фаза последовательных синхроимпульсов определяет, какой фронт используется для выборки данных последовательным регистром сдвига. Бит выбора фазы синхроимпульсов (CKPHA; SPICF.1) определяет по активному или неактивному фронту будет осуществляться захват данных. Когда CKPHA установлен в 1, то данные выбираются по неактивному фронту синхроимпульса (возвращение синхроимпульса в свободное состояние). Когда CKPHA сброшен в 0, то данные выбираются по активному фронту синхроимпульсов (переход синхроимпульса в активное состояние). Совместно биты CKPOL и CKPHA позволяют определить четыре возможных формата передачи данных по SPI интерфейсу. Эти форматы приведены на рисунке 43.

Каждый раз, когда активный фронт используется для выбора данных (CKPHA = 0), цикл передачи должен быть начат с установки сигнала SSEL. Поэтому между передачами сигнал SSEL должен переводиться в неактивное состояние. Наоборот, когда для выборки используется неактивный фронт (CKPHA = 1), сигнал SSEL может остаться низким между пакетами данных, при этом начало передачи определяется первым активным фронтом синхроимпульса.

Форматы передачи данных по SPI интерфейсу (определяется битами CKPOL и CKPHA)
Рисунок 43. Форматы передачи данных по SPI интерфейсу (определяется битами CKPOL и CKPHA)

Длительность SPI посылки

Чтобы гибко подстраиваться под различную длительность посылки данных, в регистре настройки модуля SPI имеется бит выбора длительности посылки (CHR). Бит CHR позволяет выбирать длительность посылки 8 или 16 бит. При загрузке 8- битных данных в буферный регистр SPIB, байт, предназначенный для передачи, должен быть помещен в младший байт передаваемого слова. При приеме 8- битных данных слово также находится в младшем байте регистра SPIB. В режиме обмена 8- битными данными старший байт буферного регистра SPIB не определен.

Скорости обмена данными по SPI интерфейсу

При работе в режиме ведомого, синхроимпульсы формирует внешнее ведущее устройство SPI интерфейса. Для правильной работы в режиме ведомого, частота синхроимпульсов не должна превышать частоту системных синхроимпульсов, деленную на 8.

При работе в режиме ведущего, микроконтроллер сам формирует синхроимпульсы SPI интерфейса. Скорость обмена данными определяется коэффициентом деления системных синхроимпульсов, который задается значением регистра коэффициента деления для SPI интерфейса (SPICK). Модуль SPI поддерживает 256 различных коэффициентов деления. Частота синхроимпульсов SPICK определяется следующей формулой:

Скорость обмена данными по SPI интерфейсу (бод) = Частота системных синхроимпульсов / (2 х коэффициент деления частоты системных синхроимпульсов),

где коэффициент деления частоты системных синхроимпульсов = (SPICK.7:0) + 1

Так как скорость обмена данными по SPI интерфейсу зависит от частоты системных синхроимпульсов, то изменение частоты этих синхроимпульсов, например при активизации одного из режимов управления питанием, изменит скорость обмена данными по SPI интерфейсу. Попытка же активизировать режим управления питанием при передачи данных по SPI интерфейсу (STBY = 1) игнорируются.

Обратите внимание, однако, что в режиме управления питанием (PMME = 1) запись в регистр SPIB в режиме ведущего и установка активного сигнала на выводе SSEL в режиме ведомого квалифицируются как активизация режима переключения источника (SWB = 1). В режиме останова синхронизация модуля SPI приостанавливается.



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





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