Easyelectronics.ru

Электроника для всех
Текущее время: 23 июл 2018, 05:26

Часовой пояс: UTC + 5 часов



    • JLCPCB - Платы прототипов всего за 2$ c бесплатной доставкой (при первом заказе)
    • 10 PCBs за $2 для 2 слоев, $15 для 4 слойной, $74 для 6 слойной платы.
    • Крупнейший китайский производитель прототипных плат. 290000+ клиентов & 8000+ заказов в день!
    • LCSC - Крупнейший китайский онлайн магазин радиодеталей.

Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: LPC1788, SSP, Half Duplex
СообщениеДобавлено: 10 фев 2014, 23:24 
Только пришел

Зарегистрирован: 27 дек 2013, 16:51
Сообщения: 25
Есть девайс подключенный по SPI.
Девайс отвечает на определенные команды. Скажем посылаю 16 битную команду девайсу, девайс на нее отвечает. Размер команды и ответа девайса произвольный (комманда может быть 8 бит или 16 бит или 64 бит к примеру, ответ тоже разного размера)
То есть связь должна быть последовательной а не параллельной

Для SSP в даташите есть 3 протокола:
Texas Instruments synchronous serial frame format
SPI
National Semiconductor Microwire frame format

Я правильно понимаю что только National Semiconductor Microwire frame format работает последоватеьно? 2 других формата данные передают парраллельно?

В форматах передачи данных нужно манипулировать битами (делать их HIGH или LOW) SC, CS. Я так пониаю когда я выбрал какой формат я использую эти манимуляции делаются автоматически контроллером? То есть чтобы передать данные я просто пишу их в DATA REGISTER (RD)?

К примеру я выбрал 8 битный формат передачи данных. И мне нужно передать команду которая 32 бита к примеру 0xABCD. Значит ли это что я сначала пишу в RD = 0xABCD; потом включаю SSP или я сначала включаю SSP и потом пишу в RD = 0xABCD, или так как я использую 8 битный формат передачи данных то я должен писать по 8 бит в DR, тоесть я включю SSP и потом RD = 0xD; RD = 0xC; RD = 0xB; RD = 0xA?

Как работает последовательная передача. То сначала отправляются все данные которые в RD по MOSI, и после этого тоже по MOSI ответ девайса?

Что такое loop back mode в CR1 регистре? Значит ли это что если я использую последовательную передачу то должнен включит этот бит?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: LPC1788, SSP, Half Duplex
СообщениеДобавлено: 11 фев 2014, 15:09 
Старожил

Зарегистрирован: 15 янв 2013, 13:24
Сообщения: 5665
Все режимы работы SSP - последовательные. Потрудитесь хотя бы расшифровать аббревиатуру "SSP". Слово "Serial" говорит само за себя.

Манипуляции с сигналом SCK автоматически делаются SPI-модулем. Манипуляции с сигналом CS - в зависимости от настройки модуля SSP, могут быть автоматические либо программные. Для того, чтобы передать данные, их надо просто поместить в регистр данных SSP.

Как передать данные большей разрядности, чем регистр данных - зависит от протокола связи между устройством-передатчиком и устройством-приёмником. Например, они могут передавать/принимать 32-бит порциями по 8 бит так: 0x12569ADE -> 0x12,0x56,0x9A,0xDE. А могут и по-другому: 0x12569ADE -> 0xDE,0x9A,0x56,0x12.

В SPI раздельные линии для передачи и приёма данных. Опять же, аббревиатуры MOSI и MISO раскройте (гугл? даташит?). Четыре буквы превращаются в четыре слова - ответ на вопрос: по какой линии что идёт.

Loop back mode Вам нафиг не сплющился. Даже когда наУчитесь работать с SPI, скорей всего, loopback'ом пользоваться не будете.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB