Микроконтроллер MIK32 АМУР - тестируем светодиод на отладочной плате NUKE MIK32 v0.3
HTML-код
- Опубликовано: 29 сен 2024
- Недавно приобрели комплект разработчика на базе отечественного микроконтроллера MIK32 АМУР производства зеленоградского АО "Микрон". Это первый отечественный МК на полностью открытой архитектуре RISC-V который спроектирован и изготовлен в России.
Микрон предлагает SDK для работы через VSCode. Нас такое дело не устраивает, по этому пришлось немного понажимать кнопки и создать простой Makefile для сборки исходников. На видео показан процесс компиляции программы Blink из оригинального репозитория для платы NUKE v0.3 и прошивка микроконтроллера с помощью команды make.
В оригинальном прошивальщике mik32_upload.py есть баг - в нём неверно указан путь к скриптам openocd внутри прошивальщика, а так же неверно указано имя интерфейсного файла. В нашем Makefile-е это дело подправлено путем задания полного списка параметров прошивальщику со всеми путями.
Репозиторий с примером Makefile-а доступен на Github-е: github.com/Fab... - Наука
Конечно интересно! Спасибо!Пощупать бы самому...
где купитл?
Если мыслить как глобик и не брать во внимание реальность, то да, можно говорить, мол, куда мы со своими лаптями лезем ведь можно всё купить дешевле и лучше, ведь ещё не все трубопроводы взорваны, правда? Да, можно покупать всё до самой смерти, пока окончательно не отупеем и не загнемся. Только потом уже и покупать не на что будет. Поэтому свои микроконтроллеры - это вещь правильная. Это свои кб, свои заводы, свои мысли и научные школы, свои студенты, которые понимают зачем они мучаются в вузе.
А это нормально?, что свой микроконтроллер:
- в 10 раз дороже китайских функциональных аналогов.
- в единственном исполнении по периферии.
- соответствует уровню развития МК конца 90х (т.е. отстает на 20 лет).
@@MaxiRPD это не просто не нормально - это ужасно, но это плоды той довоенной логики вхождения в "цивилизованный мир", мол, нефть есть, а всё остальное нам всегда за неё продадут. Пока так считали, закрывали целые отрасли, теряли специалистов, забывали, что умели. Понятно, что кто-то должен за это ответить, но догонять-то всё равно теперь приходится.
@@MsBarshА причем тут довоенная логика. СССР и РФ за всю свою историю никогда не производили микроконтроллеры на уровне ведущих мировых фирм. Они всегда были слабые, дорогие, имели низкий выход годных и отставали на много лет. Все это приводило к ничтожным партиям микросхем и отсутствию специалистов по ним и перспектив роста. Они должны были умереть при первой возможности - это называется РЫНОК. Отвечать некому.
@@MaxiRPD довоенная логика и заключается в том, что рынок якобы главный критерий, что он гарантирует мировое разделение труда и пр. А адекватная логика такова, что рынок тебе однажды перекроют абсолютно нерыночными методами. И либо придётся сдаваться, либо расчехлять свои отсталые технологии, которые дотировали именно на чёрный день. Умирать сразу как-то не хочется, "лучше помучиться". А отвечать должны те, кто пел песни про рынок, и те, кто на эти песни купился.
@@MsBarsh Что значит перекроют?! Запретили напрямую завозить - завозите через страну прокладку. Контрабандой наконец. Оснований платить 10 цен за 20-ти летнее отставание все равно нет не при каких перекрытиях любыми методами.
Интересно но так себе, пока сидим на ардуино и STM
Ну, с чего-то начинать надо. В добрый путь.
Здравствуйте коллега, я на github вам issue оставил с вопросом об OpenOCD. Не уверен что в OpenOCD проблемы. Ни с PlatformIO, ни с вашим makefile'ом не удаётся прошить МК. Я свой makefile собрал, скомпилировать hex удалось, а вот прошить не удаётся. Может из-за того что я под win10 это делаю, может есть какие идеи, сможете может на правильную мысль навести?
Ответил Вам на Github-е.
@@ruslanzalata ещё раз благодарю коллега, записал видео о том как я мучился с АМУРом, будет настроение посмотрите)
Давай ещё видео с этой платой
Смотрю, как использовать новый АМУР - а тут это видео. Думала ламеры балуются - а тут линукса !
PS
Съёмка подвела, будто из подвала...
На ноуте у меня FreeBSD. На сервер - Linux. Снимал одной рукой на мобилку, другой кнопки давил. Снимал просто чтобы показать, что микросхема работает. Если появится время - напишу статейку на Хабр.
@@ruslanzalata а пользуй вы не командную строку и имей ГУИ, живя в многозадачности, могли бы запустить приложение для записи экрана и сами не страдать и зрителей не мучить. Но увы линукс мозга, с застреванием на уровне консоли.Чай уже 21й век, не 21й и давно не 19й. Компютеры вполне могут и простенький интерфейс показывать, о ужас с кнопочками и в многозадачность, обычную, бытовую - несколько приложений одновременно, для удобства.
@@andrewdok3595 , ни в Linux-е, ни во FreeBSD нет проблем записать видео с экрана. У меня не стояло такой задачи. Я же не видеоблогер.
Я не работаю с RISC-V, думала тулчейн также просто устанавливается, как для STM32 ARM... или как утилиты J-Link.
Однако, в пакетной базе Ubuntu 24 тулчейн оказался не полностью , а собрать из исходников весь тулчейн - дело нетривиальное (он состоит из нескольких компонентов: компилятор, утилиты, Newlib...) - не компилировался этот тестовый пример.
Но есть готовый пакет для Ubuntu и других систем - Embecosm riscv toolchain. С ним пример откомпилировался без проблем, пути только подправить.
@@Victoria-y4j , собирать GCC из исходников дело конечно благородное, но затраное по времени. Тулчейн для RISC-V GCC сейчас присутствует во всех репозиториях Linux и *BSD. Мы используем сборки от SiFive.
Ещё существуют готовые платы ACE-UNO ELBEAR на микроконтроллере АМУР в модификации с 8, 16, 32 Мб подключаемой (QSPI) Flash-памяти и программатором. Которые одновременно являются Arduino-совместимыми (Arduino IDE, Arduino Shield) и отладочными (PlatformIO, Eclipse IDE) платами для MIK32 АМУР.
Я такую себе заказал, жду, на днях должны прислать
@@hutoryanin У этого же производителя появились сборки ELSOM (System on module) с MIK32 АМУР, где уже есть всё необходимое для использования микроконтроллера.
@@IvAnDrEv интересно, пойду гляну
Что-то не верится, что отечественный. Отечественный должен быть в деревянном ящике с ручками))
Это наноконтроллер с ручками. Микроконтроллеру нужны гусеницы.
С ручками это только носимый вариант.
А чем vscode не угодил?
Подозреваю, что нужна не интерактивная сборка, типа из репозитория
им религия запрещает не из командной строки запускать компиляцию. А может и проверка синтаксиса, с подсветками, таким специалистам, тоже сильно мешает. Как так можно проверить код по нажатию кнопки и загрузить тоже по нажатию кнопки. Это ж 20й век, эра гуи и пост вин95 - это всё зло. Но почему то такие спецы взяли готовую макетку, а не пошли сразу по граблям делая свою. Как-то не сходится или как обычно двойные стандарты...
@@andrewdok3595 удваиваю
@@andrewdok3595 ахахаха
Амур - первый отечественный контроллер первого уровня, то есть разработан и произведен на территории Российской Федерации. Камни на базе архитектуры Риск, разработанные в России, но производимые за рубежом были и раньше.
Риск не архитектура, а только тип архитектур. Анхитектура RISC-V.
Так а Ангстремовские "Тесеи" КР1878ВЕ1 - разве не первые отечественные контроллеры первого уровня? Они вообще были сделаны на базе СВОЕЙ АРХИТЕКТУРЫ. А если не своей - то контроллеры на архитектуре MCS48, MCS51 и DEC еще при СССР делали.
"Какой-то добрый комментарий..."
*Л. а. й. к.*
и
*Р. е. с. п. е. к. т.*
Как у Вас с миландровским МК, что-то своё получилось спроектировать ?
@@ruslanzalata ничего конкретного, сейчас из кучи макеток собрал бутерброд под экран ILI9341. Разъём сделал как у UNO, просто потому что много шилдов разных есть под неё. Пока просто изучаю / играюсь с К1986ВК025
а можете простыми словами объяснить что это за штука? куда потом можно применить и что нужно, чтобы мы догнали в этом деле остальных?
Это сарказм ? В видео сказано, что это плата разрабочтика предназначенная для освоения нового микроконтроллера MIK32 AMUR от АО "Микрон". Сам MIK32 это МК класса STM32L0. Такие МК широко используются в промышленной автоматизации, в различных датчиках и устройствах управления, в автомобильной промышленности.
@@ruslanzalata нее)) я просто в этом вообще не шарю.... но это, наверно, капец какая нужная вещь сейчас
еще.)
Не совсем ясно, что у него с отладкой, было бы интересно узнать. Что за отладочный интерфейс, SWD или JTAG, или он не умеет в отладку, и предназначен в качестве ардуинки: прошил и забыл?
Отладка в MIK32 осуществляется по JTAG через OpenOCD. Написано, что поддерживается пошаговое исполенение. Не ясно есть ли поддержка Boundary Scan (BSDL файла в репозиториях нет), что важно при тестировании серийных изделий. Задам вопрос в техподдержку.
SWD это проприетарный протокол от STmicro.
@@ruslanzalataнет, SWD - это от ARM. STM просто лицензирует SWD.
А так да, там именно полноценный JTAG.
@@uis246 , тем более.
Вот оно - импортзамещение!
Это цветочки пока...🌹🌹🌹
Да, не понятно что мешало Микрону выпустить такой МК лет 10 назад.
@@ruslanzalata засилье интелов нвидий и прочего гавна, на которое кидаются хомячки насмотревшись ютубов
@@ruslanzalata ему куча денег с неба падала. Зачем было что-то делать? я из Зеленограда. Есть еще пара причин
@@ruslanzalata зачем "это" за 3000 рублей, если можно купить стм32 за 500 рублей. (а какой то части клиентов хватит и китайской пали рублей за 50).
А сейчас импортозамещение.
Тема цены как раз раскрыта: 3000 за контроллер, он сделан из золота, платины и брилиантов, покупают коллекционеры.
Приятно осознавать, что тебя отнесли к состоятельным людям.
@@ruslanzalata если серьезно: то при всем уважении и понимании цена нереально высока! Еще бы 300, ну максимум 500 (ито только за отечественный) можно принять, а так ему цена максимум 150
@@dmitriyprilepo7807 , а чем Вы обьясните Ваше ценообразование в 150 руб ? Тем, что на рынке полно дешманского китайского хлама ? А представье, если он вдруг исчезнет или резко пойдет вверх в цене.
Себестоимость производства в России очень высокая по множеству причин (не только из-за санкций). То, что Микрону удалось вывести на рынок изделие за 3000 руб это чудо из чудес. И всё равно без гос субсидии не обошлось, как я понимаю.
@@dmitriyprilepo7807 это из разряда цен на печатные платы, сколько в китае стоит заказать, сколько в резоните несчастном
@@dmitriyprilepo7807 Какие 150? Его PI-Pico за 150 как бог черепаху кроет по всем параметрам. Рыночная цена ему край 50 рублей.
Что то не вериться, кто кристалл у нас выращивает? Или китайская?
MIK32 АМУР разработан в АО "Микрон" и поизведен на его же мощностях. Зеленоградский АО "Микрон" - единственный в стране завод способный массово изготавливать микросхемы по 180нм техпроцессу. Есть еще предприятия с возможностями по 350нм и 500нм. Есть опытные и исследовательские предприятия с 1мкм литографией.
@@ruslanzalata не особо понятен ответ, кристалл там выращивают? Можно произвести и с импортным кристаллом и выдать за отечественный чип.
@@ruslanzalata Купил кремнивую пластину за 3 тыс рублей в Китае и наштомповал.
Выращивают и корпусируют. Это старый завод с советских времен, но оборудование у них импортное (от STmicro, если не ошибаюсь), образца начала 2000-х годов.
Нарезанием готовых пластин и корпусирование занимается другой завод - GS Nanotech в г. Калининград. Таким способом они производят flash память - покупают пластины в Китае, тестируют, нарезают и корпусируют.
VS Code - это издеваться? Издевательство это всякий кал типа IAR
Программы надо писать в текстовом редакторе. Сборку производить в командной строке с помощью Makefile-а. VSCode - фуфло которое отнимает ресурсы и время, скрывает от программиста процедуру сборки, а автоподстановка превращает его в дегенерата.
@@ruslanzalata кому "надо"? Яму можно копать экскаватором а можно лопатой, но нельзя сказать что одно из этого всегда лучше и нужно делать только так. Даже несмотря на то что лопата экономит ресурс а экскаватор заставляет деградировать мышцы. Да и ресурс в виде времени гораздо ценнее чем ресурс компьютерных мощностей. Нагрузка, которую vs code создаёт на железо - пренебрежима. Тему "деградации" можно и далее развивать. Например, зачем этот весь сишный сахарок, можно ведь писать на асме? Асм для ламаков, можно ведь писать на машинных кодах? Микроконтроллеры в целом для слабых, нужно схему проектировать на рассыпушной логике? Цифровые схемы вообще для отсталых, только хардкор, только аналоговые вычисления? Электроника в целом заставляет деградировать и рулят механические автоматы? Еще несколько таких итераций и мы дойдем до палки-копалки.
Вам надо! Прежде всего VSCode разжижает мозги, а это самый важный ресурс который у Вас, как у программиста, имеется и его нужно постоянно поддерживать в тонусе, как мышцы у штангиста. Привыкнув к VSCode Вы не сможете работать удаленно не имея высокоскоростного доступа к интернет. В экстренной ситуации Вы не сможете написать ни строки кода и тем более скомпилировать этот код. Как Вы собираетесь отлаживать свое изделие "в поле", например, на месторождении где интернет не всегда присутствует ? Без VCode Вы не сможете добавить в проект библиотеку, потому что Вы не знаете и не понимаете процесса сборки. Вы даже не всегда помните имена библиотечных функций и их параметры, потому что Вы привыкли к автозаполнению. Таким образом Вы превращаетесь из программиста в дегенерата! Как штангист который перестал качать мышцу превращается в аморфную кучу жира и костей.
Но дело даже не в этом, а в том, что простые вещи (такие как HAL) должны оставаться простыми и понятными, без лишних надстроек и "грима" в виде VSCode.
PS: Ради интереса, попробуйте с нуля написать и собрать "hello world" без использования VSCode и любых других средст автоматизации (только текст в редакторе и команда сборки компилятору) и Вы тут же почувствуете как извилины в Вашей черепной коробке скрипят цепляясь одна за другую.
Архитектура называется risk В, а не risk 5.
Это из русской педивикии? почему-то в оригинале как раз 5(five): RISC-V[b] (pronounced "risk-five"[2]: 1 ) is an open standard instruction set architecture (ISA) based on established reduced instruction set computer (RISC) principles.
@@vitalley не знал. Спасибо. Подставила меня Википедия)
"risc B" это вакцина от Ковида, а архитектура называется "риск пять". Учите матчасть.
Появились сборки ELSOM (System on module) с микроконтроллером MIK32 АМУР, от новосибирского контрактного производителя электроники ELRON, для ускорения разработки и выпуска готовых изделий.
Параметры и состав сборки:
Микроконтроллер MIK32 АМУР
Память NOR FLASH 8 Мб (может быть изменена)
EEPROM содержит загрузчик по UART
Кварцевый генератор часовой 32 кГц
Кварцевый генератор высокочастотный 32 МГц
Отлаженные обвязки по питанию, обвязки кварцев, цепь сброса, подтягивающие резисторы
Размер: 25,4*25,4 мм, толщина текстолита 0,71 мм
SOM не содержит опознавательных идентифицирующих знаков, что позволяет использовать данные сборки в качестве OEM узлов в устройстве.
как всегда не для людей сделано
Для троллей из Мордора вестимо, для кого же еще.
А сколько нанометров?
Если на зеленоградском Микроне изготавливают, значит 180нм.
@@ruslanzalata многовато будет
@@ruslanzalata хотя лучше такое чем вообще не каких контролёров.
@@АлександрВыскребенцев-з7г , это лучшее что есть в России на данный момент. Но я считаю, что для МК такого класса 180нм - в самый раз.
@@ruslanzalata технологии 90 нм у нас нет значит?
Название устройства намекает на его происхождение. :)
Ждём продолжения.
8ROM, 16RAM? Пусть сами пользуются, нам ESP и STM пожалуйста.
PS: VSCode ужасный? Покажите свою среду разаработки. Авторы и миллионы пользователей PlatformIO, видимо, не достигли вашего уровня просветления, раз массово выбирают VSCode...
PSPS: "Все комментарии на русском" - Так это минус, а не плюс. Нужно отвлечься от созерцания глобуса России, и наконец понять и принять, что мир большой. И русский язык в нем один из многих, а вовсе не основной и универсальный.
Зачем ты написал этот коммент на русском языке?
Ну так покупайте стм и есп
Редактор vi, комплект тулов gcc и Makefile - это всё, что требуется. Всё остальное совершенно ненужные привороты которые усложняют разработку и превращает разработчика в дегенерата (вот это вот автоматическое дополнение кода, copilot и прочее).
На счет комментариев в коде на русском, меня это повеселило и честно говоря я против такого подхода. Мне очень часто приходится иметь дело с ктайскими драйверами для Allwinner и прочих китайских СнК. Там в коде часто вижу комментарии на китайском и это откровенно говоря высаживает. Если код для публичного применение, то комменты конечно же надо писать на английском.
@@kurtprosvet7533 А ты, когда программы пишешь, зачем пишешь "if - then - else" на англйском? Это же низкопоклонничесво перед западом! Покайся и пиши на русском!
@@ruslanzalata Да? Vi только нужен? Все остальное - говно? А кому-то и блокнота с ассемблером хватает... А вот мне попадалася графичек со сравнением популярности в мире разных сред разработки, и там у Vi что-то около 2% активных пользователей. А VSCode и VisualStudio - лидеры с огромным отрывом. Получается, или 98% пользователей что-то не знают, поэтому не используют великолепный Vi. Либо ты из лагеря маргиналов, с жизненной установкой "если реальность не соответствует моим желаниям - тем хуже для реальности".
Однако тема сисе.... т.е. тема цены не раскрыта! И возникает вопрос - а что именно входит в "сложнейшее" ПО для организации "моргинга" и даже, я не побоюсь этого слова "БЛЫМИНГА" светодиода сразу на ПЯТЬСОТ байт? Ну вот помнится мне, что аналогичная "задача" на тех же PICах решается байт за двадцать!
Я заглянул в код файла .asm который генерирует GCC, там около 400 байт занимает crt0 и организация trap-а (сохранение и восстановление регистров). Если писать на асме, то можно немного съэкономить.
Он в свободной продаже и цену можно посмотреть, например, на Чип-и-Дипе. Цена у него (у самого МК без платы) 3 тыс. Да, это офигенно дорого для такого слабого МК, но он не для конкуренции. Это единственный на текущий момент МК, который разработан и изготавливается в России. Поэтому его будут брать фирмы по любой цене. Размер, выглядит большим, но это надо смотреть код и бинарник, который получился. Возможно, там большая таблица векторов прерываний. Возможно, сам код написан громоздко. А, может, компилятор генерирует неоптимальный код. Если и сравнивать, то это надо не с PIC, а с STM32F0, одноклассником которого MIK32 и является.
@@humanoid9557 , на счет размера бинарника. Там crt0 занимает около 400 байт, из них вход в trap_handler и выход из него - 146 байт (сохранение и восстановление регистров). Это же RISC. :)
@@humanoid9557 Спасибо! Все равно очень интересно! Бум надеяться, что этот первый блин не станет последним и наша ракетно-кроватная промышленность научится делать хорошие и дешевые контроллеры, которые очень нужны всем!
Можете написать на ассемблере тоже в байт 20 уложитесь. Где-то у меня валялась моргалка для gd32vf103 на асме, которая без танцев с бубном заводилась и на CH32V203, но это китайцы они не мудурствуя лукаво сделали pin to pin контроллеры с stm32