реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Последовательная передача (а-ля SPI), SAM7X256
gladov
сообщение Feb 15 2007, 10:51
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 169
Регистрация: 10-11-05
Из: Воронеж
Пользователь №: 10 687



Нужно реализовать последовательный вывод (и только вывод) 40-битовых данных по двум веревкам: данные и клок. LSB. Совсем уже затупил, но неужели нет аппаратной периферии, способной это сделать???
1) SPI не может, т.к. только MSB режим
2) SSC дает как минимум 1 лишний клок вначале на FrameSync, а это тоже не допустимо. Клоков надо ровно 40
3) UART дает старт/стоп.

Думаю, что я мог где-то чего-то недосмотреть, а экспериментировать с перечисленым железом пока не пробовал. Ткните носом, плз, чем воспользоваться? А то придется для SPI байты разворачивать программно... cranky.gif
Go to the top of the page
 
+Quote Post
vmp
сообщение Feb 15 2007, 11:37
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 426
Регистрация: 20-01-05
Из: Зеленоград
Пользователь №: 2 070



Цитата(gladov @ Feb 15 2007, 10:51) *
Нужно реализовать последовательный вывод (и только вывод) 40-битовых данных по двум веревкам: данные и клок. LSB. Совсем уже затупил, но неужели нет аппаратной периферии, способной это сделать???
2) SSC дает как минимум 1 лишний клок вначале на FrameSync, а это тоже не допустимо. Клоков надо ровно 40


Что-то ты с SSC напутал. Я использую SSC для конфигурирования FPGA (Альтера), и у меня все нормально передается на SAM7S. Вот пример кода:
http://www.telesys.ru/wwwboards/fpga/248/m...ges/14203.shtml
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 15 2007, 11:48
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(gladov @ Feb 15 2007, 09:51) *
1) SPI не может, т.к. только MSB режим

Да уж! неужели атмеловцы до такого додумались? Уверены?
Если придется "разворачивать" - ознакомьтесь с пррложением, там асмовские утилитки.


Цитата(vmp @ Feb 15 2007, 10:37) *
Что-то ты с SSC напутал.

Если имеется ввиду National Semiconductor Microwire режим, то ничего не напутано.
Прикрепленные файлы
Прикрепленный файл  bits.rar ( 1.86 килобайт ) Кол-во скачиваний: 36
 


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
gladov
сообщение Feb 15 2007, 14:32
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 169
Регистрация: 10-11-05
Из: Воронеж
Пользователь №: 10 687



Цитата(zltigo @ Feb 15 2007, 11:48) *
Цитата(gladov @ Feb 15 2007, 09:51) *

1) SPI не может, т.к. только MSB режим

Да уж! неужели атмеловцы до такого додумались? Уверены?
Если придется "разворачивать" - ознакомьтесь с пррложением, там асмовские утилитки.


Еще раз просмотрел регистры SPI - нет там такого флажка sad.gif
За утилитки большое спасибо!

Цитата
Что-то ты с SSC напутал. Я использую SSC для конфигурирования FPGA (Альтера), и у меня все нормально передается на SAM7S. Вот пример кода:


Спасибо, обязательно посмотрю.

Цитата
Если имеется ввиду National Semiconductor Microwire режим, то ничего не напутано.


It supports many serial synchronous communication protocols generally
used in audio and telecom applications such as I2S, Short Frame Sync, Long Frame Sync,
etc.

Так что все может быть - попробую сегодня...
Go to the top of the page
 
+Quote Post
gladov
сообщение Feb 15 2007, 15:14
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 169
Регистрация: 10-11-05
Из: Воронеж
Пользователь №: 10 687



Цитата(vmp @ Feb 15 2007, 11:37) *
Цитата(gladov @ Feb 15 2007, 10:51) *

2) SSC дает как минимум 1 лишний клок вначале на FrameSync, а это тоже не допустимо. Клоков надо ровно 40


Что-то ты с SSC напутал. Я использую SSC для конфигурирования FPGA (Альтера), и у меня все нормально передается на SAM7S. Вот пример кода:
http://www.telesys.ru/wwwboards/fpga/248/m...ges/14203.shtml


В этом примере все равно присутствует неявный лишний клок. Диаграмма именно такая, как нужно (т.е. данные по переднему фронту), только в "idle" TK д.б. low. Если я после передачи его сам опущу - лишний бит защелкнется. Да и при включении TK сначала "прыгнет" в 1, а потом по заднему фронту выставит первый бит.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 05:11
Рейтинг@Mail.ru


Страница сгенерированна за 0.01391 секунд с 7
ELECTRONIX ©2004-2016