Virtual FAT disk на STM32. Получаем доступ к несуществующим файлам.

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ธ.ค. 2024

ความคิดเห็น • 101

  • @trinitroDimedrol
    @trinitroDimedrol 3 ปีที่แล้ว +3

    Делал с помощью библиотеки emFAT загрузчик для устройства. Файл с прошивкой через проводник отправлялся на виртуальный диск после чего и производилось обновление. Кроссплатформенности не получилось, диск некорректно эмулировался на MAC-OS. На Windows только на 8-ке были какие-то проблемы. Отличный проект, тысячу раз пожелал автору emFAT добра.

  • @michal621
    @michal621 3 ปีที่แล้ว +2

    ну наконец посмотрел. Ваши видео надо смотреть с кофе и плюшками и чтобы никто не мешал :)

  • @sergey_fetisov
    @sergey_fetisov ปีที่แล้ว +1

    Выражаю почтение! Очень рад, что библиотека emfat кому-то пригодилась ❤

    • @VladimirMedintsev
      @VladimirMedintsev  ปีที่แล้ว +1

      Спасибо вам, хорошая библиотека

  • @ShiloXyZ
    @ShiloXyZ 3 ปีที่แล้ว +2

    Очень круто, как раз искал нечто подобное.

  • @MaChEtE-yn5cm
    @MaChEtE-yn5cm 3 ปีที่แล้ว +3

    Спасибо ! интересный ролик, открывает новые пути решения и возможности.

  • @CanchezAK
    @CanchezAK 3 ปีที่แล้ว +4

    Очень круто, применений реально много можно придумать

  • @ИванСидоров-к9м
    @ИванСидоров-к9м 3 ปีที่แล้ว +4

    Спасибо за интересный контент.

  • @alexlitvinenko6901
    @alexlitvinenko6901 3 ปีที่แล้ว +2

    Гениально! Я никогда бы не подумал, что устройства на stm32 можно превратить в usb накопитель и его настройку проводить просто редактируя файлик!!!

    • @ГеннадийГром-в8ю
      @ГеннадийГром-в8ю 3 ปีที่แล้ว +1

      Хм-м, дружище, где вы были 5-10 лет назад, когда из Ардуины делали чего только не попадя, и джйстики и мышки и флешки и рули и педали, и пр. и пр., только меняй ID девайса в ответе... И-и-и... весь мир у тебя на "ладони", J.Бонд отдыхает за спиной! 👍😁🤪

    • @alexlitvinenko6901
      @alexlitvinenko6901 3 ปีที่แล้ว +2

      @@ГеннадийГром-в8ю когда все мучили ардуинки я матросил ATMega8 в CVAVR. И подковывал блох ATtiny13 втрамбовывая максимум возможностей в их ограниченное количество флеша и оперативы. Но с usb усьройствами не было задач.

  • @ВадимКубрак-ы8ю
    @ВадимКубрак-ы8ю 3 ปีที่แล้ว +6

    Спасибо, интересная тема.

  • @ivankuznetsov5618
    @ivankuznetsov5618 3 ปีที่แล้ว +1

    Спасибо, Владимир. Интересная идея.

  • @Beatleman91
    @Beatleman91 3 ปีที่แล้ว +1

    Владимир, вы куда-то всё глубже и глубже опускаетесь, мы за вами не успеваем)

    • @ГеннадийГром-в8ю
      @ГеннадийГром-в8ю 3 ปีที่แล้ว

      Надо поспевать! Иначе все наши телодвижения яйца "перезагруженного" не стоят! 👍😁🤪

  • @AndySm1973
    @AndySm1973 3 ปีที่แล้ว +3

    Огромное спасибо!

  • @lionlinux
    @lionlinux 3 ปีที่แล้ว +1

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

  • @seawindkiev
    @seawindkiev 3 ปีที่แล้ว +3

    Такие виртуальные ФС удобно использовать для доступа к оборудованию. Например файлик adc0 при чтении из него микроконтроллер выполняет преобразование и отдает полученное значение. Другой пример - запись в файл uart0, передает записанный байт по uart0, и аналогично при чтении.

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว

      Да, тоже очень хорошая идея.

  • @andj9645
    @andj9645 3 ปีที่แล้ว +2

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

  • @GudinVladimir
    @GudinVladimir 3 ปีที่แล้ว +1

    Спасибо за, как всегда, отличный материал. На сколько я понипаю, именно такой механизм работает, например, в отладчиках STLink. В тех версиях (по-моему, начиная с 2.1), где есть возможность залить прошивку просто скопировав ее на виртуальный диск. Там точно так же нет никакого реального хранилища. То же самое встречается в других устройствах. Паяльник TS100 - та же история. Там и конфигурационный файл есть, и обновление ПО.

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว

      В какой-то части устройств это сделано именно так. Пользуйтесь, теперь и вы это умеете.

  • @user-jl7et8gx5u
    @user-jl7et8gx5u 3 ปีที่แล้ว +3

    Спасибо

  • @alp763
    @alp763 3 ปีที่แล้ว +3

    Я как-то не уловил из видео. В итоге получился именно FAT8 ? Не вижу в библиотеке прямых на это указаний.

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +1

      Библиотека изображает из сетя FAT32.
      Я хотел писать FAT8.

  • @bogdan1543
    @bogdan1543 3 ปีที่แล้ว +2

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

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +1

      Да и с прошивкой не проблема. Там ведь передается по 512 байт, вполне удобно принимать, проверять и самопрошивать. Особенно если есть свободный банк.

    • @bogdan1543
      @bogdan1543 3 ปีที่แล้ว +1

      @@VladimirMedintsev Да, очень функциональная штука! Спасибо!

  • @АлександрСупов-ю4щ
    @АлександрСупов-ю4щ 3 ปีที่แล้ว +1

    Добрый вечер, хотел бы еще уточнить про данный тип реализаций. Уменя есть приложение с данными которое отправляет в com порт более 64 байт, а иногда 396 байт. Могу ли я данным методом создать 2 файла конфигураций и писать в них данные с настройками приложения, а там уж микроконтроллер считает данные с этих файлов и запишет куда надо допустим во внешнию память. Как думайте это реализуемо на вашем примере вся цепочка?

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว

      Все в ваших руках. Все можно реализовать.

    • @АлександрСупов-ю4щ
      @АлександрСупов-ю4щ 3 ปีที่แล้ว

      @@VladimirMedintsev Спасибо, просто я хочу обойти все записи данных с ограничениями cdc в 64 байта , складывать буферы можно, но вижу реализацию интереснее и проще в 512 байт укладываюсь при записи)

  • @ajdarseidzade688
    @ajdarseidzade688 3 ปีที่แล้ว +1

    Хотел отблагодарить материально и попробовал по первой ссылке перевести хотя бы 100 рублей для проверки. А у меня налог взяли при этом на 383 рубля (т.е. заплатил в итоге 483 рубля по курсу). Это я представляю еще сколько у автора видео отжимают проклятые банки. Чтобы пусто им было за это. Если что я сам из Баку. А что касается видео - то очень нужная тема и спасибо (хотя бы так) Вам!

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว

      Налоги ужасная штука. Я не расчитывал, на помощь из-за границы. Честно говоря.
      Но огромнейшее вам спасибо.

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +2

      Да вообще с этими границами... Раньше и я еще помню эти времена можно было просто поехать в Баку... А сейчас блин это заграница.

    • @ajdarseidzade688
      @ajdarseidzade688 3 ปีที่แล้ว +1

      @@VladimirMedintsev Это Вам большое человеческое спасибо, что находите время и снимаете такие видео. Вот Вы говорите спасибо - хотя около 80% процентов от суммы тут просто-напросто отжал себе банк и даже не пикнул в ответ.

    • @ГеннадийГром-в8ю
      @ГеннадийГром-в8ю 3 ปีที่แล้ว +1

      Хм-м, когда-то, поездка на автобусе: Сухум - Зугдиди - Поти - Батуми, и обратно! Это было просто классное путешествие... Билет на самолёт Сухум-Воронеж стоил 26, мать его, рублей! А теперь пересечение 3 границ, жесть и жоп.па в полный рост, и т.д. и т.п., чо говорить, уже начинаешь украинцам завидовать с энтой ейропой (не точно, требует корректировки:)! Да лан, мож как-то всё устаканится, бум ещё с улыбкой вспоминать эти времена, главное успеть на ентот поезд попасть! 👍😁🤪

  • @nangelo0
    @nangelo0 3 ปีที่แล้ว +1

    Правильно я понимаю, когда я вставляю 4G модем в USB порт, то устройство распознаётся и как Mass Storage, и как ещё какой-то тип устройства одновременно? Как через куб сгенерировать проект, к примеру HID+Mass Storage?

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +2

      Через куб ни как. Есть на Хабре пример как это руками делается.

    • @nangelo0
      @nangelo0 3 ปีที่แล้ว +1

      @@VladimirMedintsev спасибо, поищу там

  • @АлександрСупов-ю4щ
    @АлександрСупов-ю4щ 3 ปีที่แล้ว +2

    Добрый день, как я понял можно прошить новой версией прошивку на stm32 просто закинув туда файл .bin?

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +1

      Ну в начале вам там надо еще немного кода дописать, а потом, можно.

    • @Вячеслав-к1е5е
      @Вячеслав-к1е5е ปีที่แล้ว

      @@VladimirMedintsev здравствуйте, Владимир мне сегодня пришла esp 32Wroom , я конечно этому очень рад, но с чего поступиться, ибо я вообще ламер😁, и меня кроме смартфона и этой платы нет, даже роутера🤔, вот я могу на этом модуле в связке с sad, или просто флешки сделать на базе этого модуля типо мини веб сервера?? И еще не знаю какой универсальный программатор к нему?? Подскажите, студенту, пж😊

  • @ivanivan3815
    @ivanivan3815 3 ปีที่แล้ว +2

    emfat "от Фирсова" успешно использую с 16 года, в статье на хабре есть оговорка:
    "Сразу предупрежу, мы не эмулируем запись на носитель. Наш «носитель» только для чтения. Это связано с повышенной сложностью контроля за формированием файловой таблицы." Функцию-пустышку emfat_write автор, несмотря на свои намерения "Возможно, в будущем будет найдено решение для корректной эмуляции записи", насколько я понял не дописал (не опубликовал?) и реализовать ее самому не очень просто. То есть запись в файлы со стороны хоста невозможна, и если-бы вы захотели, а самое главное смогли ;) это сделать было-бы круто. У меня в свое время не получилось..

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว

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

    • @ivanivan3815
      @ivanivan3815 3 ปีที่แล้ว

      @@VladimirMedintsev "Там в итоге еще вопрос будет кто у кого списывал." ;) . А поконкретнее не ткнете носом в какую сторону смотреть насчет "взял готовую реализацию от ARM"

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +2

      На официальном гитхабе ARM возьмите полную CMSIS, в ней каталог DAP/examples это исходный код программатора для NXP, он у них опенсорсный и в нем найдете шикарную библиотеку виртуального fat. Он у них файл пишешь и программатор на лету прошивает.

    • @ivanivan3815
      @ivanivan3815 3 ปีที่แล้ว

      @@VladimirMedintsev О, спасибо, не знал.

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว

      Я тоже не знал пока не прочитал на сайте ARM. Всегда думал там мусор всякий.

  • @АндрейИ-ф3л
    @АндрейИ-ф3л 3 ปีที่แล้ว +1

    Коллеги, у всех CUBEIDE нормально работает? У меня при конфигурировании выводов по три минуты над каждой операцией думает. Версия 1.6.0. Отзовитесь, пожалуйста.

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +2

      А CubeMX у вас до какой версии обновлен? Должен быть 6.2.0

    • @АндрейИ-ф3л
      @АндрейИ-ф3л 3 ปีที่แล้ว +1

      @@VladimirMedintsev , вот такая 6.2.0.202102191602
      CubeMX в моем случае встроен в CubeIDE.
      У вас работает?

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +2

      @@АндрейИ-ф3л Сейчас проверяю. У меня не было последнего обновления IDE сейчас обновляю.

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +2

      @@АндрейИ-ф3л Все работает нормально но при обновлении вылетел.

    • @АндрейИ-ф3л
      @АндрейИ-ф3л 3 ปีที่แล้ว

      @@VladimirMedintsev , отдельным CubeMX давно не пользовался. Вот обновил до 6.1.2 - тоже работает нормально.
      А в составе CubeIDE - жутчайшим образом тупит. Но раз у вас работает хорошо, значит это моя локальная проблема. Буду искать решение. Спасибо за помощь.

  • @Benidictich
    @Benidictich 3 ปีที่แล้ว +1

    Владимир, не могли бы вы, в одном из следующих видео упомянуть, хотя бы вскользь, о среде программирования Rust. А то, его позиционируют, чуть ли не как убийцу С/С++ для ARM. Лично я только начал изучать С для работы с Stm32, и тут, ползая по форумам наткнулся на панические вопли :"Бросайте свой С, все норм разработчики переходят на Rust!" Так вот теперь терзают сомнения - стоит ли дальше пыхтеть над С/С++?

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +2

      Вне всякого сомнения необходимо бросать все и переходить на популярные языки программирования, которые использует большинство разработчиков. Зачем? А для того чтобы пользоваться их советами опытом и наработками. Это прагматичный подход. Библиотеки и поддержка от ВСЕХ производителей микроконтроллеров на Си? Да на языке Си. 99% кода написанного под микроконтроллеры и размещенного на гитхаб тоже на Си? Но по мнению какого-то анонима все должны писать на Руст? Странное мнение.
      Но на самом деле проблема тут глубже. Проблема не в Русте и не в Си. Проблема в Вас. Если вы реально колеблетесь стоит ли осваивать Си, то лучше вам программированием не заниматься, Си прародитель многих языков и без него вам будет недоступен код написанный за десятилетия его существования.

    • @Benidictich
      @Benidictich 3 ปีที่แล้ว +1

      Спасибо за ответ. Да, побродив по форумам, тоже, пришёл к выводу, что новичкам лучше сначала освоить С. Больше информации и уроков доступно именно по этому языку. А если и захочется, потом, попробовать Rust, то знание С облегчит его освоение, так как они схожи.

    • @ShiloXyZ
      @ShiloXyZ 3 ปีที่แล้ว +1

      @@VladimirMedintsev Вот как раз с целью освоения Раста начал новый проект на нем. В крайнем случае напишу сложный функционал на С и вызову из Раста, все совместимо.

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +1

      @@ShiloXyZ Зачем нужен этот язык если "сложный функционал напишу на Си". Это теперь будет у меня как новый анекдот - Rust годится только для вызова Сишного кода. Очень мило и смешно. Спасибо, подняли настроение.

    • @ShiloXyZ
      @ShiloXyZ 3 ปีที่แล้ว +1

      @@VladimirMedintsev по тому что с наскока не осилить, а если не делать конкретный проект то и учить нет мотивации

  • @highvolthome
    @highvolthome 3 ปีที่แล้ว +1

    со студенчества занимался на 8-битных компах но о 8 битном фат впервые слышу! 😲
    а на ПК, х86 мсдос, была фат16...

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว

      Откройте английскую википедию и прочитайте. Variants 8-bit FAT, FAT12, FAT16 и так далее... Как бы было сказано что для небольших носителей.

    • @highvolthome
      @highvolthome 3 ปีที่แล้ว

      @@VladimirMedintsev я заметил что в Википедии вы показали что там есть упоминание, но я больше нигде не видел описания, в какой ОС это применялось?

  • @Leon-569
    @Leon-569 3 ปีที่แล้ว +1

    А можно виртуальный диск пустить по интерфейсу по FDD 3.5” 1.44? Что б комп его считал флоповодом , а то иногда нужно дискеты

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +1

      А купить не быстрее будет на том же алиэкспресс - SFR1M44-U100 Normal Version 3.5 Inch 1.44MB USB SSD FLOPPY DRIVE EMULATOR GOTEK
      a.aliexpress.com/_9ui1fW

    • @Leon-569
      @Leon-569 3 ปีที่แล้ว +2

      @@VladimirMedintsev )), ну про этот эмулятор я знаю, )) и купить всегда быстрее, U100 сам производитель рекомендует 2 штуки покупать (один для работы в оборудовании, другой в компе для подготовки и для записи флешки), в отличии от предыдущих моделей - где виртуальные дискеты подготавливались в программе. Ставятся в старые ЧПУ станки, где управляющая программа на дискетах. Но все равно спасибо, интересно, лайк однозначно

  • @СергейПетров-ц3ъ
    @СергейПетров-ц3ъ 3 ปีที่แล้ว +2

    А почему FAT8, а не 32? Будет работать на Win10?

  • @davidkain9046
    @davidkain9046 3 ปีที่แล้ว +2

    А под scsi шину можно сделать ?

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +1

      Можно и под scsi.

    • @davidkain9046
      @davidkain9046 3 ปีที่แล้ว

      @@VladimirMedintsev речь про эмуляцию устройства на шине scsi с стм32.а на другом конце сд карта или жесткий диск сата

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +1

      Суть шины от этого не меняется. Сделать можно что угодно. И на более примитивных процессорах делали. Только вот смысла нет, а сделать можно что угодно.

    • @ГеннадийГром-в8ю
      @ГеннадийГром-в8ю 3 ปีที่แล้ว

      Напомнило из военной кафедры, прошу строго не ругать: "Можно Машку, за ляжку, а у нас разрешите!" Прописать ответ устройства и протокол обмена, как говаривали в наше "модемное" время: "Как два байта переслать!" Было бы желание, а реализацию накорябать - надо ток почитать доки на интефейс, напрячь "коробушку", и воочию представить - что оно из себя представляет, и на кой оно мне надо?! 👍😁🤪

  • @ibrag2012
    @ibrag2012 3 ปีที่แล้ว +5

    Зіткнувся з таблицею переривань: має бути якась обгортка, а взагалі ідея прекрасна.

  • @olexkov4643
    @olexkov4643 3 ปีที่แล้ว

    Почему не пользуетесь СubeIDE?

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +2

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

    • @СергійДзюбленко
      @СергійДзюбленко 3 ปีที่แล้ว

      @@VladimirMedintsev Тоже это заметил, агитируете за CubeIDE, используете везде Keil в примерах).

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +1

      @@СергійДзюбленко Начнем с того, что не агитирую, а информирую народ о наличии STM32CubeIDE и ее возможностях. Ей посвящено сколько? Два ролика на канале? Из нескольких сотен роликов. Забавно...
      Ну а если серьезно, то никто из вас, за исключением двух или трех подписчиков ни разу не видел моего реального кода и реальных проектов. Из живых проектов вообще на канале показано только вскользь и только три ("мозгоправка" без кода, GSM модуль с кодом в Keil и модуль затопления без кода).
      Я к чему, да к тому что никто из вас не знает что именно, какую IDE я использую в реальной работе. Ходят слухи что это может быть Segger Studio.
      А что касается показанного в роликах Keil, так по этому поводу я писал наверное раз уже 40-50 - большинство обучающих видео в интернете показывают Keil. И я буду показывать Keil. Ну и может мне немцы за это платят, никто же не знает...

    • @Βιτάλης-χ1π
      @Βιτάλης-χ1π 3 ปีที่แล้ว +1

      Как про меня то кейл лучше приятнее что-ли

    • @olexkov4643
      @olexkov4643 3 ปีที่แล้ว

      @@Βιτάλης-χ1π
      Я пользовался Keil, до него - IAR(в основном писал код на asm), но в итоге остановился на СubeIDE...как по моему вполне годный бесплатный софт.Но (имхо) на под Linux CubeIDE работает стабильней.
      Не сказал бы что Keil или IAR удобней...в СubeIDE все в одном месте и редактор и генератор кода да и другие фишки.

  • @NICHYPARUK
    @NICHYPARUK 3 ปีที่แล้ว +1

    Владимир, хочу поблагодарить Вас за видео. Просмотрел и тут же повторил, и всё заработало как у Вас. Но почему же не сказали о главном? В статье на Хабре и на easyelectronics автор постоянно упоминает о том, что носитель только для чтения. В видео об этом нет ни слова. Возможно у Вас получилось это сделать?
    Вот что пишет автор:
    "Сразу предупрежу, мы не эмулируем запись на носитель. Наш «носитель» только для чтения."
    "Функцяи - emfat_write пустышка, которую, однако, мы вызываем, если от ОС приходит запрос на запись сектора."
    На вопрос можно ли сделать работающую функцию записи, автор ответил:
    "К сожалению, качественного решения нет.
    emfat, позволяет, например, отслеживать перезапись существующего файла. Данное свойство я использовал для перешивки. Но это работает до тех пор пока драйвер хоста использует последовательное размещение кластеров. Сделать как-то иначе в теории он может.
    Другой подход - контролировать изменение файловой таблицы синхронно с записью, которую проводит хост. Это должно работать устойчиво на большинстве платформ, но есть масса способов как "уронить" устройство. Например, начать копирование нескольких файлов или дифрагментацию..."

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +3

      Если стоит задача что-то уронить... Тут я бессилен. А по факту я хотел показать куда копать. Я не фанат давать готовые решения, у людей должна и своя голова работать. Но ведь есть и рабочий пример с записью. И прекрасно работает и прочитав его код вы узнаете как доделать emfat, ну если после этого захотите доделывать. Получить рабочий код достаточно просто.
      1. Заходите на официальный гитхаб ARM.
      2. Качаете последнюю версию CMSIS.
      3. Заходите в папку DAP, там внутри папка Example.
      4. В ней лежит исходный код программатора поддерживающего drag and drop файлы прошивки. Т.е. он определяется как mass storage и воспринимает копирование файла на виртуальный диск при этом прошивает микроконтроллер.
      5. Берете из этого проекта 3 файла и получаете удовольствие.
      Там же хороший парсер hex файлов лежит...
      Не благодарите.

    • @DRDRPETR
      @DRDRPETR 3 ปีที่แล้ว

      @@VladimirMedintsev google - DAPLink

  • @prayashshrestha1725
    @prayashshrestha1725 3 ปีที่แล้ว +2

    Please provide english subtitles in your video

    • @VladimirMedintsev
      @VladimirMedintsev  3 ปีที่แล้ว +1

      Sorry I don't have time to do this. But you have to use code and library. Link in the description.

  • @nangelo0
    @nangelo0 3 ปีที่แล้ว +1

    Полезная функция доступа к логам. Я второй месяц бьюсь с USB CUSTOM HID DEVICE. Тяжело идёт. Неужели кто-то может с этим всем стеком детально разобраться? А библиотека от СТМ настолько абстрагировалась от байтов/пакетов, что непонятно зачем все эти функции нужны и как ими пользоваться. Дескриптор репорта такой хрупкий и противоречивый, набираешь поля буквально наугад без возможности нормально отладить эти поля. Устройство просто не определяется и никакой дебаг информации взять негде, или просто я не знаю где её искать. В общем USB-это ужас с такой же ужасной документацией.

    • @ГеннадийГром-в8ю
      @ГеннадийГром-в8ю 3 ปีที่แล้ว +2

      Вот именно так! Спецификация USB нам была послана с Альдебарана, но до нас дошли лишь обрывки той доки, вот с тех пор все и бьются над этой щепоткой информации, и лишь люди, с повышенной чувствительностью к "силе" могут как-то, что-то, почему-то, накорябать! Хоть это и работает через пень-колоду, ну хоть как-то! 👍😁🤪

  • @Maxnicknameable
    @Maxnicknameable 3 ปีที่แล้ว +3

    Интересно, но пока сложно(

  • @trollquantum
    @trollquantum 3 ปีที่แล้ว +2

    Цікаво лайк сап

  • @MrAndops
    @MrAndops 3 ปีที่แล้ว +2

    Спасибо