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

 
 
> Передать блок данных с мк на мк, как лучше реализовать?
zombi
сообщение Mar 22 2016, 14:20
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Нужно в одном изделии передавать с одной xmega на другую каждую миллисекунду 12288 бит = 1536 байт.
Чем побыстрее, но не дольше чем за 200 мкс.
Оба мк тактируются от общего внешнего генератора 32MHz.
Свободных ног у каждого по 10 шт. есть.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Kovrov
сообщение Mar 28 2016, 12:21
Сообщение #2


Мастер-фломастер
****

Группа: Свой
Сообщений: 611
Регистрация: 29-12-05
Пользователь №: 12 700



Для приема:
Триггер ДМА завести по прерыванию внешнего входа
источник будет порт приема
назначение будет буфер озу с инкрементом
по истечению нужного колва байт в транзакции ДМА вывести запрос на прерывание у дма
вот и всего делоф.

Для передачи:
добавляем эвент контроллер дергания ноги строба.
загрузка проца минимальна.





--------------------
Вон ПОПОВ, клоун клоуном, а радио изобрел!!
Go to the top of the page
 
+Quote Post
zombi
сообщение Mar 28 2016, 13:51
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(Kovrov @ Mar 28 2016, 15:21) *
Триггер ДМА завести...

Предлагаете и в приёмнике и в передатчике использовать DMA?
А сколько тактов необходимо для передачи одного байта из увв во внутр. память и наоборот?
И как оба процесса синхронизировать?
Go to the top of the page
 
+Quote Post
Kovrov
сообщение Mar 29 2016, 07:28
Сообщение #4


Мастер-фломастер
****

Группа: Свой
Сообщений: 611
Регистрация: 29-12-05
Пользователь №: 12 700



Цитата(zombi @ Mar 28 2016, 18:51) *
Предлагаете и в приёмнике и в передатчике использовать DMA?
А сколько тактов необходимо для передачи одного байта из увв во внутр. память и наоборот?
И как оба процесса синхронизировать?


Может я чето не понял
у вас есть 10 линий ио для реализации параллельного интерфейса
и нужно перекачать 1600 байт за 1 мс
так?
по схемотехнике:
на приемнике:
задействуем 1 полный порт для приема передачи
1 пин ввода вывода произвольный (разрешение интерфейса)
1 пин (строб для чтения данных) - если надумали работать через PWM таймера то зарезервировать вывод OC таймера если через евент систем - то любую ножку.
---
далее:
условимся что приемник будет командовать передатчиком т.е разрешать работу и стробить
----
что делает сигнал строба:
по спаду - передатчик готовит данные на выдачу на порт
по подъему приемник читает это все дело в буфер
можно и наоборот главное четко это для себя определить.
----
в приемнике разрешаем работу ножки вывода строба
определяем длительность спада как ОСА
определяем длительность подъема как ОСВ
задаем вершину счета (переменные PER или TOP) именно по ним коунтер таймера обнуляем
----
длительность периода можно регулировать
мне хватило 3 такта длит спада 3 такта подъема итого 6 на период + ещё запас до вершины таймера (TOP) , хотя top может равняться = OCB
31,25 нС * 6 = 187,5 нС/байт *1600 = 300 мкС
под ваше условие 1мс -
можно спокойно сделать период 10тактов +10тактов = 20*31,25 *1600 = 1000мкС
----
свои тайминги можете крутить как хотите переменными OCA OCB и PER.
---
Главное здесь то, что процу нужно обрабатывать только старт,стоп пакета и флаг прерывания дма.
зыы:
такие опыты я делал когда получил из образцов мега а1 ещё давным давно


--------------------
Вон ПОПОВ, клоун клоуном, а радио изобрел!!
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- zombi   Передать блок данных с мк на мк   Mar 22 2016, 14:20
- - ЯadiatoR   При 32МГц в 200мкс 6400 тактов. Как раз должно хва...   Mar 22 2016, 14:52
- - zombi   Цитата(ЯadiatoR @ Mar 22 2016, 17:52) Одн...   Mar 22 2016, 15:28
- - ЯadiatoR   Ну вариантов определения первого байта не много - ...   Mar 22 2016, 15:37
|- - zombi   Цитата(ЯadiatoR @ Mar 22 2016, 18:37) (а ...   Mar 22 2016, 15:46
- - _pv   это если они от одного источника тактируются или о...   Mar 22 2016, 16:08
- - Lerk   _pv, Цитата(zombi @ Mar 22 2016, 17:20) О...   Mar 22 2016, 16:20
- - _pv   да, действительно. тогда проблем не должно быть, т...   Mar 22 2016, 17:10
- - 501-q   Цитата(zombi @ Mar 22 2016, 19:20) Нужно ...   Mar 23 2016, 04:21
- - ЯadiatoR   Да что вы заморачиваетесь, если обработка в прерыв...   Mar 23 2016, 05:21
|- - _pv   Цитата(ЯadiatoR @ Mar 23 2016, 11:21) Да ...   Mar 23 2016, 07:49
|- - 501-q   Цитата(_pv @ Mar 23 2016, 12:49) я так по...   Mar 23 2016, 08:48
|- - _pv   Цитата(501-q @ Mar 23 2016, 14:48) Н...   Mar 23 2016, 09:10
|- - 501-q   Цитата(_pv @ Mar 23 2016, 14:10) и что-то...   Mar 23 2016, 09:23
- - ЯadiatoR   Ну на деле есть 6400 тактов. Конечно, компилятор р...   Mar 23 2016, 07:59
|- - _pv   Цитата(ЯadiatoR @ Mar 23 2016, 13:59) Ну ...   Mar 23 2016, 09:34
- - ЯadiatoR   Ну флеш то заиспользовать не проблема - а принимат...   Mar 23 2016, 09:18
- - ЯadiatoR   rjmp это хорошо, а кто инкремент будет делать? Или...   Mar 23 2016, 09:44
|- - _pv   Цитата(ЯadiatoR @ Mar 23 2016, 16:44) rjm...   Mar 23 2016, 09:48
|- - 501-q   Цитата(_pv @ Mar 23 2016, 14:48) ST Y+, r...   Mar 23 2016, 10:36
- - ЯadiatoR   сначала написал - потом подумал, жалко удалить ком...   Mar 23 2016, 09:58
- - ILYAUL   ЦитатаНо если памяти хватает, то можно тупо повтор...   Mar 23 2016, 20:36
- - piroman   SPI + DMA и нет проблем.   Mar 24 2016, 11:41
|- - ЯadiatoR   Цитата(piroman @ Mar 24 2016, 14:41) SPI ...   Mar 24 2016, 11:55
|- - 501-q   Цитата(zombi @ Mar 28 2016, 18:51) Предла...   Mar 29 2016, 04:12
||- - Kovrov   Цитата(501-q @ Mar 29 2016, 09:12) Ч...   Mar 29 2016, 07:06
|- - _pv   Цитата(Kovrov @ Mar 29 2016, 13:28) Может...   Mar 29 2016, 09:08
- - Склихасовский   у меня был подобный опыт реализация LVDS на хмега...   Mar 29 2016, 05:27
- - ЯadiatoR   Может тут имелась ввиду не сама сложность, а то, ч...   Mar 29 2016, 07:10
- - Kovrov   а кому нужен этот геморой чтоб 1/5 времени проц то...   Mar 29 2016, 09:16
|- - _pv   Цитата(Kovrov @ Mar 29 2016, 15:16) а ком...   Mar 29 2016, 09:20
- - zombi   to _pv - именно так и планирую делать и это единст...   Mar 29 2016, 09:22
- - Kovrov   мое мнение вам нужно в корне пересмотреть вашу иде...   Mar 29 2016, 09:48
|- - zombi   Цитата(Kovrov @ Mar 29 2016, 12:48) мое м...   Mar 29 2016, 10:26
|- - Kovrov   Цитата(zombi @ Mar 29 2016, 15:26) уточни...   Mar 29 2016, 10:53
|- - zombi   Это задача а не идея.   Mar 29 2016, 11:13
- - Kovrov   ну остается только пожелать вам удачи в реализации...   Mar 29 2016, 11:15


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

 


RSS Текстовая версия Сейчас: 19th August 2025 - 10:10
Рейтинг@Mail.ru


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