|
STM32CubeMX для STM32F429 Discovery kit, ищу заготовку по инициализации в среде Cube для КИТ |
|
|
|
Oct 8 2015, 08:47
|

Знающий
   
Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847

|
Приветствую!
После приобретения весной красавца STM32F429 Discovery kit потерял покой. Хожу по кругу по проектам Firmware. Все красиво и замечательно. Калейдоскопический идиотизм связан с обширностью средств на борту. Фрагментарно все вроде понятно, но в целом охватить эту многомерность не получается. поставлен в ситуацию, когда продолжаешь один из примеров, либо опускаешься слишком низко, когда CubeMX берет от меня только минимум, причастный к микро-задачке.
Что характерно, в среде Keil есть встроенное средство привязки к разным КИТ, что дает выбор проектировщику в средствах... CubeMX такого не имеет и в части настройки графики или тайминга SDRAM дает огромное количество вариантов настроек (а человеку свойстивинна ашибацца...). Пробовал раза 3 добиться (по анализу содержимого настроек регистров а отладчике) получить в Cube заготовку, где бы аппаратная часть была бы в рабочих режимах... Увы!...
Может кому удалось? Поделитесь! Легче пойдет... точно! Как-то плохо без памяти и графики... От отчаянья опускаешься от проектов Firmware, а это усложняет и удлиняет проект и отладку (постоянно кажется, что где-то не то выкосил). Лишние телодвижения!
Я думаю это будет многим интересно... Спасибо!
|
|
|
|
|
Oct 8 2015, 11:32
|

Знающий
   
Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847

|
Цитата(SasaVitebsk @ Oct 8 2015, 13:38)  Так вы же говорите примеры есть. Выдерите от туда инициализацию. Собственно смотрел даташит в нём она на пальцах объяснена и графически нарисована. Вы не поняли. Речь о гибком инструментарии CubeMX, который нагляден, но не имеет настроек по умолчанию для разных КИТ, а "руцями" этот процесс при гигантском выборе( использованном в конкретном КИТ на 30%!) приводит к ошибкам. Я понятие инициализация тут привожу в более широком смысле. Cube подключает нужные библиотеки и драйвера автоматически. Там нет необходимости "выдирать". Там понятие - добавлять Я хочу не "выдирать" а добавлять!!! К тому же такой подход упрощает "клонирование" проекта...
|
|
|
|
|
Oct 8 2015, 12:42
|

Знающий
   
Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847

|
Цитата(Tanya @ Oct 8 2015, 14:53)  Можно выбрать там КИТ. Там будут ножки помечены (заняты), но добавлять инициализацию придется самостоятельно... Пока КУБ не научится понимать мысли. Возможно, есть примеры для Вашей периферии... Но не факт. В Кейле есть. В Cube нет... ...Я только и делаю, что самостоятельно добавляю... Интересна БАЗА, от которой плясать!.. Можно выкашивать\добавлять... Моя воля! Кстати Cube тут же показывает несовместимые варианты или предложит иной вариант ресурса. На этапе его распределения тут же задумываешься о вариантах реализации. Будет это DMA, прерывания и какой приоритет примерно вырисовывается, судя по ожидаемой скорости. А смена тактирования? Тут поменять архитектуру или коэффициенты делителей просто без напряга! игрючи!
|
|
|
|
|
Oct 8 2015, 12:53
|
Профессионал
    
Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528

|
Куб только облегчает работу по конфигурированию периферии, но полностью человека не заменяет. В любом случае придётся читать реф.мануал чтобы просто понимать что делаете и зачем.
В случае с настройкой тактирования начинайте с чтения главы 6 и картинки Figure 16. Clock tree Процессор стартует с клоком HSI (16 MHz) и можно (для начала) ничего не трогая продолжать работу на нём, его точности достаточно для работы UART-а. Если же хочется побыстрее, то нужно: 1. Запустить HSE (генератор на кварце), дождаться пока он раскочегарится 2. Подать этот клок на вход PLL, настроить PLL выбрав коэффициенты M, N, P, а если используется FS USB то ещё и коэффициент деления Q. Тут есть определённые ограничения (вроде того, что частота для USB после деления на Q должна получится ровно 48МГц), за ними Куб вроде бы следит, но для понимания надо читать реф.мануал. 3. дождаться когда PLL устаканится и переключить тактирование на клок от PLL.
Код, который это проделает Куб может Вам сгенерить, но, поверьте, пока Вы самостоятельно один раз этого не сделаете - так и будете блуждать в потёмках. В крайнем случае можно ограничиться внимательным разбором сгенерированного кода - что он делает и в какой последовательности. А вот после всего этого, в следующий раз Куб поможет сберечь время.
--------------------
Russia est omnis divisa in partes octo.
|
|
|
|
|
Oct 8 2015, 13:03
|

Частый гость
 
Группа: Свой
Сообщений: 167
Регистрация: 25-12-09
Из: Минск
Пользователь №: 54 460

|
Цитата(Мур @ Oct 8 2015, 15:42)  В Кейле есть. В Cube нет... Есть! См. прикрепленные файлы! версия 4.10
Эскизы прикрепленных изображений
|
|
|
|
|
Oct 8 2015, 13:45
|

Знающий
   
Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847

|
Цитата(SSerge @ Oct 8 2015, 15:53)  Куб только облегчает работу по конфигурированию периферии, но полностью человека не заменяет. В любом случае придётся читать реф.мануал чтобы просто понимать что делаете и зачем.
В случае с настройкой тактирования начинайте с чтения главы 6 и картинки Figure 16. Clock tree Процессор стартует с клоком HSI (16 MHz) и можно (для начала) ничего не трогая продолжать работу на нём, его точности достаточно для работы UART-а. Если же хочется побыстрее, то нужно: 1. Запустить HSE (генератор на кварце), дождаться пока он раскочегарится 2. Подать этот клок на вход PLL, настроить PLL выбрав коэффициенты M, N, P, а если используется FS USB то ещё и коэффициент деления Q. Тут есть определённые ограничения (вроде того, что частота для USB после деления на Q должна получится ровно 48МГц), за ними Куб вроде бы следит, но для понимания надо читать реф.мануал. 3. дождаться когда PLL устаканится и переключить тактирование на клок от PLL.
Код, который это проделает Куб может Вам сгенерить, но, поверьте, пока Вы самостоятельно один раз этого не сделаете - так и будете блуждать в потёмках. В крайнем случае можно ограничиться внимательным разбором сгенерированного кода - что он делает и в какой последовательности. А вот после всего этого, в следующий раз Куб поможет сберечь время. Спасибо. Ну это азы!... Проходили! Я о настройках ТатчСкринЭкрана(LTDC). О тайминге SDRAM(FMC). О графическом ускорителе.... Цитата(Integro @ Oct 8 2015, 16:03)  Есть! См. прикрепленные файлы! версия 4.10 Цитата (((((Вау!... А вот это интересно! Спасибо!... что-то отстал я, сморю! Премного благодарен!  ))))))) Ха!!! Так там не подключено LTDC, FMC, DMA2D.... А там насторек,- море!... Информация не полная!... Вопрос остается открытым! Самый интересный ресурс там не описан! (тот, что запаян на борде!) Народ! никто не довел до конца память и графику для КИТ через CubeMX?
|
|
|
|
|
Oct 8 2015, 17:01
|

Знающий
   
Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847

|
Цитата(SasaVitebsk @ Oct 8 2015, 17:06)  Интересно, а как подключить DMA2D? И каким боком к кубу память? Каким образом куб узнает как вы подключили м/х памяти, какую именно и каого производителя (читай тайминги)? Откуда кубу почерпнуть сию информацию? Если бы не требовались разные настройки, а все микрухи на планете работали с общими, то их вообще заносить бы не требовалось. И куб был бы не нужен. Их бы заносили на этапе проектирования МК. Вы бы почитали что-нибудь общее, для кругозора. Рано вам пока шашкой махать. ???? Речь о STM32F429 Discovery kit. Все по этому дизайну! Шаг влево- шаг вправо - расстрел... А если серьёзно,- прошивки всех демонстрашек STM32F429 Discovery kit одинаковые. Я хочу видеть рабочие настройки! Да хотя бы ради изучения разных графических библиотек и графического акселератора! Все должно быть привязано к STM32F429 Discovery kit!!! Я дагадываюсь, почему STM для Cube не стал обеспечивать полную под КИТ настройку всего. Просто его нет адекватного. У них обновления идуд раз в месяц! Цитата(Golikov A. @ Oct 8 2015, 17:36)  Типичная и очередная жертва куба, а еще вопросы задают и чего это куб ругают, он же такой классный.... Удобство его несомненно. Не только в познавательном аспекте... Те примитивные и древние КИТы от этой фирмы и стоят дешево. Мне же хотелось иметь под рукой все возможности для творчества. Я и за это платил, когда покупал!
|
|
|
|
|
Oct 8 2015, 18:11
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Цитата Удобство его несомненно как и вред! Если вы любитель, который хочет творчества, тогда купите ардуину. А если вы замахнулись на современный и сложный процессор, то делайте как делают те кто с ним работает. Берут и читают документацию. Чтобы включить в работу какой-то модуль, надо совсем немного времени, за день запускаются простые модули, сложные за пару, очень сложные за неделю. Но запускаются как вам надо, а не как получилось.... У куба вижу только одно использование, быстро накидать периферию и поглядеть проходите вы по ножкам или нет. Даже клоки и питание настраивать ему не надо позволять. Загадит проект своими "драйверами" и все.... 2pizza - это тонко
|
|
|
|
|
Oct 8 2015, 18:55
|

Знающий
   
Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847

|
Цитата(Golikov A. @ Oct 8 2015, 21:11)  как и вред! Если вы любитель, который хочет творчества, тогда купите ардуину. А если вы замахнулись на современный и сложный процессор, то делайте как делают те кто с ним работает. Берут и читают документацию. Чтобы включить в работу какой-то модуль, надо совсем немного времени, за день запускаются простые модули, сложные за пару, очень сложные за неделю. Но запускаются как вам надо, а не как получилось.... У куба вижу только одно использование, быстро накидать периферию и поглядеть проходите вы по ножкам или нет. Даже клоки и питание настраивать ему не надо позволять. Загадит проект своими "драйверами" и все.... 2pizza - это тонко  Спасибо за совет!... Я же говорю,- уже раза 3 проходил этот путь. Контроллер графики там мудреный. Режимов всяких напихано на все случаи жизни, ускоритель с DMA, слои изображений и прочая хрень по документации весьма скупо описано. Дело усложняет тендем с SDRAM. Без него полноценной работы не будет. Это завязано в тугой синхронный узел единого графического вывода. Не случайно я уточнял состояния регистров и сверял все с демонстрашками под отладкой. Многое просек и стал понимать. Но этого не достаточно. Облегчить эти страдания можно было бы, имея минимальную базу. Далее можно было поэтапно расширять возможности своего дизайна.. 429 й чип - серьёзная система, ориентированная прежде всего на графику и внешнюю память большой ёмкости. Именно этого и не даёт делать Cube по умолчанию для своего КИТа (Парадоксально- изготовитель тот же!) Цитата(Integro @ Oct 8 2015, 20:35)  Исходники демок лежат здесь c:\Users\2pizza\STM32Cube\Repository\STM32Cube_FW_F4_V1.8.0\Projects\STM32F429I-Discovery\Demonstrations\ там можно посмотреть настройки
понятно что:c:\Users\2pizza -это мой локальный пользователь, меняем пусть на свой, или путь к репозиторию можно посмотреть в меню Help->Updater Settings С этого я и начинал весной...
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|