Jump to content
n_angelo

STM. Новичек. Наболело.

Recommended Posts

Привет. Хочу узнать ваше мнение. Я новичок в embedded. Можно сказать, что пришел с веба. Малость Python, JS, C. Меня, конечно, предупреждали начать с AVR, но я уверенный в себе решил сразу залезть на STM32. Вынашивая идею для проекта, параллельно курив Reference Manual и Data Sheet по STM32, я понял что его будет слишком жирно для проекта. Я перескочил на STM8L. И тут меня начал огорчать мир embedded. При переходе между stm8 и stm32 нужно менять IDE (TrueStudio на STVD). Во избежание таких курьёзов я пересаживаюсь на IAR. В процессе подключения родной библиотеки от ST, понимаю что библиотека от IAR для того же самого STM8L152C6T6 дико отличается (макросы, структуры). Привет веб-разработка. Как такое могло произойти, что под один и тот же контроллер ST даёт одну библиотеку, а IAR другую. И нигде в уроках тебя не предупредят об этом. Ну, ребят, у меня всего одна жизнь. Вы уже договоритесь там между собой? Придите к единому стандарту. Или они так решили новичков завендерлочить? Моё мнение (не претендует на правильное): пробираясь сквозь тернии популярной архитектуры ARM, инфраструктуры, инструментария, забываешь про бизнес-логику устройств. А еще просто пропасть между "я ничего не понимаю" и "господи, я зажег светодиод". Речь не о копипастерах с уроков, а действительно понимая что ты делаешь, в каком регистре, что меняешь. Это путь в 2000 (а то и больше) страниц на английском перечитанных по несколько раз, чтобы отоложилось. И в конце тебя ждут разные версии одной и той же библиотки в разных IDE. И сидишь вдупляешь... ну почему... я же в правильный регистр кладу правильную маску... ох, наболело. Такое ощущение что не для людей это всё делали, не для людей.

Ваше мнение?

Share this post


Link to post
Share on other sites
10 часов назад, n_angelo сказал:

Меня, конечно, предупреждали начать с AVR

но ведь предупреждали же

10 часов назад, n_angelo сказал:

Как такое могло произойти, что под один и тот же контроллер ST даёт одну библиотеку, а IAR другую.

это вы еще с микрочипом не сталкивались...  где в одной  IDE могут могут существовать  две абсолютно разные библиотеки в одном компиляторе и проект написанный 2..3 года назад может не собратся потомушта версия компилятора поменялась :)  

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

  • Similar Content

    • By svd
      Предлагаю печатные платы для паяльной станции на STM32 и OLED дисплее 1,3" версии 2.1S
      Плата делалась под китайский алюминиевый корпус.
      Тема, где обсуждается данная станция T12 , опубликована на сайте radiokot.ru
      Фото платы


      Схема немного доработана:
      1) добавлены блокировочные конденсаторы 0,1 мкФ в цепях микроконтроллера;
      2) добавлен резистор в цепи буззера для возможности снижения громкости;
      3) есть возможность подключать жала JBC (для Т12 в разъеме паяльника запаивается перемычка)

      Большинство элементов типоразмера 0603. DC/DC преобразователь PSR-7805LF можно заменить на любой китайский аналог или микросхему 7805
      Ссылки на возможные замены:
      DC/DC аналог 7805 №1
      DC/DC аналог 7805 №2

      Во вложениях схема и расположение элементов на ПП, чертеж передней панели и прошивка под дисплей 1.3" с контроллером SH1106.

      Цена за одну плату 400 руб c учетом стоимости пересылки по РФ. Количество плат ограничено.
      По всем вопросам просьба обращаться в личку.
       
      STM32_T12_2.1S_SSH1106_1.3_v2_.pdf передняя панель.pdf T12_HW21S_Encryption-SH1106.zip
    • By ART_ME
      Здравствуйте.
      По F11 программа исправно доходит до желаемой строки в main.c
      Но если поставить на эту строку брейкпоинт, то при запуске RUN программа до этой точки не доходит.
      Хотя сами брейкпоинты работают, проверено.
      Сие наблюдается в отладчиках и от Keil, и от IAR
      Как следует понимать такое поведение и что с эти делать?
    • By ART_ME
      Здравствуйте.
      Рискну спросить: не завалялась ли у кого в хозяйстве для STM32F103xx: 
      - AC induction motor IFOC software library V1.0
      либо 
      - ACIM and PMSM motor control software libraries release 2.0
      ?
      Просьба поделиться если вдруг такой раритет найдется. 
       
    • By Илья Юрченко
      Добрый день, уважаемые форумчане! Для научной работы хотел собрать данные о том, насколько микроконтроллеры stm32 удовлетворяют нужды и требования программистов и разработчиков продуктов на нем. Если не сложно, ответьте, пожалуйста, важны данные)
      Разумеется "очень средне" неадекватная метрика, но в рамках работы нужна именно средняя удовлетворённость, и определение существует ли необходимость в создании другой серии универсальных плат на базе МК.
    • By n_angelo
      Привет, знатоки. Написал свою первую программу для контроллера STM8L152C6T6 (STM8L-Discovery). Это, собственно, моя первая программа для контроллеров вообще. Я многого не знаю и не понимаю. Возможно ваш ответ на мой вопрос будет банален.
      Используемая периферия: DAC, DMA, TIM4, CLK, GPIO
      Задача у программы такая:
      В EEPROM зашит один период синусоиды с дискретизацией 44100Гц. Период занимает ровно 101 байт, что по сути должно быть равно 2,29мс (1/44100*101). В коде программы только конфигурация периферии, одно прерывание на кнопке и пустой бесконечный цикл, который ничего не делает. Всю работу выполняет таймер, который настроен выдавать запрос к DMA на каждые 1/44100 (ядро тактируется 2мГц, таймер считает до 45). В свою очередь DMA забирает из EEPROM по одному байту на каждый запрос от таймера и передаёт его в DAC. Далее DAC выводит бесконечную синусоиду на ногу PF0. Прерывание на кнопке запускает весь этот механизм и зажигает светодиод.
      Проблема:
      Измеряя ногу PF0 осциллографом было замечено, что период синусоиды занимает около ≈4мс. Фото под катом.
      Меня это расстроило. Экспериментально выяснилось, что стоит только вписать в бесконечный цикл какую-нибудь проверку, например, [если значение текущего байта синусоиды = 0xFF, то зажечь светодиод, если 0x00, то потушить], то осциллограф показывает правильный тайминг в 2(с копейками)мс. В принципе в теле цикла может быть что угодно, кроме пустоты, и тайминг налаживается.
      Я не могу отдебажить дизассемблер, т.к. его не знаю. Это у меня в планах. Но я очень хочу понять, что происходит и почему пустой цикл рушит тайминг.
      Спасибо.
       
       
       
       
  • Сообщения

    • ASUS даёт 600 мВ RMS, это я проверил сейчас, но это всё равно меньше чем у ПК 2В RMS. Если есть OTG в телефоне, подключить можно. Если нету OTG то нельзя, Android умеет работать с USB звуком.
    • кто же ведает, что у тебя не трубки, а U-ки лампы со встроенным конденсатором и прерывателем
    • Хотя бы визуально сгоревший диод А не стандартно ламеро-клиентская фраза как выглядит?  Можно ваш диагноз как мастера ?   Отнес в ремонт!
    • Таки я вам про то уже пояснил, токма вы не къехали. Тогда повторю иначе- железом не вышел этот зенфон, вот и всё. А что вы хотели от бюджетной модели, манны небесной мощностью в 100мВт? Значит звуковуха не настроена, там внутренних настроек тьма. У любой встроенной звуковухи выход до 2В амплитудного значения. Этого с лихвой хватает любой подключаемой аппаратуре. У смартов максимум 100мВ, поэтому при подключении к усилку они звучат тише. У данного зенфона всего 50мВ. Вообще при подключении смартов к ум'у нужен буферный каскад с Ку не менее 2-3. Или изменить номиналы бк усилка т.к по стандарту чуйка большинства усилков от 250мВ. Токма в некоторых винтажных усилках она от 100-150мВ. Вот с такого входа смарт звучит громко. Посмотрите данные вашего усилка по чувствительности входов и убедитесь. Если и подключать внешнюю звуковуху к смарту, то только по цифре т.е напрямую с выхода цапа. У бюджетников такой опции нет.В таких телах цап, как обычно, встроен в процессор вместе с дсп. Проще говоря весь звук сидит в одной микрухе и снять цифровой сигнал для внешней карты невозможно. По отг сигнал идёт уже обработанный и снимается перед умзч. А для карты нужен прямо с проца в обход встроенной. По аналогии снятия сигнала прямо с головки виниловой вертушки а не предуся. Это ж не стационарный комп а миниатюрный, сделанный по технологии "всё в одном"... Вот давеча отдали на запчасти hct-c115mb-b1. Плата с ладонь а вся начинка площадью в пол спичечного коробка, остальное навесуха- дисплей, динамики, микрофон, камеры, слоты sim/sd/micro usb и большое пустое место под акб. Вот и весь "мини комп"... 
    • Нельзя на такое говно давать ссылку. Этот школьник неправильно организовал магнитное поле в зазоре.
    • Поменял конденсатор,ничего не изменилось.Тот старый еще раз проверил-он нормальный. Фото под нагрузкой и без,там буквально несколько вольт плавает-я их не в счет.под нагрузкойбез нагрузки. В сети сейчас 205-207в поэтому и занижены показания.На хх бывает подпрыгнет до 272в. У МЕНЯ НЕТ В СХЕМЕ СТАБИЛИТРОНОВ(кроме как по питанию микрухи) И ЦЕПИ СТАБИЛИЗАЦИИ.У МЕНЯ РАННЯЯ ВЕРСИЯ.
  • Покупай!

×
×
  • Create New...