|
STM32F429IG + USB3300 + SDRAM +LTDC, не хочет работать все вместе |
|
|
|
Aug 20 2015, 16:15
|
Местный
  
Группа: Свой
Сообщений: 255
Регистрация: 17-08-06
Из: Москва
Пользователь №: 19 646

|
Приветствую!
Пытаюсь заставить работать WaveShare Open429I-C с ее же комплектными компонентами. Выгрузил проект из CubeMX, FreeRTOS, включен LTDC на дисплей 7" (800x480), внешняя SDRAM 8 мегабайт (16 бит), ну и модуль ULPI USB3300 в режиме host-only.
По отдельности все работает, USB флешку опознает, пишет, читает. Включаю StemWin, врубается LTDC, USB начинает работать через одно место. Сначала инициализация StemWin была в самом начале - так USB3300 даже VBus не зажигал. Потом перенес инициализацию после хоста - зажигается VBus, но дальше не работает.
Отрубаю StemWin - все начинает летать. Врубаю только LTDC, без StemWin, инициализирую слои, не включая - работает. Включаю слой на отображение - USB перестает работать (подыхает где-то на нумерации).
Иногда при отладке USB3300 загоняется в какое-то положение, из которого только через ресет питания выходит. При этом стартуешь программу - она говорит что device attached (хотя на самом деле девайса уже нет).
Думал уже наводки, смотрел осциллом - ну, сигнал не суперчистый, но по идее ложных срабатываний быть не должно, это все еще вполне себе нули.
Всю голову поломал! Может есть какие-то мысли?
|
|
|
|
|
 |
Ответов
|
Aug 21 2015, 05:49
|
Участник

Группа: Участник
Сообщений: 37
Регистрация: 9-04-14
Из: Черногорск Хакасия
Пользователь №: 81 299

|
Тоже имеется такая плата (Open 429-I)экран пока не купил но планировал такой же 800 на 480. В процессе изучения нескольких вариантов файлов LCDConf появились некоторые сомнения. Хотел уточнить у ТС сколько буферов используется для рисования и отображения в StemWin? Потому как если просто заливать проект из куба там встречаются размеры экранов 320*240 480*272 640*480 и 1 или 3 NUM_BUFFERS и при этом используется 2 слоя. Я посчитал что если для экрана 800 на 480 режим ARGB(4 байта на пиксель) плюс тройная буферизация только так и не понял для чего она. И еще если включены 2 слоя то памяти в SDRAM получится задействовано 800*480*4*3*2=9 метров. У нас же запаяно 8. Можно конечно разные варианты типа rgb565 или 2 буфера или вообще один слой. Хотелось узнать как у Вас сконфигурировано. Может просто не хватает этой самой SDRAM. Прерывания от LTDC вроде в кубовсих проектах используются там происходит смена буферов для отображения LTDC и буфера для рисования stemwin. (front меняется на back и наоборот если в терминах emwina )
|
|
|
|
|
Aug 21 2015, 10:24
|
Местный
  
Группа: Свой
Сообщений: 255
Регистрация: 17-08-06
Из: Москва
Пользователь №: 19 646

|
Изначально было два слоя 800x480 ARGB8888 по одному буферу, то есть по два мега на слой примерно. SDRAM явственно хватает, и сам гуй работает как из пушки.
Сейчас у меня есть простой проект БЕЗ StemWin, БЕЗ RTOS, только инитятся слои на отображение хоть чего-нибудь хоть откуда-нибудь. И вот в ините слоя в строчке pLayerCfg1.FBStartAdress = 0x20000000 адрес меняю на 0xd0000000 - USB работать перестает.
В примерах от самого WaveShare они поступили мудро - там или USB HS ULPI, или экран. Вместе - нету. Сдается мне, что разведено там через одно место, сначала по плате с процессором, потом по материнской, потом по плате с USB3300, через два разъема, а там 60МГц на минуточку и все дорожки должны быть одинаковой длины.
Кстати, пример StemWin который сами же вайвшаровцы дают - глючит.
UDA1380 пример для проигрывания есть, для записи - нету. Я тут пытался запустить I2S (UDA1380) оттуда же, наткнулся на то, что у товарищей на платке электретный микрофон не подключен к питанию, а когда я поменял микрофон и подключил к питанию - то фон пробивается при записи. Причем не от микрофона, а по питанию кодека. А если сделать тактирование MCK от процессора - то трест пробивается, щуп осцилла с CLK подключаешь - треск пропадает. Однозначно неравные длины проводников, ну или что-то еще, уже задолбался разбираться с этим поделием.
Ну и питалово 3.3 вольта ВСЕЙ ПЛАТЫ сделать единственным 1117, расположенным на процессорной плате и без возможности запитать периферию от чего-то еще - это тоже надо быть альтернативно одаренным.
В общем, WaveShare я больше не покупаю и никому не посоветую..
|
|
|
|
Сообщений в этой теме
king2 STM32F429IG + USB3300 + SDRAM +LTDC Aug 20 2015, 16:15 mantech Цитата(king2 @ Aug 20 2015, 19:15) Думал ... Aug 20 2015, 16:59 scifi Цитата(mantech @ Aug 20 2015, 19:59) Вряд... Aug 20 2015, 17:14 king2 Цитата(mantech @ Aug 20 2015, 19:59) Вряд... Aug 20 2015, 17:35 adnega Цитата(king2 @ Aug 20 2015, 19:15) Может ... Aug 20 2015, 18:09 king2 Цитата(adnega @ Aug 20 2015, 21:09) Как S... Aug 20 2015, 18:58 Rash Это макетка больше от неё ожидать не стоит. UDA138... Aug 21 2015, 10:39 king2 Цитата(Rash @ Aug 21 2015, 13:39) Не дума... Aug 21 2015, 11:23 Rash на микрофон естественно припаял резюк, а не устойч... Aug 21 2015, 12:33 king2 Цитата(Rash @ Aug 21 2015, 15:33) Последо... Aug 21 2015, 12:51 Rash При включении мк пин на вход, т.е. в 0., потом ини... Aug 21 2015, 13:10 king2 Ага, понял. То есть главная идея - когда отпускает... Aug 21 2015, 13:16 Rash делал по даташиту, там вроде всё есть, было пару л... Aug 21 2015, 13:28 king2 Ну вот у меня работать-работает, но при тактирован... Aug 21 2015, 13:33  king2 Пробую UDA1380 с ресетом.
Включаю SYSCLK (заодно ... Aug 22 2015, 21:26 DrGluck ... попробуйте переведите графику в "байт-пик... Aug 23 2015, 19:39 king2 Цитата(DrGluck @ Aug 23 2015, 22:39) ... ... Aug 23 2015, 20:09 DrGluck RM0090 Reference manual
чудес не бывает ...
А ч... Aug 23 2015, 20:14 king2 Дык в референс и смотрю, картинка 2, страница 62.
... Aug 23 2015, 20:50 DrGluck "Там вроде FMC <-> LCD-TFT и USB_OTG ... Aug 23 2015, 21:14 king2 Цитата(DrGluck @ Aug 24 2015, 00:14) - ды... Aug 23 2015, 21:38 DrGluck Да, действительно ULPI выводятся на отдельные ноги... Aug 24 2015, 07:06 king2 Цитата(DrGluck @ Aug 24 2015, 10:06) P.S.... Aug 25 2015, 00:06 DrGluck ... хорошо, будем ждать инфы о причине глюка ... Aug 25 2015, 06:01
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|