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

 
 
5 страниц V  « < 3 4 5  
Reply to this topicStart new topic
> Zynq подключение камеры, Вопросы новичка
toshas
сообщение Nov 20 2017, 17:58
Сообщение #61


Местный
***

Группа: Свой
Сообщений: 344
Регистрация: 14-02-06
Пользователь №: 14 339



Как вариант посмотрите как настроить прерывание не по уровню, а по фронту.
Можно сделать или через отдельный контроллер GPIO или вроде бы даже напрямую в контроллере прерываний.
Go to the top of the page
 
+Quote Post
ilyaprok
сообщение Вчера, 08:04
Сообщение #62


Участник
*

Группа: Участник
Сообщений: 35
Регистрация: 29-10-17
Пользователь №: 99 964



Цитата(toshas @ Nov 20 2017, 22:58) *
Как вариант посмотрите как настроить прерывание не по уровню, а по фронту.
Можно сделать или через отдельный контроллер GPIO или вроде бы даже напрямую в контроллере прерываний.

Да настроил,спасибо. С помощью функции XScuGic_SetPriorityTriggerType.
Теперь все правильно работает. Остается как то скачать дамп памяти в файл и посмотреть. Пытаюсь через XSCT консоль - но не понимаю. Использую вот такую команду - mrd -bin -file mem.bin 0x01000000 360960. Но не понимаю где этот файл найти, или нужно сначала его открыть, потом записать, потом закрыть. А что за команды?

Сообщение отредактировал ilyaprok - Вчера, 08:04
Go to the top of the page
 
+Quote Post
toshas
сообщение Вчера, 11:11
Сообщение #63


Местный
***

Группа: Свой
Сообщений: 344
Регистрация: 14-02-06
Пользователь №: 14 339



В TCL консоли вы можете понять в какой рабочей директории находитесь командой dir.


Go to the top of the page
 
+Quote Post
ilyaprok
сообщение Вчера, 11:42
Сообщение #64


Участник
*

Группа: Участник
Сообщений: 35
Регистрация: 29-10-17
Пользователь №: 99 964



Цитата(toshas @ Nov 21 2017, 16:11) *
В TCL консоли вы можете понять в какой рабочей директории находитесь командой dir.

Спасибо!
получил первое изображение:

Вам toshas и svedach Большое Спасибо!!!! Я прям рад! biggrin.gif
Однако вопрос возник - если идет запрос к DRAM памяти сразу несколькими мастерами как будет происходит чтение или запись? Можно например обращаться к памяти в DRAM, пока идет чтение или запись в тот же регион с помощью DMA? А если несколько DMA использовать - как они будут делить доступ?
И еще вопрос по поводу глобальных переменных - где они создаются в кеше? какого уровня?
И что означает эта функция, зачем очищать кэш?
Xil_DCacheFlushRange
Я использую по совету svedach
Код
    
Xil_Out32(XPAR_AXI_DMA_0_BASEADDR + 0x48, AddrDst);
Xil_DCacheFlushRange(AddrDst, 752);
Xil_Out32(XPAR_AXI_DMA_0_BASEADDR + 0x58, 752);

И еще получается 480*60=28800 раз в секунду вызывается прерывание по DMA, это же съедает много процессорного времени?

Сообщение отредактировал ilyaprok - Вчера, 11:46
Go to the top of the page
 
+Quote Post
svedach
сообщение Вчера, 14:04
Сообщение #65


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

Группа: Свой
Сообщений: 115
Регистрация: 8-01-12
Из: Беларусь
Пользователь №: 69 226



Добрый день! Поздравляю!
Xil_DCacheFlushRange - это сброс кешированных данных из кеша в ДДР. Как я смог разобраться, несмотря на то, что память распределена в ДДР, Цинк перегоняет данные в кеш, а потом как будет время - в ДДР. Эта команда заставляет его скинуть последние принятые данные в ДДР.
Go to the top of the page
 
+Quote Post

5 страниц V  « < 3 4 5
Reply to this topicStart new topic
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd November 2017 - 12:46
Рейтинг@Mail.ru


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