Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Есть проблема сприемом передачей по SPI с PDC SAM7S(+)
Отправлено
misyachniy
18 ноября 2009, г. 19:13
Для отладки устройства на SАM7S собрал SLAVE SPI устройство.
Ипользую может несколько некорректно - 32 битными пересылками с SS сигналом
Чип заведомо глючный SAM7S128 партия 58818C.
Но вроде бы я не использую ошибочные режими.
Под руками нету другого.
Настраивал в режиме 8 и 16 бит поведение одинаковое.
В начале принимаю команду(4*32) бита.
Затем передаю ответ (5*32) бита.
Точнее разрешаю передачу через PDC.
Ошибка вылезает циклически.
Первая передача и прием успешны
Последующие прием/передача ошибочны.
Затем опять успешно и неуспешно.
То есть каждая четная пара ошибочна.
Покопался глубже - оказалось что сбой происходит уже после первого удачного ответа.
То есть при переключении с передачи на прием какая-то ошибка.
Транно также что портится 2-е из 4-ех 32 битных слов в посылке.
Остальные 3 слова корректные.
Подозреваю что напутал с переключением PDC на прием передачу.
Несколько десятков вариантов решения перепробовал - не идет никак.
Есть ли у кого пример корректного переключения SPI с PDC в Slave режиме?
Спасибо.
Составить ответ
|
Вернуться на конференцию.
Ответы
Для 16бит код инициализации внутри, никогда проблем не было
-
omen
(18.11.2009, 20:20:28
81.222.195.194
, 1748 байт)
Если я правильно понимаю принцип работы SPI, то PDC нужно программировать оба канала, и прием, и передачу. Включать тоже оба.
-
vmp
(18.11.2009, 20:11:31
80.90.120.6
, 208 байт)
Пока выявил следующее. После разрешения работы PDC, счетчик передач сразу декрементируется. Завтра задействую прерывание или еще как. Длина по приему переменная, наверное прийдется таймаут применить. Все пошел домой. Может футбол посмотрю а может Футбол. :-)
-
misyachniy
(18.11.2009, 20:29:35
194.187.111.110
,
пустое
)
В SPI длина по приему всегда равна длине на передачу. По определению.
-
vmp
(18.11.2009, 21:08:13
80.90.120.6
, 265 байт)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 654:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru