DSP TMS320C5515, под отладчиком полностью функционирует, но если с внешней памяти запускается, то на шину I2S не отправляет данные, клоки есть. Передача осуществляется через DMA из памяти. В память кладётся по прерыванию от ADC. При подключении эмулятора (connect без загрузки памяти) всё начинает работать. Фура загадал слишком сложную загадку, а мы репу чешем теперь. Есть какие-то идеи, что делать и куда проверять?
может какой отладочный монитор забыли выключить?
либо ацп не кладет, либо дма не оттуда берет
Сборка в режиме релиза.
Пока склоняемся к тому, что ДМА не берёт, потому что параллельно идёт вывод на дисплей и там нужные данные после всех пересчётов. Изменение местоположения установки данных и замена их на искусственные не меняет поведение системы.
захардкодьте буфер из которого берет I2S каким-нибудь мусором, При поступлении данных АЦП увеличивайте каждое значение на 1... например
Именно так и сделал. До подключения эмулятора на выходе клоки и нули вместо данных.
смотрите адреса дма
А что с ними не так? DMA работает ячейка-ячейка и начинает выдавать после подключения эмулятора, обнаружить неверные данные до его подключения сложновато.
Обсуждают сегодня