Перейти к содержанию
    

Pjotar

Участник
  • Постов

    161
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о Pjotar

  • Звание
    Частый гость
    Частый гость
  • День рождения 12.09.1987

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array

Посетители профиля

1 980 просмотров профиля
  1. Все те, которые не нужны для проекта. Слава богу благодаря кубу и современным примерам я их проскипал и даже не знаю их. У того-же АЦП какие-то DMA и тактирование, извините, мне не надо ацп тактировать, я не ДСП делаю а при включении прибора считываю значение подстроечного потенциометра. Всё. Риалтайм и важные вещи вникаю в детали где надо а если брать даташит и читать весь - у меня на это ушло больше десяти лет. в 2010 году сделал поделку на STM32 и бросил, потому-что пересесть с камня на камень для меня тогда были неоправдано долго. Десять лет в моём понимании значит неоправданно долго.
  2. Постоянно эта тема сводится к тому, как лучше учить регистры микроконтроллера. Вопрос надо ли их учить вынесли в оффтоп, а вот то как их учить вроде не оффтоп. Я скажу мне через два дня генератор в кубе надоел. Но для взгляда с ещё одной стороны подспорье. И для старта конечно. Он же не отменяет даташит, примеры в интернете, вот это всё. В итоге функции ножек конкретного чипа быстрее в нём смотреть чем в даташитах, а всё остальное у генератора слишком поверхостно. По вопросу с которого начинал тему - ну я в итоге в том же кубе создал проект без файла куба соотвественно без кодогенерации. Старался проникнуться идеей генерации, понять, не изобретать свой велосипед сразу, ну на два дня меня хватило.
  3. Электроника у меня хобби, профессионально я бугалтерию программирую. Но и в поделках применяю подходы из работы. А подход следующий - для всех прикладных потребностей описываются интерфейсы удобные для реализации бизнеслогики которую делаем, и их реализации - адептеры к имеющимся библиотекам. Например, в моей в поделке медленный текстовый экранчик, ручки регулировки на потенциометрах, замер интервалов между импульсами, выходной шим. Соответсвенно я пишу интерфейсы для редкого считывания АЦП, вывода текста, получения колбэков от таймера, изменения скважности шима. И работая с абстракным прикладным АПИ реализую бизнеслогику прибора, чистую от всяких аппаратных нюансов вроде регистров. А реализция этого АПИ, тоесть адаптеры к допустим HAL и freertos отдельно рядышком. И да, из безнеслогики даже от конкретной РТОС напрямую не завишу. Потенциально это позволяет проще мигрировать и на дуругую железку или сделать кросмикроконтроллерность, но я не планирую, просто так удобнее ваще со всех сторон. Другое дело что в ембеддед мире и на СИ мне тяжело делать красивый стройный проект, получается страшное по сравнению с высокоуровневыми языками, ну это другое P.S. сейчас перечитал и понял что ответ на Ваш вопрос не озвучил, потому-что мне он кажется очевидым и тут вроде у инженеров согласие в подходе - делаем по возможности хорошо, а то что сейчас не надо не делаем. А в хорошо сделаном проекте можно и саму логику легко поменять, и на другие библиотеки его перевести. Я ваще считаю хочешь сделать быстро - делай хорошо, а абыкак дольше налаживать и дебажить будешь. И иногда оцениваю, можно ли потенциально проект "перенести на другую железку", но пока оно не надо и пользы не даёт в имеющихся требованиях - ни малейшего усилия к этому
  4. Имею STM32, шаговый двигатель, драйвер в смысле силовую плату. Хочу сделать, например, поворотный столик. Беглое гугление выдаёт примеры как управлять ШД от переключением ножек и паузами в главном цикле до каких-то самопальных библиотек. Может есть серьёзные библиотеки мне просто не попалось? Или драйвер с прикладным API каждый пишет под задачу сам? Или есть какие-то де-факто стандартные библиотеки, которыми все пользуются? Под прикладным API я имею в виду чтоб были все вообразимые функции: например контроль ускорения, обратная связь с энкодера, подсчёт числа проделанных шагов, управление как скоростью так и заказывать перемещение (типа двинься на 3 оборота вперёд, со скоростью такой-то, макс ускорение 1 оборот/с2)
  5. спасибо, перечитывание помогло понять, что стековерфлоу нельзя поймать за руку, FreeRTOS может только при переключении задач оценить размер стека
  6. Добрый день! Микроконтроллер зависает в середине работы программы, перебором нашёл что увеличение стека задачи решает проблему. Пытаюсь включить хук на стековрефлоу, чтобы в следующий раз, когда стека не хватит, не гадать в чём же дело. Но хук не отрабатывает. Подскажите пожалуйста, куда копать что попробовать? Собственно включил флажок configCHECK_FOR_STACK_OVERFLOW 1, сделал функцию vApplicationStackOverflowHook зажигающую лампочку, проверил что она линкуется, но она не вызывается
  7. И как в ней получить название вызвавшей функции или как-то ещё понять что за ошибка? Типа стектрейса что-то... Если получится решить этот вопрос - останусь пока в рамках, установленных генератором
  8. Ну со стилем и структурой проекта можно потерпеть, а вот функционально что меня выбило сегодня из колеи - это нагенированный код инициализации, который в случае ошибки вызывает функцию HandleErorr() без аргументов. Вызывает из двадцати мест, без указания там кода ошибки. И я такой секундочку, я хочу передать в эту функию код ошибки и как-то там ножкой просигналить. Ну вот необходимость нагенерированный код переписать. Ну я заподозрил, что генератор этот чисто как помошник, шпаргалка, генератор примеров, а потом из генератора ташится всё в проект. Интересно ещё, как собираются проекты в энетрпрайзе? Там же должны быть билдсервера, автотестирование... Проект куба без IDE я так понимаю не очень собирается... там же IDE генерирует makefile вроде? ну вот и мне снача хотелось оставить нагенерированный код как есть, вставить в него просто вызовы своих задач и не трогать больше. только засомневался, работает ли это так, или на практике всё ручками перелопачивать
  9. Добрый день! Хотелось бы узнать, как поступаете с кодом, который генерирует CubeIDE. Работаете в рамках, заданных генератором, сохраняете возможность перегенерировать? Генератор очень удобный для старта проекта, но у меня возникает желание создать чистый проект без зависимости от код-генератора и туда уже ручками всё переносить и допиливать.
  10. Спасибо всем откликнувшимся, сделал перерыв на подумать и вернулся к задаче. Посмотрел как работает ширпотребный регулятор - как мне кажется он косячит со временем закрытия симистора. вот на картинках, он закрывается через миллисекунду после нуля. Если я в своей поделке буду ориентироваться на это как на крайнее качество решения, это норм? Собственно детектирование нуля для мебя было новостью. И пока не нашёл простую и понятную схему. А нельзя как-нибудь халявно оперционник в режиме компаратора устроить и им оптопару включать?
  11. Я хочу подсоединить приемопередатчик, рассчитанный на MIMO(или две антенны) к этой не-MIMO антенне. Прямо говоря, приделать эту антенну к старому вайфай-роутеру и направить на место у дома, где нет связи. может быть тогда стоит попробовать разделить антенну на две? вот на картинке изобразил
  12. Добрый день! Имею антенну на заявленные частоты 1.8гГц и 5гГц (интересует 1.8гГц). Но она с одним разъёмом, а я хочу переделать её в MIMO. Попробовал припаять кабели случайным образом, и получился более-менее мощный сигнал, чуть лучше чем штатные антенны wifi-роутера. Прикрепляю фото, как был припаян кабель и моей попытки. Собственно вопрос: подскажите предложите пожалуйста, как можно попробовать припаяться, я попробую. P.S. извиняюсь за решение задачи методом тыка
  13. вот диммер через который я сейчас всё включаю, но скорость под нагрузкой падает. на двигателях от стиралок датчик холла, хочется его использовать для поддержания заданной скорости Я переехал в село на Кавказе, любой заказ с алика - месяц ) Поэтому подумал может можно. А если это не то же самое - закажу и подожду правильную деталь судя по схематичному изображению оптосимистора я подумал что его можно заменить двумя оптотранзисторами. возможно слишком наивно)
  14. А как тогда? Вот китайский диммеры, через который отлично работает электроинструмент. В нём симистор и пять пассивных компонентов. Регулировка мощности - переменным резистором. Как тогда соединить микроконтроллер и симистор?
  15. Двигатель от стиралки универсальный коллекторный. Со щётками который. Асинхронному нужен был бы частотник
×
×
  • Создать...