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

 
 
 
Reply to this topicStart new topic
> Опять про SSC на AT91SAM7S, Что-то непонятно мне...
Edmundo
сообщение May 17 2006, 10:13
Сообщение #1


Мастер
****

Группа: Свой
Сообщений: 730
Регистрация: 18-02-06
Из: Москва
Пользователь №: 14 474



Вот и я встал на скользкий путь программирования SSC. Жизнь так сказать заставила smile.gif
Возник сразу вопрос. У меня задача такая. Есть массив, хочу его гнать по SSC через PDC следующим макаром: 1 байт неважно чего, 7 байт данных (и т.д.). Синхронизация -- внешняя на ногу TK. Фреймовые сигналы вообще не важны.

Самая простая настройка передатчика
Код
    AT91F_SSC_Configure (AT91C_BASE_SSC,
        MCK, // \arg System Clock Frequency
        0,// \arg Expected Baud Rate Frequency
        0, // \arg Receiver Clock Parameters
        0, // \arg mode Register to be programmed
        0x2 | AT91C_SSC_CKI, // \arg Transmitter Clock Parameters
        7); // \arg mode Register to be programmed

приводит к тому, что перед данными в течении 3-х клоков мусор (0-1-0). Я думал, что мусор будет в течении 1 клока (минимальный фреймовый сигнал), но не 3. И почему 1 -- ведь AT91C_SSC_DATDEF не взведен. В общем непонятно.

Дальше я пытался различными настройками удлинить фрейм до необходимых мне 8 бит, чтобы данные шли после. Но никакие настройки не влияли -- неизменно первые три клока заполнялись разного рода фигней, и только потом шли данные. Только AT91C_SSC_STTDLY влияет, 5 бит если поставить, то все как надо. Но тут проблема, что при перегоне большого массива через PDC эта задержка я так понимаю только один раз будет.

Может кто посоветует с настройками.


--------------------
شامل
Go to the top of the page
 
+Quote Post
Edmundo
сообщение May 17 2006, 18:57
Сообщение #2


Мастер
****

Группа: Свой
Сообщений: 730
Регистрация: 18-02-06
Из: Москва
Пользователь №: 14 474



Ладно, проехали smile.gif
Пришлось фрейм завести и сменить тип старта на falling edge. Хотя все равно криво работает, что-то вещь эта отвратная довольно. SSC-раздел даташита уже наизусть выучил, а все равно так как должен, не фурычит. Полного ДМА не получилось, но пока времени разбираться нету.


--------------------
شامل
Go to the top of the page
 
+Quote Post
Shuuura
сообщение May 18 2006, 05:26
Сообщение #3


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

Группа: Свой
Сообщений: 80
Регистрация: 23-08-05
Пользователь №: 7 902



Цитата
Полного ДМА не получилось, но пока времени разбираться нету.

У меня все работает. Через SSC+PDC заливаю прошивку Cyclon-а из flash. Использую все аппаратные ножки. Правда в прошивке вначале идет несколько десятков FF, явно для синхронизации, может они спасают. Заработало сразу, даже осцилографом смотреть не стал.
Go to the top of the page
 
+Quote Post
Edmundo
сообщение May 18 2006, 09:41
Сообщение #4


Мастер
****

Группа: Свой
Сообщений: 730
Регистрация: 18-02-06
Из: Москва
Пользователь №: 14 474



Цитата(Shuuura @ May 18 2006, 09:26) *
У меня все работает. Через SSC+PDC заливаю прошивку Cyclon-а из flash. Использую все аппаратные ножки. Правда в прошивке вначале идет несколько десятков FF, явно для синхронизации, может они спасают. Заработало сразу, даже осцилографом смотреть не стал.

Сейчас пробую передатчик SSC в мастер-режиме, то есть синхронизация от делителя. Пришлось немного перекроить идею. Вроде работает лучше, чем от внешнего клока.


--------------------
شامل
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 08:38
Рейтинг@Mail.ru


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