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

 
 
> I2S full duplex dma, Сбой в режиме DMA
nicks80
сообщение Sep 8 2016, 19:58
Сообщение #1


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

Группа: Участник
Сообщений: 97
Регистрация: 18-10-07
Пользователь №: 31 485



Проблема в следующем.
Имеется кодек UDA1344 в связке с stm32f407vet6
Данные читаются по I2S из кодека в память и потом выдаются в кодек обратно по I2S с помощью DMA.
Все работает как часы но на объекте раз в день или два. происходит сбой. результатом такого сбоя является сильный шум из кодека.
Как я понял такой шум появляется если самому дотронутся до линии CK I2S. которая отвечает за очередность передачи битов.
Печально что восстановления не происходит при переходе 1 в 0 или наоборот 0 в 1 линии WS(LR CH). То есть получается что данные так и идут перемешанными битами соответственно и програмно никак это не отследишь.
Но оно и понятно если бит(помеха) лишний проскочил то все уже съехало а dma все шлет и шлет. какими средствами справляться хз.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Genadi Zawidowsk...
сообщение Sep 11 2016, 16:06
Сообщение #2


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

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Судя по схеме, кодек в режиме конфигурирования пинами стоит.
Go to the top of the page
 
+Quote Post
nicks80
сообщение Sep 11 2016, 18:04
Сообщение #3


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

Группа: Участник
Сообщений: 97
Регистрация: 18-10-07
Пользователь №: 31 485



Цитата(Genadi Zawidowski @ Sep 11 2016, 20:06) *
Судя по схеме, кодек в режиме конфигурирования пинами стоит.

да конфигурирую пинами.
я пробовал математически сдвиг отловить не по шуму. думал даже в сигнал примешивать высокочастотный и смотреть гармоники так как у меня там ффт крутится. но все отлавливается еще проще как выяснилось.
Я включил таймер. и смотрю количество тиков в периоде между заполнениями буферов. Это значение меняется +-1. А при сбое прыгает до 20-30 процентов а то и более. отлавливается все четко.
Видать клоки проскакивают. Но странно ведь при переходе WS должны биты опять синхронизироватся. Наверно связка DMA и I2S это не отслеживает.
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Sep 12 2016, 07:32
Сообщение #4


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

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



Цитата(nicks80 @ Sep 11 2016, 22:04) *
Но странно ведь при переходе WS должны биты опять синхронизироватся.


Не должны - а хотелось бы. Факт автоматической байтовой ресинхронизации с каждым WS описан в даташите?
Если - нет, то после синхронизации по первому WS - потом просто считаются такты, и на WS уже не смотрят.

Была такая же проблема у двух Atmel связанных по I2S - решил перейдя на USART.

Точно также в BF561 при приёме видеокадра - тупо считаются линии и точки. При сбое на тактовой - изображение съезжает и не исправляется с новым кадром. При этом никакие статусы не меняются. Единственный вариант - каждый кадр успевать инитить заново блок приёма видеоданных.

Кстати, у вас на линии WS резистор есть последовательный?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- nicks80   I2S full duplex dma   Sep 8 2016, 19:58
- - _4afc_   Если сбой не отражается в статусных регистрах stm3...   Sep 9 2016, 13:18
- - OVladimir   Не знаю, поможет или нет, но похожую проблему приш...   Sep 9 2016, 13:48
|- - nicks80   Цитата(OVladimir @ Sep 9 2016, 17:48) Не ...   Sep 10 2016, 18:46
- - OVladimir   Я использовал только TXE прерывание для проверки р...   Sep 11 2016, 09:25
|- - nicks80   Цитата(OVladimir @ Sep 11 2016, 13:25) Я ...   Sep 11 2016, 09:44
- - aaarrr   Случаи разные: у OVladimir'а МК ведомый, а у в...   Sep 11 2016, 09:52
|- - nicks80   Цитата(aaarrr @ Sep 11 2016, 13:52) Случа...   Sep 11 2016, 10:50
- - aaarrr   Давайте уточним: сбивается только прием, передача ...   Sep 11 2016, 11:16
|- - jcxz   Завести сигнал клока параллельно на любой таймерны...   Sep 11 2016, 11:29
||- - nicks80   Цитата(jcxz @ Sep 11 2016, 15:29) Завести...   Sep 11 2016, 12:42
||- - jcxz   Цитата(nicks80 @ Sep 11 2016, 18:42) я на...   Sep 11 2016, 14:00
|- - nicks80   Цитата(aaarrr @ Sep 11 2016, 15:16) Давай...   Sep 11 2016, 11:52
|- - aaarrr   Цитата(nicks80 @ Sep 11 2016, 14:52) сбив...   Sep 11 2016, 12:00
|- - jcxz   Цитата(nicks80 @ Sep 12 2016, 00:04) но в...   Sep 12 2016, 03:57
||- - nicks80   Цитата(jcxz @ Sep 12 2016, 07:57) Кол-во ...   Sep 12 2016, 12:06
- - nicks80   Что только не предпринимал оказывалось костылями. ...   Sep 15 2016, 20:23


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 11:22
Рейтинг@Mail.ru


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