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

 
 
 
Reply to this topicStart new topic
> Atmel SAM3U - тестирование DMA, USART "плюется" нулями, если передача с DMA (PDC)
KnightIgor
сообщение Nov 12 2010, 22:18
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 643
Регистрация: 29-05-09
Из: Германия
Пользователь №: 49 725



Привет всем.

Имею EK c AT91SAM3U4E (Cortex-M3). Попробовал передавать что-нибудь через USART (в обычном асинхронном режиме).

Если записывать в USART программно, по готовности, передается все, как надо (принимаю в HyperTerminal). Попробовал с использованием DMA (периферийный DMA называется там PDC) - тоже передает требуемое количество символов, но значения всегда 0. Указатель на буфер записывается правильно: под отладчиком на железе проверял. Интересно, что под симулятором DMA "работает" правильно, то есть в окне, соответствующем USART виден правильный вывод. Почитал ERRATA - никакого упоминания.

Кто сталкивался?

Спасибо.
Go to the top of the page
 
+Quote Post
Dron_Gus
сообщение Nov 13 2010, 20:49
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 9-01-05
Из: Санкт-Петербург
Пользователь №: 1 861



А DMA имеет доступ в этот регион памяти?


--------------------
Если сверху смотреть, то сбоку кажется, что снизу ничего не видно.
Go to the top of the page
 
+Quote Post
KnightIgor
сообщение Nov 14 2010, 11:43
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 643
Регистрация: 29-05-09
Из: Германия
Пользователь №: 49 725



Цитата(Dron_Gus @ Nov 13 2010, 21:49) *
А DMA имеет доступ в этот регион памяти?


Вопрос я себе тоже задал, но нигде не нашел упоминания о запрете доступа для PDC (PDC - это DMA, жестко связаный в SAM3x с той или иной периферией) к той или иной памяти. Пробовал указывать на буфер как во Flash, так и RAM. Результат тот же: выплевываются только нули.
Go to the top of the page
 
+Quote Post
MrAlex
сообщение Nov 15 2010, 14:09
Сообщение #4


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

Группа: Свой
Сообщений: 197
Регистрация: 15-10-10
Из: г. Москва
Пользователь №: 60 179



Возможно неверно передаете указатель на данные.
Смотреть указатель адреса после передачи.
Go to the top of the page
 
+Quote Post
KnightIgor
сообщение Nov 20 2010, 22:50
Сообщение #5


Знающий
****

Группа: Участник
Сообщений: 643
Регистрация: 29-05-09
Из: Германия
Пользователь №: 49 725



Цитата(MrAlex @ Nov 15 2010, 15:09) *
Возможно неверно передаете указатель на данные.
Смотреть указатель адреса после передачи.


Под отладчиком смотрел, какие значения и куда грузятся: все красиво.
Go to the top of the page
 
+Quote Post
AndreyKar
сообщение Mar 4 2011, 11:12
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 17-01-07
Пользователь №: 24 508



У к.н. есть рабочие примеры работы DMA c SSC или SPI? Насколько я понял для этой периферии у них нет PDC.

Сообщение отредактировал AndreyKar - Mar 4 2011, 11:36
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Mar 4 2011, 11:45
Сообщение #7


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Нули будут, если есть ошибка в привязка старта цикла DMA к событию(Слишком часто, в частности). (При этом пошагово вполне может работать).


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
sysel
сообщение Mar 4 2011, 12:23
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 3-07-07
Пользователь №: 28 852



Цитата(AndreyKar @ Mar 4 2011, 14:12) *
У к.н. есть рабочие примеры работы DMA c SSC или SPI? Насколько я понял для этой периферии у них нет PDC.


Примеры (все) из поставки IAR EWARM 6.10.
Там есть проект "basic-ssc-i2s-wm8731-project". Где есть связка DMA - SSC

Прикрепленные файлы
Прикрепленный файл  at91sam3u_ek.zip ( 780.27 килобайт ) Кол-во скачиваний: 26
 
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 12:09
Рейтинг@Mail.ru


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