SPI: TI или режим Motorola?


8

Я программирую Cortex M3 для общения с SPI Flash. Один из битов конфигурации регистра управления SPI - это FRF(формат кадра). Он может быть установлен в режим SPI Motorola (0) или в режим SPI TI (1). (См. Справочное руководство ARM на стр. 695 здесь .)

Таблица данных SPI Flash (доступна здесь ) не дает указания относительно того, какой режим мне следует использовать.

Каковы два разных режима, и какие я должен использовать для конкретной флеш-микросхемы, которую я использую?

Ответы:


1

Режимы Motorola и TI относятся к различным конфигурациям полярности часов (CPOL) и фазы синхросигнала (CPHA). Полярность часов определяет, будет ли сигнал высоким или низким сигналом, а фаза сообщает устройству, когда следует выбирать линию данных.

В соответствии с таблицей ARM вы можете установить CPOL и CPHA для контроллера SPI.

Ваш флэш-чип (см. Главу 3) поддерживает {CPOL = 0, CPHA = 0} или {CPOL = 1, CPHA = 1}.

Для получения дополнительной информации, http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus#Clock_polarity_and_phase


Ага, спасибо! Итак, что есть что? Это {CPOL=0, CPHA=0}Motorola или TI?
Randomblue

Я не могу вспомнить, или найти авторитетный источник.
Тоби Джаффей

1
Каждый раз, когда я определяю, что @Randomblue имеет область видимости, мне гораздо легче измерить, чем посмотреть.
Кортук

1
@ Kortuk: Под «областью действия» вы подразумеваете «осциллограф», верно? Это звучит довольно захватывающе, но я никогда не делал такого раньше. Не могли бы вы указать на какое-нибудь руководство, объясняющее, как это сделать?
Randomblue

7
Извините, но этот ответ неверен. Режим TI не имеет отношения к полярности. Для получения более подробной информации посетите здесь: infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0194g/...

4

Короткий взгляд на таблицу данных ARM предполагает, что основное различие между режимом TI и режимом Motorola связано с обработкой выходного сигнала, называемого SSPFSSOUT, который многим устройствам просто не нужен. Предполагается, что этот сигнал имеет высокий импульс между байтами, чтобы указать, какой бит каждого байта следует считать первым. В режиме TI он увеличивается во время передачи последнего бита байта, в то время как в режиме Motorola он повышается, а затем уменьшается между байтами. Микросхема флэш-памяти хочет сигнал выбора микросхемы, который удерживается на низком уровне в течение всей длительности транзакции, поэтому выходной сигнал с высоким уровнем между байтами для него не будет полезен.

Я ожидаю, что даже если SSPFSSOUT не используется, режим Motorola облегчит чтение данных в области (поскольку будет пауза после каждого байта), но режим TI может быть быстрее (поскольку он не будет тратить время на паузу). между байтами). Однако важно убедиться, что последовательность сигналов, которые генерирует контроллер, соответствует требованиям, приведенным в техническом описании периферийных устройств.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.