Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

stm32f4 cmsis пример альтернативной функции.

Вт май 26, 2020 22:49:39

Как писать или записывать правильно например вывод шим таймера 2 в альтернативной функции?[code][/code]

Re: stm32f4 cmsis пример альтернативной функции.

Вт сен 14, 2021 21:40:16

Можно так GPIOB->AFR[1]|=0x0003;Порт В ,вывод 8 попадает в старший регистр. Регистры представлены как массив с двумя членами, массив начинается с нуля, значит 1 это второй элемент массива, размерность массива 32 альтернативная функция( первого канала таймера TIM10 это вывод В8 порта) с номером 3. вот так это и получилось. GPIOB->AFR[1]|=0x0003;Криво, скажут спецы ,но работает. Это для 10 извиняюсь не глянул шас для 2 гляну....Там РА15 первая функция значит 1 пишем
GPIOA->AFR[1]|=0x10000000;Совсем криво но чётко единицу в последнюю четвёрку загнал. :lol: Это для 1 канала, для других другие.

Re: stm32f4 cmsis пример альтернативной функции.

Вт сен 14, 2021 21:56:32

Это-ж читать документацию нужно, да ещё именно на тот камень с которым работаешь, да ещё и в нужном месте. Кроме этого нужно ещё и понимать написанное, и использовать по назначению.
То-есть шанс попадания примерно равен шансу выигрыша миллиона р. в российскую лотерею (число с отрицательным значением).
У меня для таких как ivan dimir - есть готовая мазь https://github.com/AVI-crak/gpio_one
Выбрать свой мк (чтоб буквы совпадали!!!), и применить по назначению.
gpio_one_pin(zap_gpio.A.pin00.v_af01_tim2_ch1_etr.speed1.lock_of);
Особенность применения функции в том - что допустить ошибку невозможно. Там просто нет вариантов с ошибками.

Re: stm32f4 cmsis пример альтернативной функции.

Ср сен 15, 2021 18:33:08

Мне по душе регистры с единичками и ноликами.Конечно USB я на регистрах не запилю, а что толку если я его через Куб запилю, я всё равно ничего не пойму. Лучше я его через 5 лет на регистрах запилю, но это будет моё.....

Re: stm32f4 cmsis пример альтернативной функции.

Чт сен 16, 2021 10:56:03

shalfey, через 5 лет уже будет новый кристалл, с новым модулем USB, на который вам еще 5 лет потребуется. Увеличение сложности толкает на переход к более высокому уровню абстракции. С этим ничего не поделать, объективный процесс развития, кто не адаптируется - останется на обочине.

Re: stm32f4 cmsis пример альтернативной функции.

Чт сен 16, 2021 14:22:44

Это не к STM там всё примерно совпадает. Регистры таймера 1 я изучал по F1на F4 почти тоже самое. Я образно сказал. Фирма хочет чтобы как ардуино школьники покупали и игрались. Профессионально нет ни одного человека, который не знает регистры. НЕ верю. Ни одна солидная фирма не возьмёт на работу калокубометателя, хотя они уже и через инет продвигают прошивку и "КалоТолики" делают.РЕгистры основа основ, а то что сверху шелуха, оболочка для пионеров.ИМХО

Re: stm32f4 cmsis пример альтернативной функции.

Чт сен 16, 2021 16:43:21

shalfey писал(а):Это не к STM там всё примерно совпадает. Регистры таймера 1 я изучал по F1на F4 почти тоже самое.

Наивный! Я наблюдал у СТМ 3 разновидности UART, 4- АЦП. Сравни, например, UART в F103 и F745. И разница там нифига не "примерно", а очень существенная. А вот, например, у F091 и F745 UARTы одинакове. Я для проектов стараюсь подбирать МК из разных линеек, но с одинаковой периферией.
Ни одна солидная фирма не возьмёт на работу калокубометателя

По моим наблюдениям, примерно, половина работодателей явно требует умения работать с Кубом. Половине пофиг. Сам недавно сменил работу, поэтому говорю о том, с чем столкнулся.

Re: stm32f4 cmsis пример альтернативной функции.

Чт сен 16, 2021 16:54:40

По моим наблюдениям, примерно, половина работодателей явно требует умения работать с Кубом.

Скажи еще, что в солидных фирмах не готовы ждать пока ты 5 лет будешь USB на регистрах запиливать? :)

Re: stm32f4 cmsis пример альтернативной функции.

Чт сен 16, 2021 17:13:45

Если в компании принят корпоративный стандарт, по которому разработка ведётся на ХАЛ+Куб, то неумение пользоваться этими шнягами сразу влечёт отказ. То, что лично я не люблю и не использую ХАЛ не означает, что я не могу работать с ним.

Re: stm32f4 cmsis пример альтернативной функции.

Чт сен 16, 2021 19:33:44

Если в компании принят корпоративный стандарт, по которому разработка ведётся на ХАЛ+Куб,

то эта "пирамида" очень быстро развалится! Потому что доверять разработку аппаратуры идиотам никто не будет! Это ж все равно, что на абдуринах "автоматизацию выполнять".
И да, USB на регистрах неспешно делается буквально за полгода ковыряния по паре часов 1-2 раза в неделю вечером дома… Зато работать будет нормально, а не как калокубовское (один чувак как-то на быдлохабре накромсал статейку, мол, у STM32 хреновый USB; я ему ответил, что это в калокубе хреновый USB, а у STM32 все ОК; тот проверил мою версию и версию еще одного товарища, да убедился, что калокуб - отстойное дерьмище).

Re: stm32f4 cmsis пример альтернативной функции.

Чт сен 16, 2021 21:54:07

По моим наблюдениям, примерно, половина работодателей явно требует умения работать с Кубом.

Скажи еще, что в солидных фирмах не готовы ждать пока ты 5 лет будешь USB на регистрах запиливать? :)
Я образно сказал.Конечно 5 лет не будут ждать. И неделю не будут ждать. Я выше сказал "примерно одинаково". Философия STM одинаковая, а так правильно все линейки разные. Какой же дурак их будет одинаковыми один в один делать.

Re: stm32f4 cmsis пример альтернативной функции.

Пт сен 17, 2021 07:59:49

Eddy_Em писал(а):то эта "пирамида" очень быстро развалится! Потому что доверять разработку аппаратуры идиотам никто не будет!

Если перед тобой положат два одинаковых устройства, работающих абсолютно одинаково, но программа одного из них написана на ХАЛ, а другого на CMSIS, то ты сможешь сформулировать чёткие критерии, по которым, тем не менее, можно различить на чём написано ПО конкретного МК, наблюдая за абсолютно одинаковой работой устройств?
К слову, компании, где вся разработка ведётся на ХАЛ+Куб работают уже по 20-25 лет и ищут сотрудников всвязи с увеличением объёма заказов.

Re: stm32f4 cmsis пример альтернативной функции.

Пт сен 17, 2021 11:00:42

Я смогу это по объему прошивки понять. Ну и о поддержке я уже говорил: калокубщики не смогут вносить изменения в свои поделки, у них все одноразовое. Сориентироваться в тоннах помоев, генерируемых кубом, невозможно!
А если абдуринщики по 20 лет работают, это говорит лишь о том, что клиентура вообще безмозглая!

Re: stm32f4 cmsis пример альтернативной функции.

Пт сен 17, 2021 11:27:44

Eddy_Em писал(а):Я смогу это по объему прошивки понять.

Вопрос был о работе устройств, а не размере прошивки. Повторю вопрос, поскольку ответа так и не получил:
tonyk писал(а):ты сможешь сформулировать чёткие критерии, по которым, тем не менее, можно различить на чём написано ПО конкретного МК, наблюдая за абсолютно одинаковой работой устройств?

Eddy_Em писал(а):калокубщики не смогут вносить изменения в свои поделки, у них все одноразовое. Сориентироваться в тоннах помоев, генерируемых кубом, невозможно!

На чём зиждется сие утверждение?
Я не пользуюсь ХАЛом и не собираюсь, тем не менее, позавчера переделал имеющийся проект своего предшественника на ХАЛе под имевшуюся задачу, поэтому для разговоров об одноразовости и невозможности внесения изменений не вижу оснований. Да, код на ХАЛ громоздкий, но на библиотеку ХАЛ есть вполне вменяемая документация, поэтому разобраться с тем, что мне передали, оказалось не так уж и сложно.
Eddy_Em писал(а):А если абдуринщики по 20 лет работают, это говорит лишь о том, что клиентура вообще безмозглая!

При чём тут клиентура? Заказчик пишет ТЗ, а на чём будут выполнены требования ТЗ, на ХАЛе или CMSIS, ему абсолютно безразлично. Заказчику важно соблюдение сроков, бюджета и соответствие конечного продукта отраслевым стандартам, и, опять же, безразлично, на чём они будут соблюдены, на ХАЛ или CMSIS.

Re: stm32f4 cmsis пример альтернативной функции.

Пт сен 17, 2021 12:16:48

Ну, а то, что кроме документации на МК нужно документацию на кал читать, тебя не смущает?
И ещё раз напомню об оверхеде. Если бы ST хотели создать настоящую переносимую библиотеку абстракций, то написали бы ее на шаблонах в С++, чтобы не было вообще никакого оверхеда. А так - видим очередную рукожопую неюзабельную поделку!
Некоторые здесь пишут на С++, вот у них ST и стоит подучиться, а тупых индусов ссаными тряпками гнать!

Re: stm32f4 cmsis пример альтернативной функции.

Пт сен 17, 2021 12:35:03

Ну, а то, что кроме документации на МК нужно документацию на кал читать, тебя не смущает?

Нет, я ведь не голый с эрегированным членом её на Центральной площади города читаю.
Чтение доков на ХАЛ- это плата за то, что большую часть вспомогательного кода приложения сгенерирует ХАЛ.
И ещё раз напомню об оверхеде

К чему это напоминание? За последние лет 15 я ни разу ни от кого не слышал, что у них проект на грани провала из-за нехватки памяти в МК.
Если бы ST хотели создать настоящую переносимую библиотеку абстракций, то написали бы ее на шаблонах в С++, чтобы не было вообще никакого оверхеда

Шаблоны не нужны, потому что периферия местами сильно различается в работе. Можно проще. Посмотри на состав периферии в линейках. Там 3 разновидности УАРТ, 4 АЦП, 3 DMA и так далее. Причём, часть периферии одинаковая во всех линейках. ИМХО, проще и эффективней было бы написать драйверы по каждый вариант периферии и прикладывать к каждому МК список драйверов.

Re: stm32f4 cmsis пример альтернативной функции.

Пт сен 17, 2021 15:38:27

Ты, похоже, просто не видел элегантности кода на С++. ЕМНИП, VladislavS такое себе разработал. Правда, он ни с кем наработками не делится, но это уж его право.
Во-первых, в случае использования шаблонов, крайне простой становится инициализация периферии. Во-вторых, никаких ассертов в рантайме не нужно: проверка идет на стадии компиляции. В-третьих, генерируется код не хуже, чем на чистом CMSIS регистрами. Плата за это - увеличение времени сборки. Но зато для знающих С++ время разработки намного уменьшается, т.к. меньше можно допустить ошибок, да и код намного более удобно читаемый.

Я, правда, терпеть не могу С++, поэтому продолжаю долбиться с С. Но у меня уже такое количество сниппетов накопилось, что можно новые железки чуть ли не за неделю разрабатывать (вместе с рисованием схемы и трассировкой печатной платы). Разве что изготовление прототипа долгое: пока с JLCPCB платы придут. Но для чего-нибудь уж совсем простого можно прототип и вручную фоторезистом сделать.

Ну, а индусы от ST пошли своим тернистым путем: через задницу к гландам! И ладно бы, только они, но оказалось еще приличное количество придурков, которым нравится этот мазохизм.
Да, напомнить про калокубское USB? Которое свистит, пердит, и еле ползет?

Re: stm32f4 cmsis пример альтернативной функции.

Пт сен 17, 2021 19:50:07

Да, напомнить про калокубское USB? Которое свистит, пердит, и еле ползет?

Напомни, где найти изящный и быстрый USB-CDC для F4 и F7 с документацией и примерами, а то навыкладывали супер-пупер реализаций, которые никто кроме авторов не использует.
ЕМНИП, VladislavS такое себе разработал.

То, что он выложил, у меня не собралось. Компилятор ругается на кольцевые ссылки. Ессно, в отсутствии документации, описывающей как это собирать и использовать, отложил до лучших времён, когда будет время более внимательно изучить и найти решение проблемы.

Re: stm32f4 cmsis пример альтернативной функции.

Пн сен 27, 2021 13:52:38

https://habr.com/ru/post/336968/
Прокачать реализацию USB MSC от STMicroelectronics (Куба) не сложно. Eddy_Em можно принять участие в прокачке Куба а не обзывать всех и вся.

Re: stm32f4 cmsis пример альтернативной функции.

Вт сен 28, 2021 00:13:47

Я с дерьмом не собираюсь связываться!
Калокуб - изначально кривое поделие для лентяев. Пользоваться им - на свой страх и риск.
Ответить