Подключаю IPS дисплей и SD карту к микроконтроллеру STM32F401CCU6 и смотрю видео

Sdílet
Vložit
  • čas přidán 6. 09. 2024
  • В этом видео подключу дисплей и SD карту к микроконтроллеру STM32F401CCU6. Протестирую скорость чтения с карты и скорость заливки экранной области дисплея. Выведу масштабируемые jpg картинки из памяти и карты на экран дисплея, а потом даже посмотрю видео :) Присоединяйтесь, будет интересно! :) Демонстрация с 8:50, но лучше посмотреть все видео от начала и до конца :)
    После оптимизации со звуком: • Воспроизведение видео ...
    Поддержать канал:
    donate.qiwi.co...
    yoomoney.ru/to...
    Покупал на Алиэкспресс:
    программатор ST-Link alii.pub/6fdujg
    плата разработки stm32f401ccu6 alii.pub/6fdumy
    плата разработки stm32f411ceu6 alii.pub/6fduop
    аудио-ЦАП pcm5102a alii.pub/6fdurf
    макетная плата alii.pub/6fduuq
    провода для макетной платы alii.pub/6fduwo
    3.2" дисплей с тачскрином ILI9341 spi alii.pub/6fdvcf
    1.3" дисплей ST7789 spi alii.pub/6fdvks
    модуль микро SD карты alii.pub/6fdvoh
    #stm32
    #программирование
    #видео

Komentáře • 58

  • @VadRov
    @VadRov  Před 2 lety

    Воспроизведение avi со звуком после оптимизации: czcams.com/video/ICB8ftw6iYY/video.html
    Подключение дисплея st7789 по spi c dma на CMSIS и LL рассмотрено в видео czcams.com/video/8tIJ16riJqo/video.html
    Подключение SD-карты по spi с dma на CMSIS и LL рассмотрено в видео czcams.com/video/z99bLhlnukM/video.html
    Подключение кнопок на таймере с прерыванием на CMSIS и LL с устранением дребезга, автоповтором и буферов ввода (прямо как на PC 😉) рассмотрено в видео czcams.com/video/e-w5HS75neg/video.html
    Файловый менеджер (структура и код) рассмотрен в видео czcams.com/video/4c_PwnasQvs/video.html
    Подключение аудио-цап (audio dac) по интерфейсу i2s на CMSIS и LL рассмотрено в видео czcams.com/video/p0IhX-XiiiQ/video.html
    К каждому из перечисленных видео есть ссылка в описании на проект для скачивания.
    Поддержать канал:
    donate.qiwi.com/payin/VadRov
    yoomoney.ru/to/4100117522443917
    Покупал на Алиэкспресс:
    программатор ST-Link alii.pub/6fdujg
    плата разработки stm32f401ccu6 alii.pub/6fdumy
    плата разработки stm32f411ceu6 alii.pub/6fduop
    аудио-ЦАП pcm5102a alii.pub/6fdurf
    макетная плата alii.pub/6fduuq
    провода для макетной платы alii.pub/6fduwo
    3.2" дисплей с тачскрином ILI9341 spi alii.pub/6fdvcf
    1.3" дисплей ST7789 spi alii.pub/6fdvks
    модуль микро SD карты alii.pub/6fdvoh

  • @nikeperson5745
    @nikeperson5745 Před 2 lety +3

    Десять плюсиков .... за хорошую работу и прекрасное изложение материала

  • @user-gq4nl4yr6w
    @user-gq4nl4yr6w Před 6 měsíci

    Завидую вашим навыкам белой завистью. Очень круто заставить недорогие железки хорошо работать да еще и на стм32. Супер. Смотрю Ваши видео.

    • @VadRov
      @VadRov  Před 6 měsíci +1

      Тогда уж до кучи надо завидовать летчикам или космонавтам 😉 В этом нет ничего сложного (это не про летчиков и космонавтов). Всего лишь желание овладевать соответствующими знаниями. Информации сейчас просто море. Если есть острая необходимость или стремление в чем-то разобраться, то все возможно при наличии желания и усидчивости.

  • @user-nz6dv1qw2z
    @user-nz6dv1qw2z Před 2 lety +2

    Программирование -это конечно очень интересно,я на грани )

  • @MSaidu-sj6vx
    @MSaidu-sj6vx Před rokem

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

  • @ismailalhajji
    @ismailalhajji Před 7 měsíci

    Thank You VADROV

  • @MAGDEBACH
    @MAGDEBACH Před 8 měsíci

    Блин вот валяются 4 дисплея, и со всеми нескладуха выбрал тот что попроще SSD1332 там COMMAND TABLE в даташите вида таблица где первая колонка 15 А[0:6] B[0:6] вторая колонка это команда(Set Column Address) .....
    короче пока писал свой комментарий походу начал врубаться) подаём на один из пинов 1 или 0 и дисплей видит то, что залетает к нему по SPI как команду/как данные. сначала мы закидываем начальную конфигурацию дисплея, снимаем единицу и гоним по SPI бесконечным потоком наши биты которые заполняют графическую память под самую крышку и тут-же выводятся на дисплей, пока не прилетит команда на стирание или перезапись графической памяти. Вот что бывает когда каналы умных людей смотришь😁

  • @ar_oak
    @ar_oak Před rokem +1

    Круто! Лайк + подписка!

  • @alexshu1609
    @alexshu1609 Před 2 lety

    Низкий поклон за сорци и демонстрацию

  • @sergshramm
    @sergshramm Před měsícem

    Вещай дальше. Смотрим тебя внимательно.

  • @allallall2321
    @allallall2321 Před 2 lety +1

    Здравствуйте можете пожалуйста посоветовать литературу или сайт для изучения STM 32 той платки которая у Вас ??? Заранее спасибо вижу Вы очень круто шарите в STM 32 и литературу или сайты для изучения СИ для работы с STM32 я начинающий))

    • @VadRov
      @VadRov  Před 2 lety +4

      С - неплохой сайт cppstudio.com. Основной упор делайте на булеву алгебру и указатели. Если указатели и операции над ними не поймете, то дальше двигаться большого смысла нет. А микроконтроллер лучше изучать по сервис мануалу (Reference Manuals) от производителя, т.е. ST: www.st.com/resource/en/reference_manual/rm0368-stm32f401xbc-and-stm32f401xde-advanced-armbased-32bit-mcus-stmicroelectronics.pdf
      www.st.com/resource/en/datasheet/stm32f401cc.pdf
      Тяжелое чтиво, но официальное, т.е. точное и подробное. Из того, что видел на русском языке - не все точное, потому что передирают друг у друга и ошибки только накапливают. Если Вы новичок, то начните просто с программ С в бесплатной среде, например, Visual Studio Code или Visual Studio. А потом переходите к микроконтроллерам. Хотя, параллельно можете осваивать какой-нибудь интерфейс или какую-нибудь периферию. Иначе увязните.
      По платке можно посмотреть здесь - github.com/WeActTC/MiniSTM32F4x1
      Там же сказано про пиратские копии.
      Совет. Если что-то где-нибудь копируете (кусок кода), то постарайтесь его понять, а потом еще и модифицировать. Это будет уже, можно сказать, хороший уровень. Если же код серьезно оптимизируете (по скорости исполнения и/или размеру), то это высший пилотаж 😉

    • @allallall2321
      @allallall2321 Před 2 lety +1

      @@VadRovТеперь понял. Я Вам очень благодарен за содержательный и позитивный ответ! Спасибо буду все изучать ( азы так сказать:)))

    • @allallall2321
      @allallall2321 Před 2 lety +1

      @@VadRov +++++++ :)))

  • @allallall2321
    @allallall2321 Před 2 lety +1

    Видел обзор где то говорят что Куб версии 1.8 уже не дает записать STM 32 с Алика? или у Вас все ОК?

    • @VadRov
      @VadRov  Před 2 lety +2

      Это неправда. Cube Ide - это, во-первых, среда разработки. Да, через нее можно шить, по-моему, только в режиме отладки (раньше по крайней мере так было, а сейчас - не знаю, я через куб не шью). Нет там таких ограничений. CubeProgrammer тоже шьет все подряд. Да, что далеко ходить, у меня китайский "свисток" (ST-Link) и тот прошивку свою обновляет. Так что, информация неверная.

  • @user-md4cs6oo8c
    @user-md4cs6oo8c Před rokem

    А потянет 32F401 4 шт. мелких дисплеев для вывода меню управления простенького прибора? Составить панель из 4 шт. дешевых OLED 1.5" Видео не надо выводить. Просто отображать меню и режимы работы прибора.

    • @VadRov
      @VadRov  Před rokem +1

      Должно потянуть. На гитхабе версия драйвера 1.4 Можно "повесить" все 4 дисплея на 1 spi. Главное при этом, чтобы на модуле дисплея был распаян вывод CS. Создаем 4 обработчика дисплея. И работаем с каждым из них. Перед отправкой данных кроме статуса дисплея можно проверить включено spi или нет. Если включено, то оно занято и с отправкой следует повременить.

  • @vsosacordeev
    @vsosacordeev Před 8 měsíci

    на прямую как присобачить sd карту без модуля!? я слышал через fat32 гоняют.

    • @VadRov
      @VadRov  Před 8 měsíci

      Так модуль там и не нужен по сути. Модуль всего лишь роль разъема для подключения SD карты выполняет. Я в самоделках часто просто переходник SD->microSD ("штуковина" такая пластиковая) запаиваю. И все работает. А FAT32 я тоже гоняю. Библиотека от ChaN.

    • @vsosacordeev
      @vsosacordeev Před 8 měsíci +1

      Ну слава богу обрадовал! Я уж было чуть, в печаль не ушол, у кого не посматрю самоделки , все с этими модулями тресуться! Спасибо что уважил, добрый человек@@VadRov

    • @VadRov
      @VadRov  Před 8 měsíci

      @@vsosacordeev , с модулями трясутся пользователи ардуино. Там стоит микросхема преобразования 5В уровней к 3.3В и обратно. В stm32 такой проблемы нет.

    • @vsosacordeev
      @vsosacordeev Před 8 měsíci

      😆@@VadRov

  • @adidaspumovich9890
    @adidaspumovich9890 Před rokem

    Доброго дняю А можно исходники в личку. Спасибо

    • @VadRov
      @VadRov  Před rokem

      Приветствую. Есть видео на канале о проекте видеоплеера. Там есть ссылка на гитхаб с исходниками: czcams.com/video/sC5nm7vdN6k/video.html

  • @user-cb9zn1kq1l
    @user-cb9zn1kq1l Před rokem

    Здравствуйте, как связаться для консультации?

    • @VadRov
      @VadRov  Před rokem

      Здравствуйте. Почта в разделе "О канале".

    • @user-cb9zn1kq1l
      @user-cb9zn1kq1l Před rokem

      @@VadRov , есть почта mail или ватсап?

    • @VadRov
      @VadRov  Před rokem

      @@user-cb9zn1kq1l ,

    • @user-cb9zn1kq1l
      @user-cb9zn1kq1l Před rokem

      @@VadRov спасибо напишу

  • @dizogdizog2591
    @dizogdizog2591 Před 7 měsíci

    +

  • @LeenLeen-xt3wg
    @LeenLeen-xt3wg Před 5 měsíci

    Hallo
    can you please share just #include "file_buffer.h".

    • @VadRov
      @VadRov  Před 5 měsíci +1

      Hello. The functions in this file are just used to implement buffered reading from a file/stream. Here (in this demo) it's redundant. It is much faster to read data from a file when playing a video. The video player source code is available on my github: github.com/vadrov/stm32f4_fast_optimized_avi_player_osd

    • @LeenLeen-xt3wg
      @LeenLeen-xt3wg Před 5 měsíci

      ​@@VadRov
      I tried to read the code many times to convert from ili9341 to st7789
      The code is very difficult as a beginner. Can you help me in another way?
      The code is not publishable

    • @VadRov
      @VadRov  Před 5 měsíci

      @@LeenLeen-xt3wg Did I understand correctly that you want to create a video player project with a display on the st7789 controller instead of a display on the ili9341 controller?

    • @LeenLeen-xt3wg
      @LeenLeen-xt3wg Před 5 měsíci

      @@VadRov yes
      If you do not want to share the code
      I'm also glad to meet you too
      Frankly, I only wanted one file "file_buffe.h" for programming purpose
      But I was interested in learning more about your project

    • @VadRov
      @VadRov  Před 5 měsíci

      @@LeenLeen-xt3wg , what is the resolution of your display (there are st7789 displays with a resolution of 240x240 and 320x240)? All project code is freely available. The specified file, as noted above, is not required for this project at all.

  • @openFrimeTv
    @openFrimeTv Před rokem

    а кодом вы не делитесь?

    • @VadRov
      @VadRov  Před rokem +2

      О драйвере дисплея и файловом менеджере выложены видео, в описании которых есть ссылки на проекты. Для просмотра видео всего лишь надо:
      1. Подключить к проекту декодер jpeg (libjpeg или от Chana, или иной);
      2. Написать парсер для контейнера avi;
      3. Скармливать декодеру фреймы с изображениями, позицию которых в файле будет определять парсер, и выводить через драйвер на дисплей построчно либо "поквадратно" (в зависимости от декодера).
      Если с п.1, 2, 3 возникают сложности, то зрителю рекомендуется подписаться на канал и последовательно продвигаться к повышению уровня "кодотворчества". На все, что показано в "затравочных" видео обязательно будет со временем соответствующий код с пояснением (видео). По статистике, видео без кода и пояснений собирает больше просмотров, лайков и подписчиков, чем видео с пояснениями и кодом. Такая она суровая статистика.

    • @openFrimeTv
      @openFrimeTv Před rokem

      @@VadRov ну не скажите. я во всех своих роликах выкладываю исходники, мало ли человек захочет повторить)

    • @VadRov
      @VadRov  Před rokem +2

      Звучит, как реклама. 😉 Одно дело программить на готовых решениях (библиотеках), а другое - эти самые решения создавать. Разница во временных затратах просто колоссальная.

    • @openFrimeTv
      @openFrimeTv Před rokem

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

    • @VadRov
      @VadRov  Před rokem +2

      @@openFrimeTv , Вы мою мысль не поняли, хотя, я, вроде пояснил доступно. Я не против выкладывать, но выкладывать последовательно, что и делаю, и в этом суть. Например, показал в "затравочном" видео музыкальный плеер. Чтобы написать плеер надо:
      1. Уметь подключать и управлять экраном - видео про написание драйвера для дисплея с кодом.
      2. Уметь пересылать команды плееру через кнопки - видео про кнопки с кодом.
      3. Уметь управлять звуком - видео про внешний ЦАП с кодом.
      4. Уметь работать с SD - видео про драйвер SD с кодом.
      5. Уметь читать файлы с SD и работать с файловой системой FAT, организовывать доступный выбор файлов - видео про файловый менеджер с кодом.
      6. Уметь организовать интерфейс через сенсорный экран - видео про написание драйвера сенсорного экрана с примерами.
      ...
      ...
      А еще кодеки, контейнеры (их тьма), обработчики и т. д.
      Так вот, 6 пунктов уже есть на канале: на все есть видео и проект для ознакомления (исходник по-Вашему, а также моя интеллектуальная собственность). Каждый пункт, по сути, уже самостоятельный серьезный проект, так как требует углубленного изучения спецификаций МК, его периферии, подключаемых устройств с последующей разработкой и *отладкой* ПО.
      А по-Вашему, я должен сразу бестолково выложить весь проект, собрать 1000 просмотров, 20 лайков и 5 комментариев, а в течение пары лет разрабатывать следующий проект, чтобы выпустить следующее видео. 😉

  • @porese
    @porese Před 2 lety

    +. 411 наверное шустрее был бы, кадров 20 в секунду.

    • @VadRov
      @VadRov  Před 2 lety

      Да, и 401 при оптимизации 15-16 выдает. Кстати, 401 до 100 МГц легко разгоняется. 😉

  • @user-ne6gm2ub5e
    @user-ne6gm2ub5e Před rokem

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

    • @VadRov
      @VadRov  Před rokem

      По сути, если съемка сопровождается закадровым голосом автора видео и не на весь экран, а сама демонстрация - не цель, то можно. Иначе все обзоры фильмов можно подвести под публичную демонстрацию с нарушением авторских прав.🙂 Я так думаю.

  • @squidyPet
    @squidyPet Před rokem

    Ниочем

  • @ledrezistor3749
    @ledrezistor3749 Před rokem

    ДисплЕй блт

  • @user-mh3sb1oq4g
    @user-mh3sb1oq4g Před 8 měsíci

    +

    • @VadRov
      @VadRov  Před 8 měsíci +1

      Ай, спасибо. Ай, уважил под Рождество ✌Сразу видно, что смотрит и слушает человек 👌

  • @bujlbl_b_6ok241
    @bujlbl_b_6ok241 Před rokem

    +