Основы программирования микроконтроллеров. Лекция в МИРЭА

Ғылым және технология

Олег Артамонов - генеральный директор компании Unwired Devices («Беспроводные устройства»).
Уровень: продвинутый (для понимания необходимо знание языка программирования С)
Темы лекции:
1) Чем отличаются микрокомпьютер, микроконтроллер и микропроцессор и в каких случаях их уместно использовать
2) История и нынешнее состояние 8-, 16- и 32-битных микроконтроллеров
3) Основы программирования для семейства STM32
4) Многозадачность в системах реального времени на примере RIOT OS
Лекция состоялась 9 декабря 2017 года в МИРЭА, для слушателей учебного курса IoT Академия Samsung. За лекцией следовал мастер-класс, на котором студентам самим предстояло выполнить сложные задания на микроконтроллерах STM32 ARM Cortex M-3.

Пікірлер: 303

  • @merzott
    @merzott4 жыл бұрын

    лекция отличная! но скоро чтобы помигать светодиодом нужно будет развернуть ОС, установить питон, подключить интернет, отправить обработку нейронки на суперкомпьютер, заплатить криптой и посмотреть рекламу.

  • @user-gp4do2jg1e

    @user-gp4do2jg1e

    2 жыл бұрын

    Вот мне как человеку далекому от программирования интересно с чего вдруг такой вывод? Насколько я знаю, запрограммировать контроллер можно и с помощью обычного блокнота, да придется поработать самому написать программаторы, спаять шнурки. Но я не думаю что супер компуктер захочет копаться в каждом отдельно неподключенным деревянным компом

  • @johnrom8787

    @johnrom8787

    2 жыл бұрын

    Прерывание по таймеру { PORTA ^=~ 0x01; } ;

  • @justdoitjustdoit5752

    @justdoitjustdoit5752

    Жыл бұрын

    З

  • @justdoitjustdoit5752

    @justdoitjustdoit5752

    Жыл бұрын

    З

  • @user-nc1zf7fi4e

    @user-nc1zf7fi4e

    Жыл бұрын

    @@user-gp4do2jg1e Насколько я знаю, запрограммировать контроллер с помощью обычного блокнота НЕЛЬЗЯ. Хотя... могу ошибаться... 🙂

  • @user-mk9sq5tp1x
    @user-mk9sq5tp1x5 жыл бұрын

    Несколько лет работал на 8 битных AVR и PIC, когда сел за STM32, то сразу же начал писать на CMSIS. И ничего сложного в этом не увидел и всем советую. Понятно же, что чем ниже уровень абстракции, тем гибче управление, настройка и больше возможностей для оптимизации, за счет того, что программист ПОНИМАЕТ, что происходит в микроконтроллере. Так же работал с ОС FreeRTOS и сделал вывод для себя, ОС я использую для быстрого написание какой-либо не замысловатой программы, для серьезных же проектов, где требуется ТОЧНОСТЬ, только CMSIS, только прямое обращение к регистрам с полным пониманием происходящего внутри. Первая часть выступления прекрасна, спасибо автору.

  • @TheSteamate

    @TheSteamate

    5 жыл бұрын

    Как изучить его, если нет опыта?

  • @wlasov

    @wlasov

    5 жыл бұрын

    Молодец, возьми с полки пирожок. Я тоже когда управляю машиной, двигаю пальцами поршни и колесо поворачиваю рукой 👍😊

  • @denisyegorov5109

    @denisyegorov5109

    5 жыл бұрын

    А как вот начать с CMSIS? Есть где то уроки готовые, так сказать для совсем тупых.

  • @oleg_fedyushkin

    @oleg_fedyushkin

    5 жыл бұрын

    Я так понимаю, что вы довольно давно занимаетесь микроконтролерами.Не подскажите,по своему ощущению, как дела в этой области и какие перспективы?

  • @wlasov

    @wlasov

    5 жыл бұрын

    на ассемблере надо сразу писать под арм, с++ для лохов и школьников!

  • @vlsext
    @vlsext3 жыл бұрын

    я новичёк, с 4-5 месяцами по-вечерам ардуины и возможно, моё мнение не особо что-то отражает. Однако, что я ожидал - это увидеть чуть более продвинутое использование, параллельное использование разных ресурсов и спящий режим. Что я увидел: та же фигня, что и в ардуино. Т.е. микроконтроллер - дофига умеет, но всё сводится к (не)доверию к высокоуровневым функциям/библиотекам. На ардуино столкнулся с блокирующими функциями SPI/I2C. Причём а) сразу из доков не понятно было, что они блокирующие, б) в подавляющем случае всех самопальных и официальных библиотек - так. А МК, оказывается, умеет передавать параллельно. И нашёл я это только в глубине официальных примеров. Как проблема параллельности и реального времени решается на ардуино - на таймерах, на прерываниях и написанием неких switch-case кусков или зачатков операционки без плюшек. Почему? Потому что мало места, мало памяти. Запустить RTOS на ардуино можно, но только ради самой RTOS, ей там ну очень тесно. По STM32 с RTOS пока смотрю и вижу, что в общих чертах - это как: был у тебя ардуино с самопальными switch-case кусками, а теперь - STM32 с RTOS с блэкджеками-шлюхами(зачёркнуто) с потоками, сообщениями, буферами, стеками, которая работает как тот самый ардуино на switch-case кусках, потому что жрёт достаточно много как памяти, так и времени. Т.е., блокирующая функция отправки куска данных через медленный интерфейс (кстати, я увидел в видео коммент, что она блокирующая) - решается потоками с выделением стеков с запасом на вдруг-прерывания-разного-приоритета-вложенности-должно-хватить-на-все. Вместо переписывания той функции по хорошему. Упрощение пользователю-программисту? Три строчки кода? Да ладно! Это точно то, что нужно в микроконтроллерах, а не в десктопах и прочих серверах? Если это мед-оборудование или иное критическое, то пользователь должен будет влезть в потроха той RTOS, тех библиотек и прошманать каждую на предмет, что там творится. Для домашнего самодельного 3d принтера - сойдёт, конечно. Подумаешь, иногда, соплю в начале повесит, которую можно потом напильником спилить и фиг выловишь, почему, но если поставить паузу в 5с после инициализации, то вроде бы пропадает. "Почему 5? Ну, эмпирически. При 4х изредка ещё бывает сопля. Почему не 10? Ну, ждать 10 не хочется." ))) Быстрая разработка? Да ладно! Пять раз по 2 минуты ждать, когда сборка закончится ошибкой и покажет в чём эта дурацкая опечатка/отсутствие include? Это точно надо показывать новичкам? Может, лучше показать, как IDE все такие мелкие ошибки сразу подчёркивает и их исправление идёт мимоходом само-собой? ...я тут подумал, может просто вырос из моргать ледом или опрашивать датчик раз в 100 миллисекунд... Или использовать МК с тонной интерфейсов ради одного-двух и бездействия остальных. С одной стороны - глаза разбегаются и текут слюни, когда видишь его аппаратные возможности, с другой - смотришь, как всё в RTOS в 10-20 раз будет тормозить, пока потоки переключаются, и как-то странно становится - для использования RTOS нужно рассчитывать, что у тебя не будет заявленных 200МГц, дели на 20. И памяти в 192Кб не будет, нужно всё тоже поделить на стеки для потоков. И флеша будет тоже прилично меньше, но там походу график забитости по мере подключения модулей нелинейный и зависит от нужности модуля (частоты использования) vs написания "самопальной фигни для дёрганья один раз вот этого интерфейса в самом начале с константами". Может я не прав. Читал теорию про RTOS и STM32, пытаясь определиться, плата F4R Discovery куплена, лежит пока. Но ощущения такие.

  • @user-yx9vb5pp5o

    @user-yx9vb5pp5o

    Ай бұрын

    А можете рассказать как вы вообще начинали?У меня ардуинка год лежит ,решил взять за неё,но хочу не просто что-то делать на ней ,а структурировано подойти к изучению микроэлектроники (начиная от её проектирования ,устройства ,и прочего ).Что можете посоветовать ?С чего начать ,какие книжки можно почитать?

  • @fedjron

    @fedjron

    8 күн бұрын

    @@user-yx9vb5pp5o Я тоже тыкался в разные двери и пришёл к выводу что надо с нуля. сначала изучи дискретные м.схемы это счётчики шифраторы, регистры, триггеры итд. при условии знания полупроводников. После Ассемблер для контролеров ну а дальше можно выходить на высокий уровень С++, Ардуино, итд. В своё время мне помогла книга понять суть механизма работы контролеров это "Корабельников Е.А. Самоучитель по программированию".

  • @igordzhenkov5860
    @igordzhenkov58605 жыл бұрын

    Красава мужик. Очень понятно для новичков.

  • @John.Doe.2025

    @John.Doe.2025

    4 жыл бұрын

    Однозначно! Даже гуру, который писал библиотеку под эту ось, не смог записать пять строк кода HELLO WORLD, которые компилить пришлось с 15 минут. Афуеть не встать. Где же те времена когда компиляция заканчивалась ещё до того как успеешь Ф9 отжать.

  • @user-soboleva
    @user-soboleva6 жыл бұрын

    Спасибо , отличная лекция!

  • @Lersu73
    @Lersu734 жыл бұрын

    Спасибо. Ждал такой материал. Подача человеческая и профессиональная.

  • @user-rq6rx5cp7i
    @user-rq6rx5cp7i2 жыл бұрын

    Отличный материал с отличной подачей. Жаль, что наткнулся на видео только сейчас :)

  • @patriotRND
    @patriotRND4 жыл бұрын

    Всё очень просто, когда профи компилирует с 10 раза хело ворлд! Отличная реклама!

  • @user-tz8cu7pe9d

    @user-tz8cu7pe9d

    4 жыл бұрын

    Тоже поржал с такого подхода)))

  • @alexboiko8822

    @alexboiko8822

    4 жыл бұрын

    Он мог подготовиться и сделать с первого раза, но вместо этого наглядно показал новичкам как компилятор подсказывает что не так. И вы, возможно, ещё не знаете что такое сложно. А если кого отпугнёт, то ему же лучше, что раньше. Лично для меня докладчик подал материал очень эффективно.

  • @alexgorohov

    @alexgorohov

    3 жыл бұрын

    @@alexboiko8822 явно не знают, что такое сложно

  • @deniskhakimov

    @deniskhakimov

    11 ай бұрын

    Поначалу казалось, что так и было задумано, т.е. цель была в том, чтобы продемонстрировать аудитории лёгкость, с которой решаются типовые ошибки в процессе разработки. Однако после склейки понял, что он, как это принято у нас в РФ, тупо забил на подготовку и понадеялся на авось. В итоге лектор потратил 18 минут (если верить часам на его рабочем столе) на решение проблем даже в столь примитивной задаче, используя при этом язык высокого уровня! 😮

  • @user-xy4sv9cl6v

    @user-xy4sv9cl6v

    7 ай бұрын

    Вы не заметили, что конец лекции уже в другой аудитории. Т.е. лектор так и не смог скомпилировать "простенькую" задачку и доделывал работу на дому. И это при том, что он сам писал эти таймеры...

  • @valerya4532
    @valerya45324 жыл бұрын

    Спасибо за работу, как будто побывал на курсах повышения :))

  • @user-pc9br8yt6j
    @user-pc9br8yt6j4 жыл бұрын

    ПРИЯТНО было бы с вами поработать, IF you in Москва. Считаю хорошим началом. Но для изучения надо спустится c RTOS, HAL,SPL мимо вообще, запоминаем что есть CMSIS, и в какой нибудь среде( uvision, cubeide, eclipse) вставляем ASM(*.S) и изучаем все регистры ARMv7(8) + peripherals(stm,ti...). Компилируем, смотрим debug: Disasm, common reg, FPU; как компилируется код . Дальше поднимаемся выше CMSIS+C. Уже потом HAL и если нужно RTOS.

  • @kukkuyokka65
    @kukkuyokka655 жыл бұрын

    Отличная, мегаёмкая вводная лекция - без обескураживающих провалов и переходов от дубины к ракетам. Зашла замечательно (но это, конечно, индивидуально и ложится на контекст слушателя - совсем новичкам в этой теме будет не предельно комфортно). Очень болел в конце за Олега в его борьбе со светодиодом) но это пустяки по сравнению с тем, как и сколько он подал материала за предыдущий час. Это, конечно, базис, но так последовательно, логично (и хронологично) вряд ли где можно такой материал встретить.

  • @Perega

    @Perega

    11 ай бұрын

    Полностью поддерживаю, как новичок в теме программирования голых микроконтроллеров. Особенно некомфортно было конечно на моменте конечной компиляции кода. Хоть я и понимал для чего на самом деле нужны все те лишнии обороты в коде, но от размера программы мягко говоря прифегел.

  • @user-vp6gp7ef5k
    @user-vp6gp7ef5k4 жыл бұрын

    Это лекция не для студентов 2-3 курсов, а для профи и для продвинутых гиков-самоучек. Для студентов: - 1. Что нужно для запуска МК (питание, тактирование, цепь сброса, как залить прошивку). - 2. Что нужно для работы МК (понятие регистра, работа с регистрами и памятью). - 3. Зачем писать и читать по определенным адресам (работа с периферией и выводами МК). - 4. Как использовать таймеры, что такое DMA, использование прерываний. - 5. Стандартные интерфейсы (UART, SPI, I2C). - 6. Стандартные промышленные интерфейсы (RS-485, RS-422). - 7. Понятие протокола обмена. - 8. Границы возможностей МК, области применения, сравнение с ПЛИС, области применения ПЛИС. - 9. Концепции программирования МК. (главный цикл, конечные автоматы, менеджер задач, кодогенераторы и пр.). - 10. Ethernet и МК (UDP, TCP/IP). - 11. Что можно подключить через МК (обзор датчиков и модулей). - 12. ЦОС и МК (АЦП, фильтры, фурье, обзор сигнальных процессоров). - 13. Надежность (резервирование, запас при выборе элементов, ВСК - встроенная система контроля системы, WDT - сторожевой таймер, контроль допустимых состояний в ПО, плюсы и минусы использования тактового генератора вместо резонатора) - 14. Поддержка. (как обновить ПО на удаленных объектах) - 15. ЭМС. Вопрос очень неожиданный для тех кто не был в курсе.

  • @saidolimkhongafurov6150

    @saidolimkhongafurov6150

    4 жыл бұрын

    😭😭😭😭😭😭😭

  • @Blendershick

    @Blendershick

    3 жыл бұрын

    Спасибо, не могли бы посоветовать литературу пожалуйста.

  • @user-fv5rk1fc9o

    @user-fv5rk1fc9o

    Жыл бұрын

    Абадеть...

  • @user-yt2qy6th2j
    @user-yt2qy6th2j5 жыл бұрын

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

  • @Ma_X64

    @Ma_X64

    3 жыл бұрын

    найди мужика в кепке на ютубе. Канал еще как-то по-дурацки называется типа narod32 или narod.ru. У него самый плотный контент по примерам на разных контроллерах и, к тому же, он разбирает всякие ошибки линковщика и компилятора, возникающие тупо из-за неправильных настроек среды или проблем с путями, чего многие другие "обучальщики" не делают.

  • @user-gx7yd6jd9g

    @user-gx7yd6jd9g

    2 жыл бұрын

    @@Ma_X64 Называется narodstream, а "мужик в кепке" это Владимир. Он просто монстр, мегалодон в программировании и слово мужик к нему не особо подходит. Скорее так можно назвать нынешнего лектора. Вылез на трибуну с понтом и тут же в трёх соснах запутался.

  • @101picofarad
    @101picofarad5 жыл бұрын

    А оно на esp32 работает? Можно где-то подъем сервера вайфай через riot на эспрессиве посмотреть?

  • @EvgeniyYatsenko
    @EvgeniyYatsenko4 жыл бұрын

    отличная лекция!

  • @ArtemKAD1
    @ArtemKAD12 жыл бұрын

    Лектор с АВР-ами знаком был явно только в начале нулевых. С тех пор их тактирование и настраивается и можно перенастроить на ходу и можно частично переключить источники. По-моему мой самописный диспетчер задач реализованный через управляемый суперцикл гораздо проще использовать чем эту ОС и места он занимает в 20+ раз меньше. Конечно там нет заранее заготовленного 1мс таймера и процедуру взводящую его флаг(обычно в прерывании) надо написать, но исходя из того, что 1мс для некоторых задач это слишком короткое время и лучше-бы камень вместо тупых отсчетов спал, это скорее плюс чем минус. Тем более там кода на 10 строк. В общем, прослушав лекцию общий вывод - вместо изучения точно работающего CMSIS предлагается изучить еще и(CMSIS все равно придется изучить) как-то работающую ОС.

  • @user-gm7er9yr8i
    @user-gm7er9yr8i2 жыл бұрын

    Подскажите при прошивке контроллера другим программатором фьюзы нужно менять или нет. Спасибо

  • @dudanov
    @dudanov4 жыл бұрын

    1:38:40 "...пишет высокоуровневый код, алгоритм мигания светодиода..." ))))) верно, но улыбнуло)))

  • @stigfromsouth
    @stigfromsouth5 жыл бұрын

    спасибо за лекцию !!!

  • @TheNamelessOne12357
    @TheNamelessOne123575 жыл бұрын

    Осилил. Я, конечно, всё это знаю, и делал коммерческие устройства на STM32 с stdperiph, но, для начинающих лекция больше похожа на "Рисуем два кружочка - Рисуем остальную сову". Даже создание проекта с нуля толком не рассмотрено. Да и, наверное, лучше с FreeRTOS разбираться, чем с каким-то непопулярной ОС.

  • @user-ld2xi8sn6l

    @user-ld2xi8sn6l

    4 жыл бұрын

    Привет а че ты имел ввиду под словом "коммерческие устройства"

  • @user-oi5st1iy1m

    @user-oi5st1iy1m

    4 жыл бұрын

    Єто лекция перед студентами если из потока в 100чел, там поняли хотябы 5 заинтересовались 1-2, то лекция достигла успеха. А учебное видео этот фильм не обещал.

  • @Ma_X64

    @Ma_X64

    3 жыл бұрын

    freeRTOS всё-таки, на мой взгляд, тяжеловата. Если только под крупные камни её ставить. А так есть с одной стороны варианты покомпакнтнее (TNeo RTOS), а с другой -- псевдоРТОС-подход, когда делается кооперативная многозадачность через, например, глобальный таймер.

  • @user-nc1zf7fi4e

    @user-nc1zf7fi4e

    Жыл бұрын

    @@user-ld2xi8sn6l "коммерческие устройства" - когда бабла отслюнявили. Так понятно? 🙂

  • @_kipovets_85
    @_kipovets_852 жыл бұрын

    Спасибо большое!

  • @nskvasov
    @nskvasov5 жыл бұрын

    А ничего, что на USB-флешке, которую "Texas Instruments подарила" (кстати, почему не "ти", а так уважительно, в отличие от STMicroelectronics? или последняя ничего не дарила просто?) тоже стоит периферийный USB-микроконтроллер?

  • @user-ub7qu9pl9g
    @user-ub7qu9pl9g6 жыл бұрын

    Хороший доклад. Жаль , что не отметили , что переход от PIC18 (8 бит) к PIC32 (32 бит) делается очень легко. Код написанный для 8 бит микроконтроллера переносится на 32 бит микроконтроллер с минимальными усилиями. А если выбираем в настройках конфигурации , например таймера, совместимость с 8 бит МК - то вообще код с минимальными изменениями.

  • @user-ei2kp7zm9o

    @user-ei2kp7zm9o

    5 жыл бұрын

    Сергей Якорев эт гораздо легче чем этот мегагеморойный геморой гемороище??? Или чуть чуть легче???

  • @volodymyr.melnyk
    @volodymyr.melnyk3 жыл бұрын

    на одном дыхании, спасибо!

  • @user-jv3fs6ki9e
    @user-jv3fs6ki9e4 жыл бұрын

    Про MSP430 не согласен. Активно используются в почти современной медицинской технике, Нейрософт возьмите например.

  • @jo1s838
    @jo1s838 Жыл бұрын

    Спасибо за лекцию, у меня в голове вертится очень, наверно, тупой, но до конца не понятный для меня вопрос. В контроллере с завода всегда идёт какая-то прошивка (микрокод, который заливает производитель) или не обязательно и это может быть просто железка с транзисторами и т д и кода там (с завода) никакого не будет?

  • @volodymyrkorsovetskyi922
    @volodymyrkorsovetskyi9225 жыл бұрын

    У меня раз код не влазил в Пик . Пошерстил , переработал , отказался от стандартных библиотек (даже * и / свои написал) и после этого смог всунуть еще 3 функции и 4 байта свободные остались )))

  • @fj8017

    @fj8017

    5 жыл бұрын

    * и / -это ведь указатели и деление? Как Вы создали собственные указатели и деление? Вы использовали ассемблерные вставки?

  • @volodymyrkorsovetskyi922

    @volodymyrkorsovetskyi922

    5 жыл бұрын

    @@fj8017 Умнеженние и деленние . Без ассамблера . Просто сделал отдельные функции , получилось вместо a*b UMNOGENIE(a,b) , a/b DELENIE(a,b). Написание стало грамоское , но зато место сильно экономится .

  • @galaktozawr

    @galaktozawr

    3 жыл бұрын

    @@volodymyrkorsovetskyi922 Подробнее?

  • @xsht2940
    @xsht29403 жыл бұрын

    А мне казалось, что основное отличие микроконтроллеров от микропроцессоров в архитектуре. В микроконтроллерах - Гарвардская (включая ARM SMT32), а в микропроцессорах - фон Неймановская

  • @Ma_X64

    @Ma_X64

    3 жыл бұрын

    На самом деле -- нет. Ничто не мешает использовать для проца гарвардскую, а для мцу -- фон-неймановскую. Основное отличие -- как раз в наличии периферийных блоков на борту. Вспомните, что на материнской плате взаимодействие процессора с внешним миром обеспечивает чипсет. У процессора даже системы тактирования и сброса своей нет -- ставится внешняя микросхема.

  • @ArtemKAD1

    @ArtemKAD1

    2 жыл бұрын

    Не, это не существенно. Разница в том, что у контроллера периферия находится на камне, а у процессора она находиться на плате или даже в слотах. По сути то что называется микропроцессором в микроконтроллере уже есть внутри и называется ядром.

  • @JohnJTraston

    @JohnJTraston

    4 ай бұрын

    Нет. Это вообще ни при чем. Процессоры есть и такие и другие. Основрое что микроконтроллер это как "полноценный компьютер", только в миниатюре.

  • @HaterCheaters
    @HaterCheaters9 ай бұрын

    8:30 залезь может. можно CheatEngine найти нужное значение в оперативной памяти и поменять на нужное. например 16141 поменять на 15414

  • @GexPlayerMD
    @GexPlayerMD3 жыл бұрын

    4:08 Ну это видимо те, кто не застал например zx-spectrum, с 48К оперативки и 16К ПЗУ, и то, часть оперативы уходит на видеопамять. А так то 1 КиБ это целых 1024 байта!

  • @biluser

    @biluser

    3 жыл бұрын

    Я собирал микро 80 дисплейную часть для своих задач это было 1984год Как-то включал работает рф2живая!!!

  • @user-fv5rk1fc9o

    @user-fv5rk1fc9o

    Жыл бұрын

    @@biluser у меня тоже остались пару ленинградок синклеров, но лет 30 не проверял.))) Так там 2 ПЗУ они что по 8К всего? Забыл уже все.))

  • @kerselkerosin
    @kerselkerosin5 жыл бұрын

    Все так хорошо начиналось, а потом оказалось, что просто помигать светодиодом на микроконтроллере с ОС в разы сложнее чем даже на ПЛИС. В чем радость - непонятно.

  • @samsunginnovationcampusrussia

    @samsunginnovationcampusrussia

    5 жыл бұрын

    Илья, посмотрите вот это видео - здесь за 10 минут переходят от абсолютного нуля до мигания светодиодом. STM32 + RIOT OS. kzread.info/dash/bejne/lImTlM2AoaTRddo.html

  • @kerselkerosin

    @kerselkerosin

    5 жыл бұрын

    спасибо, гляну.

  • @user-uc6sy6wi2j

    @user-uc6sy6wi2j

    2 жыл бұрын

    Кстати на плис мигать светодиодом гораздо проще, чем даже на восьмибитке. Только вот плис не для этого, плис для математики. И если в последней не шельме-бельме , то за плис можно и не браться.

  • @sixaxisization

    @sixaxisization

    2 жыл бұрын

    Ну на 6ой раз собирется.... А.... мыж не подключили.....

  • @abdulqadirahmedli610
    @abdulqadirahmedli610 Жыл бұрын

    Как запрограммировать st72f324.

  • @lobanovds
    @lobanovds6 жыл бұрын

    Отличный доклад, замотивировал взяться за тестовую платку

  • @samsunginnovationcampusrussia

    @samsunginnovationcampusrussia

    6 жыл бұрын

    Дмитрий, спасибо за отзыв! У нас на канале ещё целый мини-курс лекций Олега Артамонова по основам современного программирования микроконтроллеров. Посмотрите тоже, там более подробно и доходчиво.

  • @marsm6619

    @marsm6619

    5 жыл бұрын

    Заказал платку с ARM

  • @engineer39notebook
    @engineer39notebook4 жыл бұрын

    спасибо, доходчиво

  • @cyberzx
    @cyberzx4 жыл бұрын

    make clean не обязательно выполнять на каждой сборке

  • @andreygrachev4532
    @andreygrachev4532 Жыл бұрын

    Очень интересно! В той части, что сейчас актуально, а что уже давно не актуально или стремится к этому. Прошло уже пять лет. Хотелось бы узнать: "А что изменилось?".

  • @JohnJTraston

    @JohnJTraston

    4 ай бұрын

    STM32

  • @JohnJTraston

    @JohnJTraston

    4 ай бұрын

    и ESP32

  • @user-ud6sw5cp4w
    @user-ud6sw5cp4w2 жыл бұрын

    Про форматирование дискеты не совсем понял, но вспомнил, что при форматировании ОС повисала наглухо) многозадачность.

  • @user-qh9vj6lt5c
    @user-qh9vj6lt5c4 жыл бұрын

    Олег! У Вас получилась неплохая лекция. Но! Вам нужно устранить ряд неправомерных заявлений ! Причём... ТЕХНИЧЕСКОЙ НАПРАВЛЕННОСТИ! Существенные неточности.

  • @Integral2128
    @Integral21284 жыл бұрын

    повезло до девальвации валют в 2013г купил 1000шт Атмег16А в ткфп44 корпусе по дешовке, до сих пор на продажу устройства на них клепаю, а так да, сейчас на мегах делать на мелкий опт устроства дорого...

  • @galaktozawr

    @galaktozawr

    3 жыл бұрын

    А что клепаете если не секрет?

  • @FelixSamulevich
    @FelixSamulevich9 ай бұрын

    там сказочки в комплекте с контролером случайно не было? )

  • @handlewithoutsuitcase
    @handlewithoutsuitcase Жыл бұрын

    А куда делись esp32?

  • @user-lt1dx6eb7n
    @user-lt1dx6eb7n10 ай бұрын

    С этой операционной системой получается что отправлять показания счётчика может компьютер который 30 лет назад занимался инженерный графикой.

  • @vintbolt2118
    @vintbolt21183 жыл бұрын

    Attiny13 - лучший микроконтроллер! Нахрена STM32, если нужно помигать светодиодом? Я, например, сделал на Attiny13 электронное зажигание с ФУОЗ. Очень полезная вещь.

  • @deniskhakimov

    @deniskhakimov

    11 ай бұрын

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

  • @andreyterekhov8530
    @andreyterekhov8530 Жыл бұрын

    Супер!

  • @hyppopotamm
    @hyppopotamm6 ай бұрын

    Спасибо за лекцию! Как будто в советское детство вернулся :) Когда читал книги по RT-11 и мечтал о роботах :)

  • @user-zz3jz8fz5k
    @user-zz3jz8fz5k2 жыл бұрын

    Крутая лекция! Всё конкретно и понятно!👍👍👍👍

  • @user-pw7mw5bp9f
    @user-pw7mw5bp9f3 жыл бұрын

    "Извините за технические неполадки". Обнадеживающее начало лекции.

  • @bad-coder

    @bad-coder

    3 жыл бұрын

    И заметьте, потом приходит барышня и все чинит умному специалисту

  • @andrejgorlin8284
    @andrejgorlin82845 жыл бұрын

    Если вы будете заниматься АСУТП вы столкнетесь с программируемыми контроллерами. А вот медицинские применения, вот там Cortex-R должен быть крайне востребован.

  • @user-zy9fk7ew7y
    @user-zy9fk7ew7y4 жыл бұрын

    Благодарю, очень интересно

  • @ardoss6166
    @ardoss61663 жыл бұрын

    35:14 втф?

  • @SWS-LINK
    @SWS-LINK4 жыл бұрын

    интересно, но очучние , что продвигают определённый тип МК. За долю малую, спонсорскую. Тех. характеристики у них очень сильно отличаются, а уж говорить , что stm 32, это отстой, ну прям не комильфо вообще ---))

  • @andrewandrosow4797
    @andrewandrosow47973 жыл бұрын

    Добрый день! SOLID в лекции упоминается? Без этого жизнь разработчика ПО станет невыносимой....

  • @user-xy4sv9cl6v
    @user-xy4sv9cl6v7 ай бұрын

    Шикарная лекция о том, как освоить программирование ОС, но ни слова о том, как написать серьезную программу и при этом не использовать дорогие МК. Вы конечно сильно сократили время на написание программы "Blink", но ни слова не сказали о том, сколько времени нужно потратить, чтобы изучить документацию на вашу ОС (а она вообще есть? Сколько там страниц текста?). И еще: вы сказали, что таких ОС есть очень много, так какую из них учить, чтобы найти себе работу? Очень жалею, что потратил час своего времени ни о чем!

  • @user-nq1qx7qt5i
    @user-nq1qx7qt5i3 жыл бұрын

    Интересная лекция, правильная. Но, где же мультиварки изготовленные нами, а не китайскими товарищами?

  • @floks700

    @floks700

    3 жыл бұрын

    а там всё без этой высокомерной зауми этого очкарика. )) пишут то наши, без всяких ОС. на чистом си или асме. я многих таких знаю.

  • @SaLaGaDH
    @SaLaGaDH3 жыл бұрын

    Старанно что под видео с данной тематикой столько бьі дла в комментах... Спасибо за лекцию и демонстрацию типичной работьі любого программиста )

  • @user-nc1zf7fi4e

    @user-nc1zf7fi4e

    Жыл бұрын

    Кричи "ура", если смысл не интересует. 🙂

  • @lobanovds
    @lobanovds6 жыл бұрын

    у кого не будет запускаться компилятор и будет ругаться на отсутствие gcc-arm-none-eabi здесь geektimes.com/company/samsung/blog/299187/ у него в текстовом виде инструкция по установке линукса на винду, и где скачать и как настроить данный компилятор

  • @LLlblKAPHO

    @LLlblKAPHO

    5 жыл бұрын

    где наше любимое мышекликательное программирование? Плату можно определять автоматически, ссылаемые библиотеки подгружать и искать тоже автоматически. При установке компилятора ставить все что нужно автоматически.)

  • @SomeRandomPerson163
    @SomeRandomPerson1634 жыл бұрын

    1:00:08 - Решение: продакт менеджер со своей почтой и хотелками в воскресенье должен пойти в лес. Ну или в магазин за контроллерами и на завод за платами.

  • @user-gb6wj6fn9x
    @user-gb6wj6fn9x5 жыл бұрын

    Если вы товарища, говорите об АСУТП, и не говорить о таких монстрах как Siemens и Allen Bradley то чего стоит ваша лекция ???

  • @cyberzx

    @cyberzx

    4 жыл бұрын

    асутп не является темой лекции

  • @galaktozawr
    @galaktozawr3 жыл бұрын

    Notepad++ это не просто "получше редактор", это чертова машина с тысячами строк кода, работающая как часы.

  • @vilture5706

    @vilture5706

    2 жыл бұрын

    Keil, iar, Какой нотепад

  • @pavelshkarupsky6318
    @pavelshkarupsky63184 жыл бұрын

    А кто-нибудь пробовал повторить? Я лично попробовал собрать код , как минимум в последнем коммите RIOT нет модуля rtctimers-millis.h

  • @andreyv6169

    @andreyv6169

    3 жыл бұрын

    Так он же об этом и сказал что он туда не входит, это внутренняя разработка, вы ее нигде не скачаете.

  • @vladrootgmailcom
    @vladrootgmailcom3 жыл бұрын

    Оператор - профессионал от бога просто.

  • @user-kr2ff3xr3h

    @user-kr2ff3xr3h

    2 жыл бұрын

    датчик слежения на микроконтроллере

  • @dmitryefimkin6550
    @dmitryefimkin65507 ай бұрын

    Круто. Только не понятно зачем.

  • @Al_Gen
    @Al_Gen2 жыл бұрын

    а где видео с Евгением Зуевым?

  • @aleksandrdemidov6058
    @aleksandrdemidov60584 жыл бұрын

    а я думал только я так программы на Си пишу :-) ...

  • @ivanixmasters129
    @ivanixmasters1294 жыл бұрын

    Спасибо, очень интересно, ни чего не понял. Пошел дальше программировать в VBA :-)

  • @Beatleman91
    @Beatleman912 жыл бұрын

    А где остальные лекции ёпрст?

  • @samsunginnovationcampusrussia

    @samsunginnovationcampusrussia

    2 жыл бұрын

    Есть целая серия лекций на ТВ МИРЭА, вот первая: kzread.info/dash/bejne/o52HzK6xldy0ppc.html Остальные найдете без труда, они все есть на KZread

  • @Beatleman91

    @Beatleman91

    2 жыл бұрын

    @@samsunginnovationcampusrussia у них открытость "доступно по ссылке", поэтому в общем поиске и не находятся

  • @sighupcmd
    @sighupcmd4 жыл бұрын

    Всё, пошел закупать Discovery. Жизнь уже не будет прежней :)

  • @user-cl6bu1po7x
    @user-cl6bu1po7x3 жыл бұрын

    Урааа! Нашёл канал под который можно спать😜

  • @rustammukhamatyanov1497
    @rustammukhamatyanov14972 жыл бұрын

    даже нечто скучное можно рассказать интересно, браво

  • @TyurinAlexey
    @TyurinAlexey4 жыл бұрын

    Я ахуенный программист!!! У нас стиль написания очень похож. Когда я программирую свою ардуинку я тоже дефисы проебываю, тоже смотрю в примеры что бы посмотреть как там чего сделано и через 4 написанных строчки загружаю прогу и проверяю накасячил или нет .статистика примерно одинакова с оратором, из 10 раз примерно 9 косяков. Ну то есть я вам честно люди скажу, хорошим программистом можно стать за 2 месяца, я учусь 2 месяца! Да я ахуенный программист, у нас и стили и стата по ошибкам один в один!!! Пойду писать прошивку для терминатора!

  • @electricbase1930

    @electricbase1930

    4 жыл бұрын

    ооооооо либераху порвало

  • @deniskhakimov

    @deniskhakimov

    11 ай бұрын

    >> _тоже смотрю в примеры что бы посмотреть как там чего сделано и через 4 написанных строчки загружаю прогу и проверяю накасячил или нет_ 😄 Когда писал одну из реализаций игры в шашки, проверил код в первый раз только после того, как было написано ~400 строк кода ) А вот с контроллерами тоже люблю почаще компилировать, загружать и проверять, что получилось, т.к. опыта в этой области не так много.

  • @user-uc6sy6wi2j
    @user-uc6sy6wi2j2 жыл бұрын

    Че там обсуждать, берём плату берём дисплей берём либу к нему и книгу по Си. + Гугл. Разбираемся. А на этих миганиях светодиодом можно уснуть уже минут через 15. Я Си вообще не знаю, тем не менее за неделю к Дискавери подключил эспиай дисплей, часы тикают, время устанавливается, яркость регулируется, счётчик циклов перепрошивки инкрементируется, данные в еепром внешней сохраняются, координаты икс игрэк отображаются. И это гораздо интереснее, чем мигать светодиодом. Все на HALе. И вот теперь можно разбираться в тонкостях и не уснуть при этом.

  • @lionlinux
    @lionlinux5 жыл бұрын

    а ESP?

  • @mvxburov

    @mvxburov

    3 жыл бұрын

    фу этот позорный луа, нет уж, спасибо)

  • @nimikh2
    @nimikh23 жыл бұрын

    Советую автору познакомиться с linux. Там компилятор работает в разы быстрее, нежели из под виртуализации windows (qemu небось)

  • @galaktozawr

    @galaktozawr

    3 жыл бұрын

    Что за компилятор? tinycc?))

  • @MrWinston230
    @MrWinston2304 жыл бұрын

    Хорошая лекция, только не упомянули про уровни абстракции кода: LL (Low Level) - выше CMSIS, но ниже SPL (stdPeriph), HAL (Hardware Abstraction Layer). То есть, насколько я помню, на данный момент такая линейка: адреса регистров - CMSIS - LL - SPL - HAL.

  • @Ma_X64

    @Ma_X64

    3 жыл бұрын

    Не. CMSIS это, по сути, просто куча дефайнов, которые превращают адреса регистров в буковки, которые можно читать, SPL -- выкидыш-выпердыш, умерший сразу после рождения, потому что всё сделано бессистемно. HAL -- замена SPL. Более системный подход, немного лучше переносимость (хотя всё равно под каждое семейство нужно читать описание HAL) и куууууууууууча ненужного кода, жрущего время и место -- на каждый чих вызывается функция, которая вызывает еще функции, которые вызывают еще функции. В итоге переходы сжирают кучу процессорного времени, а множество вспомогательных структур -- ОЗУ. Я лично использую HAL только для инициализации, чтобы было быстрее и без ошибок, а для всего остального использую CMSIS, оборачивая аппаратно-ориентированные части кода в функции. В итоге код логики программы такой или даже более читабельный, чем с HAL, но выполняется быстрее и жрёт меньше места и ОЗУ.

  • @AlexeyFyodorov80
    @AlexeyFyodorov804 жыл бұрын

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

  • @vitaly007bond
    @vitaly007bond5 жыл бұрын

    Класс . Только зачем надо новичку ОС ? что это за программист будет? если он не знает основ кто как и так далие, datasheet... не понятно .

  • @krypton1886
    @krypton18862 жыл бұрын

    Жесть, пойду лучше учить ассемблер

  • @_kipovets_85
    @_kipovets_852 жыл бұрын

    Жалко что у меня не было такого учителя 😢

  • @user-nc1zf7fi4e

    @user-nc1zf7fi4e

    Жыл бұрын

    Уже не поможет... 🙂

  • @user-xi1qi8sg7l
    @user-xi1qi8sg7l4 жыл бұрын

    Посмотрел только из-за того что интересно читал лекцию, но так как я не программист то ни черта не понял😁

  • @anatol_savsirotkin1912
    @anatol_savsirotkin19125 жыл бұрын

    Что за фильм про 1 байт, который не влез, ссылку дайте пожалуйста

  • @SomeRandomPerson163

    @SomeRandomPerson163

    4 жыл бұрын

    Не фильм а рассказ вроде

  • @cyberzx

    @cyberzx

    4 жыл бұрын

    "история одного байта" в гугле

  • @botsynth
    @botsynth3 жыл бұрын

    Интересно, все эмбедерское сообщество такое токсичное?

  • @SaLaGaDH

    @SaLaGaDH

    3 жыл бұрын

    Да, тоже удивляет желчь в комментах

  • @user-xy4sv9cl6v

    @user-xy4sv9cl6v

    7 ай бұрын

    Это от непонимания что такое МК и с чем его едят

  • @user-yi5ee1yj8b
    @user-yi5ee1yj8b4 жыл бұрын

    нихуя не понял, но было интересно

  • @user-oi1zl6de8i
    @user-oi1zl6de8i4 жыл бұрын

    Esp32?

  • @galaktozawr

    @galaktozawr

    3 жыл бұрын

    Действительно, нахер про него вспоминать.

  • @user-oi1zl6de8i

    @user-oi1zl6de8i

    3 жыл бұрын

    @@galaktozawr Почему его не нужно вспоминать?

  • @galaktozawr

    @galaktozawr

    3 жыл бұрын

    @@user-oi1zl6de8i Это я про автора ролика.

  • @user-oi1zl6de8i

    @user-oi1zl6de8i

    3 жыл бұрын

    @@galaktozawrА почему не нужно вспоминать про автора ролика?

  • @heidhere
    @heidhere6 жыл бұрын

    вопрос снят, оказывается Microchip купил Atmel, не знал...

  • @user-eq8tk4bm4n

    @user-eq8tk4bm4n

    5 жыл бұрын

    Года два или три как

  • @nskvasov
    @nskvasov5 жыл бұрын

    За "десятикратный позор" по Тарантиновской части "Четырех комнат" уже всех пальцев на руках мог лишиться.

  • @bul2012
    @bul20124 жыл бұрын

    Пробовал пол года назад установить этот риот. Чёт кубовские продукты намного проще

  • @user-vo9kn3pp6p

    @user-vo9kn3pp6p

    2 жыл бұрын

    CubeMX?

  • @bul2012

    @bul2012

    2 жыл бұрын

    @@user-vo9kn3pp6p да, и cubeIDE тоже

  • @user-vo9kn3pp6p

    @user-vo9kn3pp6p

    2 жыл бұрын

    @@bul2012 как он?

  • @bul2012

    @bul2012

    2 жыл бұрын

    @@user-vo9kn3pp6p норм, пойдет с пивом

  • @user-vo9kn3pp6p

    @user-vo9kn3pp6p

    2 жыл бұрын

    @@bul2012 стабильно пашет?

  • @andreyv6169
    @andreyv61693 жыл бұрын

    Обалдеть, 14кбайт чтобы поморгать светодиодом. Когда просто на си на это может уйти 200 байт. Какая ж тут экономия? Проще потратить на разработку один раз на недельку подольше, чем купить дороже кирпич для выпуска это в производство и значительно увеличить себестоимость. И да уже 8 битная атмега может в процессе работы хоть сто раз подряд конфигурировать новой таймер. Так что как то не убедительно в сторону ОС на МК. Это просто похоже больше на лень и расточительность. И атмега8 до сих пор применяется. Только недавно видел на ней регулятор температуры для печи. Даже сварочный инвертор на какой то меге видел, которые до сих пор выпускаются.

  • @SaLaGaDH

    @SaLaGaDH

    3 жыл бұрын

    Когда нибудь поймешь

  • @user-gj8ng9oo9e
    @user-gj8ng9oo9e2 жыл бұрын

    Знает про что говорит

  • @user-uv5cv4bc9p
    @user-uv5cv4bc9p2 жыл бұрын

    Прошло три года и как были в лидерах по применению микроконтроллеры от желтомордых обезьян, так и остаются. Renesas - вот кто в лидерах по применению, а не STM. Далее идут FRS (FreeScale-Motorolla). Я ремонтирую быт технику и практически у всех крупных брендов мозги выше названных фирм. Контроллеры совсем не похожие ни на 8051, ни на AVR. Крайне редко попадаются AVR и совсем уж редкость это PIC.

  • @user-fv5rk1fc9o

    @user-fv5rk1fc9o

    Жыл бұрын

    Интересное наблюдение, а я с головой решил уйти в STM32

  • @AlexEist
    @AlexEist3 жыл бұрын

    38:05 Чтобы бороться "с этим ужасом" надо осуществлять Системный анализ ... надо увидеть, кто корпорации, что делают все ради прибыли НИКОГДА НЕ ПОМОГУТ тебе никогда не облегчат.. а всегда будут только усложнять и перекладывать на плечи наивных программистов проблемы своей неадекватности, абсурдности прибыльной экономики и шизофренически - "здоровой" конкуренции. Решая проблему возрастания сложности описания новых технологий и НАРУШЕНИЯ СОВМЕСТИМОСТИ надо просто отказываться от КАПИТАЛИЗМА.

  • @Ma_X64

    @Ma_X64

    3 жыл бұрын

    Большинство людей не видят этой связи, обсуждая локальные проблемы.

  • @nicivanov5135
    @nicivanov51353 жыл бұрын

    Интерестно, если человек придумает как упростить этот хардкор, он сможет на этом заработать по взрослому?

  • @redtex
    @redtex4 жыл бұрын

    Остаётся подождать когда будет стандартизированы самостийные кортексы.

  • @user-xn7pb5nd2p
    @user-xn7pb5nd2p3 жыл бұрын

    Усатый нянь

  • @user-tn7nq1sb3d
    @user-tn7nq1sb3d2 жыл бұрын

    Супер! Лектор от Бога!

  • @user-lj6fz7no4n
    @user-lj6fz7no4n4 жыл бұрын

    вот бы еще на вопросы ответили , а вот хрен .видео выложил и на этом все

  • @TheMikki1982
    @TheMikki19828 ай бұрын

    PIC32 не мог вырасти из 8-разрядных PIC просто потому, что у PIC32 лицензированное ядро MIPS4K, а у 8-разрядных контроллеров своя архитектура Microchip

  • @TheKirsna
    @TheKirsna5 жыл бұрын

    Чувак наверное оговорился что за месяц программист утрамбует все что надо. Это наверное мегамоск должен быть. Интересно знать после такой работы сколько программисты живут и как у них со здоровьем ???

  • @dazzershell

    @dazzershell

    5 жыл бұрын

    "хороший программист" с кучей наработок для данного кристалла может вскружить голову любому нанимателю, в плане скорости.

  • @phill2773

    @phill2773

    4 жыл бұрын

    @Danatas Gervi Снится - это да :)

  • @andrewandrosow4797
    @andrewandrosow47975 жыл бұрын

    Годная лекция! Но Настоящая жуть начинается с периферией безобидно: по STM32CubeMX выставляешь для HRTIM минимально нужные несложные режимы режимы, простой режим инициализации (без умножения частоты HRTIM) потом запускаешь генератор кода, дописываешь HAL_HRTIM_SimplePWMStart(&hhrtim1,HRTIM_TIMERINDEX_TIMER_A ,HRTIM_OUTPUT_TA1); - и тут таймер запустился на заявленных 500Гц, но запись в регистр HRTIM_CMP1AR НИЧЕГО не дает! Какая была скважность, такая и остается. Тот же CubeMX генерирует какие-то свои функции с префиксом MX_ вперемешку с HAL. Так что в инициализации еще тот гимор))

  • @Ma_X64

    @Ma_X64

    3 жыл бұрын

    Поэтому вне зависимости от того HAL там или "нахал", нужно открывать референс мануал, находить периферийный блок и изучать его логику. Полезно распечатать хотя бы картинки с диаграммами соединений. А потом случается магия, и голова начинает просто помнить все регистры и биты, так что необходимость в HAL отпадает.

  • @andrewandrosow4797

    @andrewandrosow4797

    3 жыл бұрын

    @@Ma_X64 хуже всего - я прочитал осмыслил даташит (на всякий случай перевод кратко записал в тетрадь) - но писать на голых регистрах (а в прошлом я таки писал на голых регистрах) нету сейчас времени... Короче может просто бракованный чип попался (запускался HRTIM как-то коряво и далеко не на всех частотах) - вручную скважность выставляется без проблем но под реальной нагрузкой блок HRTIM сходит с ума и отключается (спасибо разработчикам что хоть сквозняки не возникают!).

  • @Ma_X64

    @Ma_X64

    3 жыл бұрын

    @@andrewandrosow4797 Ну китайские нередко бывают с вывертами. Еще ERRATA нужно поглядывать в случае любых глюков. Бывает, что на этапе разработки накосячено. Насчёт времени, не знаю. Мне вот не так давно пришлось быстренько освоить STM8 и писать два больших проекта с несколькими задачами, критичными ко времени. ПОд 8-рки и нет никакого уровня абстракции -- так же брал и на регистрах писал, а они довольно похожи на 32-ки.

  • @andrewandrosow4797

    @andrewandrosow4797

    3 жыл бұрын

    @@Ma_X64 может был смысл выбрать AVR Atmel - тоже ведь восьмибитные как и STM8.Программировать на Си AVR проще, правда периферия победнее

  • @Ma_X64

    @Ma_X64

    3 жыл бұрын

    @@andrewandrosow4797 лучше сразу освоить что современное. Сложнее, зато потом большинство других контроллеров покажутся смутно знакомыми

  • @alexshirokov5138
    @alexshirokov51382 жыл бұрын

    Послушать кроме АRM ничего нет, на самом деле все ни так. Где dsp, контролеры на которых производится привода и много другого. Укрупнение функций, уменьшает возможности контролера, так что операционки это только для стандартных функций, для нестандартных задач С это мало, нужно дописывать нп АSМ. Очень смешно чем меньше думает програмист, тем лучше. Поэтому светодиод подключаем пол часа..

  • @AxGxP
    @AxGxP5 жыл бұрын

    Хороший рассказ, *Cortex-M рулит!* #ВТопкуАрдуино

  • @redtex

    @redtex

    4 жыл бұрын

    Втопку мамкиных инженеров.

Келесі