Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ARM, Cortex, STM32
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/34: Рейтинг темы: голосов - 34, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 23.12.2013
Сообщений: 25
1

LPC1788, SSP, Half Duplex

09.02.2014, 23:37. Показов 6800. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть девайс подключенный по 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 бита к примеру 0xOBSD. Значит ли это что я сначала пишу в RD = 0xOBSD; потом включаю SSP или я сначала включаю SSP и потом пишу в RD = 0xOBSD, или так как я использую 8 битный формат передачи данных то я должен писать по 8 бит в DR, тоесть я включю SSP и потом RD = 0xD; RD = 0xC; RD = 0xB; RD = 0xA?

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

Что такое loop back mode в CR1 регистре? Значит ли это что если я использую последовательную передачу то должнен включит этот бит?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.02.2014, 23:37
Ответы с готовыми решениями:

half duplex, читает только 1 байт
пытаюсь заставить работать ds18b20 на полудуплексном режиме usart плата stm32f0 discovery дачтик...

emWIN на LPC1788
NXP вроде обещание сдержали и сеггеровская либа emWIN доступна для их процов, хоть конечно и не...

LPC 2387 SSP/SPI
Уважаемые, помогите :) Имеется LPC2387. Хочу настроить SSP1 как SPI. Код настройки:...

LPC1788 Mass Storage device на базе SPI Flash
Пытаюсь реализовать Mass Storage. К контроллеру подключена флэш sst25vf016. За основу взял пример...

AVR Bootloader и RS485 half-duplex
Собираю некое примитивное устройство, которое будет спрятано в распаечную коробку в неудобном...

1
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
10.02.2014, 15:22 2
Все режимы работы 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ом пользоваться не будете.
0
10.02.2014, 15:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.02.2014, 15:22
Помогаю со студенческими работами здесь

Half-Duplex UART для FT232
Добрый день, форумчане! Времени мало, не высыпаюсь и начинаю тупить. Мне надо к ft232 прицепить...

треск БП SEASONIC SSP-650RT
Всем привет! собрал компьютер: БП SEASONIC SSP-650RT Процессор Райзен А5 2600 Мат плата Asus...

еще один MP3 проигрыватель (VS1053b, LPC1788, LCD)
Люблю я слушать музыку дома, но компьютер для этого включать не всегда охото :) Есть конечно...

Seasonic SSP-550RT или ZALMAN ZM600-TX
Всем привет скажите есть ли особо разница по стабильности работы Seasonic SSP-550RT и ZALMAN...

Duplex печать
Друзья, как адекватно выполнить двухстороннюю печать документа из программы? Можно ли в...

Duplex and WSDualHttpBinding
Доброго времени суток! Пытаюсь сделать чат (в будущем подобие скайпа) с помощью дуплексной службы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru