STM32 + Дисплей ST7789. Быстрая и компактная библиотека.

Sdílet
Vložit
  • čas přidán 26. 01. 2020
  • В ролике рассказывается о подключении дисплея с контроллером ST7789 к микроконтроллеру STM32.
    Канал в телеграмм - t.me/vladimir_medintsev
    Канал Яндекс.Дзен - zen.yandex.ru/vladimir_medintsev
    Канал на RuTube - rutube.ru/channel/1797552/
    Канал на CZcams - / vladimirmedintsev
    ------------------------------------------
    Если вы хотите поддержать автора канала номер карты Сбер:
    2202-2023-2480-4008
    ------------------------------------------
    STM32 + Дисплей ST7735 - • STM32 + Дисплей ST7735...
    STM32 + Nokia1202 - • STM32 + Nokia1202 Сбор...
    Библиотека - yadi.sk/d/_tU-2lNbMG-jUA
  • Věda a technologie

Komentáře • 171

  • @nicolasomsk
    @nicolasomsk Před 4 lety +12

    Спасибо за ваш труд. Именно таким должен быть контент. Именно таким должен быть интернет-библиотекой знаний, а не праздным развлекаловом.

  • @admin_of_youtube
    @admin_of_youtube Před 4 lety +1

    супер! заливка градиентом очень понравилась, никогда раньше не использовал. очень красиво!

  • @sozdatelEd
    @sozdatelEd Před 4 lety +6

    есть ещё пара моментов для ускорения работы библиотеки:
    1. функции HAL_GPIO_WritePin(...); заменить на:
    #define LCD_data GPIOA->BSRR = GPIO_BSRR_BS10; // DC лог.1 - данные в дисплей пойдут
    #define LCD_command GPIOA->BSRR = GPIO_BSRR_BR10; // DC лог.0 - команда в дисплей пойдёт
    заменить в соответствии с Вашей распиновкой.
    2. Большую часть времени мы в дисплей вываливаем буфер данных. При вызове функции ST7789_SendData (uint8_t data); каждый раз вызывается функция HAL_GPIO_WritePin(DC_GPIO_Port, DC_Pin, GPIO_PIN_SET);, которая переводит ножку LCD_DC в лог.1 для того чтобы дисплей понял что к нему по spi будут поступать данные. Так вот эту функцию можно перенести в конец функции ST7789_SendCmd (uint8_t Cmd);
    3. Функцию ST7789_SendData (uint8_t data); сделать __inline

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

    Спасибо , надо попробовать эти десплеи, достаточно не плохие они

  • @marsm6619
    @marsm6619 Před 3 lety +1

    спасибо за прекрасный обзорчик

  • @viktors2856
    @viktors2856 Před 4 lety

    Спасибо.!!!

  • @CadmiumUA
    @CadmiumUA Před 4 lety +5

    Управление пином DC_Pin надо производить только в функции ST7789_SendCmd, притянул пин на землю, отправил команду, поднял пин. Тогда ST7789_SendData сможет отсылать данные непрерывно, не отвлекаясь на дерганье пином.

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +1

      О, спасибо, хорошая идея. Сам не догадался. Вот чем полезно иногда людям показывать...

  • @RadioTexnik
    @RadioTexnik Před 4 lety +1

    Спасибо за обзор! Прикупим)

  • @user-px4tj9cp9u
    @user-px4tj9cp9u Před 3 lety +2

    Подскажите пожалуйста что купить ST7789 или IL9341? В чём разница между ними?

  • @cyberzx
    @cyberzx Před 4 lety

    о, недавно для него писал библиотеку. интересный дисплей

  • @muxx9992
    @muxx9992 Před 3 lety +1

    Спасибо Владимир за ролик, код и отличный канал. Реально помогло в написании драйвера к 1.3" дисплею для TM4C123. В сточках 116 и 118 файла st7789.c пожалуйста исправьте "=" на "|=".

  • @NoviSavvy
    @NoviSavvy Před 8 měsíci +2

    Здравствуйте! Пишет, не найден файл
    Всё перекопал, нигде не могу найти. Подскажите, что сделать, где его скачать?

  • @sem4274
    @sem4274 Před 4 lety

    Прикольно. Ещё бы самому научиться все это собирать, паять... Эхх. Лайк.

    • @user-tz8cu7pe9d
      @user-tz8cu7pe9d Před 4 lety +1

      Вот это как раз не проблема!

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

    Сколько fps Вы получили?

  • @artyomg7275
    @artyomg7275 Před rokem

    Здравствуйте. У меня дисплей на чипе Дисплей ST7789V. Стоит на электронной нагрузке Atorch DL24. Так вот в последнее время он стал показывать просто белый цвет, без изображения. При сбросе питания изображение появлялось, но не на долго, так что на плохой контакт не похоже. Продавец с Али сказал, что надо перепаять шлейф к плате. Я пропаял - дисплей проработал пару дней и потом опять стал белым. Крутил, вертел, нажимал везде - изображение не появлялось, все пиксели белые. Теперь продавец говорит, что надо купить новый дисплей. Я в этом вопросе не разбираюсь. Подскажите проблема в дисплее или в контроллере на самой плате? Сама нагрузка работает. При подключении через блютус все функции работают. Но хотелось бы восстановить изображение, т.к. через блютус не удобно.

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

    У вас на 4:15 показан переходник SSOP24-DIP с шагом 0.65. У дисплея на шлейфе шаг 0.7 и оно не бьётся. Без оловянной сопли не припаять. Не подскажете, где, кроме как изготавливать самостоятельно, можно взять что-нибудь подобное, но с шагом 0.7 ?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +1

      #Aliexpress 27,10 руб. 11%OFF | diymore Multiple 0.5/0.7/0.8/1.0mm Pitch TFT LCM LCD Adapter Board FPC-50 Board SMD To DIP
      a.aliexpress.ru/_eMShEs

  • @BalabayUA
    @BalabayUA Před rokem +2

    Не понял откуда такие тормоза, но в датшите минимум Serial clock cycle = 16 ns. Т.е. частоту CLK можно поднимать до 62,5 МГц. Чтобы обрисовать все пикселя экрана на этой частоте нужно 240*240*16*(16 *10^-9) = 14.7 ms (67.8 Hz).
    И в "библиотеке" DC_Pin устанавливается не дожидаясь окончания предыдущей передачи по SPI. А ведь ST7789 фиксирует D/C при передаче восьмого (последнего) бита. В SPI отправляются данные без анализа TXE бита, закомектированное управление CS лучше не включать, поднимается не глядя на бит окончания передачи BSY...
    Но ведь работает как-то, значит и так сойдет :)

  • @user-bl1uv9mg4x
    @user-bl1uv9mg4x Před 4 lety

    Добрый день. Не планируете делать видео на тему работы с mbed-os ? В частности ее портирование на контроллеры.

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety

      По этой теме роликов точно не будет. Мы эту ОС не используем и не планируем.

  • @user-xw5ob8qj7f
    @user-xw5ob8qj7f Před 2 měsíci

    а можно подключить к расбери пай, если да то как?

  • @konstantin7170
    @konstantin7170 Před 4 lety

    Владимир , вы не подскажите, где я могу найти для этого дисплея пользовательский блок для программы FLprog?

  • @87Spectr
    @87Spectr Před 4 lety +1

    Владимир, спасибо за обзор! Вы не подскажете как spi в хале настроить с Вашей библиотекой? Я пытаюсь запустить этот дисплей на стм. Смотрю осциллографом - clk и данные есть. ..а дисплей не работает. Но на ардуино норм - работает.

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

      Ну скорее всего у вас неверно настроено CLKPhase
      hspi1.Instance = SPI1;
      hspi1.Init.Mode = SPI_MODE_MASTER;
      hspi1.Init.Direction = SPI_DIRECTION_2LINES;
      hspi1.Init.DataSize = SPI_DATASIZE_8BIT;
      hspi1.Init.CLKPolarity = SPI_POLARITY_HIGH;
      hspi1.Init.CLKPhase = SPI_PHASE_2EDGE;
      hspi1.Init.NSS = SPI_NSS_SOFT;
      hspi1.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_2;
      hspi1.Init.FirstBit = SPI_FIRSTBIT_MSB;
      hspi1.Init.TIMode = SPI_TIMODE_DISABLE;
      hspi1.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
      hspi1.Init.CRCPolynomial = 7;
      hspi1.Init.CRCLength = SPI_CRC_LENGTH_DATASIZE;
      hspi1.Init.NSSPMode = SPI_NSS_PULSE_ENABLE;

    • @87Spectr
      @87Spectr Před 4 lety +1

      @@VladimirMedintsev спасибо! Ваша догадка оказалась верна. Работает. Скажите, пож-та, не подскажете как самым простым путем добавить индикацию букв и цифр?

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

    Кстати, использование DMA сильно ускорит отправку данных в экран.

  • @ivanrusev2270
    @ivanrusev2270 Před 2 měsíci

    А скажите как узнать какой у меня графический дисплей если у меня 1.8TFT 128x160?

  • @kbv1972
    @kbv1972 Před 4 lety

    Вы всё таки переделали передачу по SPI после видео с экранчиком ST7735? Да, там было тормознуто и глючно)) Вечером попробую этот вариант, спасибо. Кстати все равно медленно рисует буквы, я добавил вывод символов не точками, а построчно (строка подготавливается в буфер и передается одним вызовом) - ну кое что.

  • @fly8r358
    @fly8r358 Před 4 lety

    За видео спасибо. Но хотелось бы понять, вы выпилили все, что касается шрифтов. А как рисовать строки тогда?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety

      Я знакогенератор допиливал уже после того как было сделано это видео. Видео появляются на канале с задержкой до 3х недель. А знакогенератор я взял из библиотеки нокиевского дисплея и немного его переработал.

  • @user-us4vm6bm9o
    @user-us4vm6bm9o Před 3 lety

    Если нет возможности выбирать дисплей сигналом CS, то дисплей один всегда занимает весь интерфейс SPI, как я понимаю, и другие SPI-устройства к этому интерфейсу подключить уже нельзя. Нашел подсказку - на шлейфе есть полноценный CS, подключенный на плате к GND. Его можно взять оттуда, предварительно отключив от GND. На мой взгляд, хороший вариант - перепаять дисплей со шлейфом на свою нормально разведенную плату со всеми нужными сигналами. Спасибо вам за вашу работу.

    • @user-fs9pw6kk2d
      @user-fs9pw6kk2d Před 3 lety

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

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

      Или поставить один единственный полевик, который будет отключать линию CLK от общей SPI шины, когда обращение идёт к другому устройству.

  • @alexanderfox4678
    @alexanderfox4678 Před 4 lety

    Добрый день! А есть ли подобные дисплеи с сенсорным экраном, желательно меньшего размера даже? Никто не использует?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety

      Сенсорную панель всегда можно купить отдельно. Они продаются и доступны.

    • @alexanderfox4678
      @alexanderfox4678 Před 4 lety

      @@VladimirMedintsev посоветуете где посмотреть миниатюрные не более 0,9 дюйма или менее того. Мне идеально подошел бы экран от Mi Smart Band, но не могу я их найти, не продают. Сижу эти часы разбираю, чтобы посмотреть что там.

  • @stells47
    @stells47 Před 4 lety +1

    где за 86 рублей купить? на али по такой цене не нашел,минимум 120 с доставкой.

  • @user-cp123pc5tk8d
    @user-cp123pc5tk8d Před 4 lety +3

    10:10 - а почему через дэфайн не сделали? Пример хорошего тона , все аппаратнозависимые команды лучше делать через дэфайн . Тогда просто в начале файла меняешь значение , и по коду дальше везде меняется. Ну и меньше ошибок из-за этого.

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +3

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

  • @ugene4063
    @ugene4063 Před 2 lety

    под ST7789V код не работает

  • @user-gn5uw7ou8y
    @user-gn5uw7ou8y Před 2 lety

    Доброго времени суток, Владимир. В мануале к моему дисплейчику (mono-oled 1306) пишут якобы в режиме 3-проводного SPI "only write operations are allowed". Да, команды и данные я отправить могу, как и хотелось, но смущает это "only". Что ещё можно послать на контроллер дисплея?

    • @user-gn5uw7ou8y
      @user-gn5uw7ou8y Před 2 lety

      "Under serial mode, only write operations
      are allowed." Вот точная цитата. Знатоки помогайте :)

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

      @@user-gn5uw7ou8y Это значит что только операции записи доступны. А чтение данных из экрана НЕ доступно.
      Только запись, нет чтения. Ну очевидно же.

    • @user-th9qt6od7t
      @user-th9qt6od7t Před 5 měsíci

      так а зачем с него читать? Это ж не камера

  • @brenkovd
    @brenkovd Před 3 lety

    Расскажите как подружить с операционной системой это дело ? Пока что библиотека работает корректно в блоке taskENTER_CRITICAL .

    • @VladimirMedintsev
      @VladimirMedintsev  Před 3 lety

      Никаких дополнительных мер к тому, чтобы эта библиотека нормально работала во FreeRTOS предпринимать не надо. Только замените HAL_Delay на osDelay и будет великое счастье.

    • @brenkovd
      @brenkovd Před 3 lety

      @@VladimirMedintsev Спасибо, попробую. Учусь программировать, и решил сразу организовывать программу с использованием ОС, все таки думаю при использовании STM32 всегда применять ОС.

  • @akvilion7365
    @akvilion7365 Před 4 lety +4

    Что не понравилось в библиотеках на ST7789 так это вывод текста. Или слишком жирно по памяти или слишком медленно (заметно глазом обновление текста). Нашёл достаточно быстрый способ вывода текста на eax.me/stm32-st7735/
    Там указывается адрес, а затем просто "заливаем" символ целиком. Скорость отрисовки текста улучшается в разы. Но из-за этого возникает другая проблема. В файле fonts максимальный шрифт 16х26, а это на таком экране маловато. Для шрифта побольше нужно городить свой компилятор.
    Если надо, могу скинуть функцию вывода строк, сравните по динамике со своей, но там все просто в принципе - ищите ST7735_WriteChar в github.com/afiskon/stm32-st7735/blob/master/st7735/st7735.c
    и подгоняете под свой вывод даты и установки адреса.

    • @akvilion7365
      @akvilion7365 Před 4 lety

      @@user_PsevdonimyEtoPolnyjOtstoj Без HAL могут быть проблемы, если не использовать опрос флагов статуса отправки / приёма данных. Уже проходили. И разница больше идёт от частоты SPI и от "метода" записи в дисплей - сразу строкой данных или, например, попиксельно.
      Про масштабирование подумал первым делом. Но там проблема в другом - размер поля данных в пакете при передаче данных непрерывно ограничен. Я не смогу передать текст больше (по пикселям) 0XFFFF (вроде бы) целиком. Если делать текст больше - придётся выводить его "полосками", при этом проверяя на "конец экрана", чтобы он собрался в итоге нормально. +структура fonts.c должна быть перелапачена. Время на это решил не тратить - надо было получить готовое устройство. Если у вас получится допилить шрифты - буду только рад.

    • @akvilion7365
      @akvilion7365 Před 4 lety

      @@user_PsevdonimyEtoPolnyjOtstoj запись строкой - это когда библиотека шрифта сгенерирована так, чтобы можно было выводить символы непрерывно (до конца экрана). Передаем сначала начальный адрес первого пикселя, а затем просто шлем "строку" данных из fonts, которая по сути состоит из цвета пикселя. И так до конца выводимого текста. Т.е. не надо каждый раз обращаться к установке адреса, стирать отдельно фон или ещё как-то усложнять функцию вывода. Посмотрите на функцию вывода на сайте выше. Можете попробовать как работает. У меня быстрее всех текст выводила именно она. Если у вас не сильно отличается по скорости - кидайте ссылку, как дойдут руки попробую ваш вариант.

  • @user-cn9sh9md5e
    @user-cn9sh9md5e Před 3 lety

    Подскажите в каком документе есть пошаговая инициализация дисплея ST7789?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 3 lety

      Разумеется в даташите. Документ называется ST7789V Datasheet

    • @user-cn9sh9md5e
      @user-cn9sh9md5e Před 3 lety

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

    • @VladimirMedintsev
      @VladimirMedintsev  Před 3 lety

      @@user-cn9sh9md5e Там весь документ это и есть инициализация. Подача питания, выбор интерфейса, выбор метода кодирования цвета.

  • @ussh469
    @ussh469 Před 4 lety

    Добрый день, не подскажите, будет ли видео о том как правильно организовать питание от липольки? Допустим если есть ещё потребители на 3.3 вольта, помимо стмки?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +1

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

    • @ussh469
      @ussh469 Před 4 lety

      @@VladimirMedintsev в целом вопрос стоит о том что на батарее через некоторое время напряжение опустится ниже 3.3 вольт, стоит ли сначала поднимать напряжение а потом стабилизировать на 3.3?)

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +1

      @@ussh469 А если нам пойти другим путем и запитать микроконтроллер от 2,5 вольт? Это ведь его родное напряжение. И тогда мы можем ничего не повышать вплоть до полного разряда акб.

    • @ussh469
      @ussh469 Před 4 lety

      @@VladimirMedintsev ну я же уточнил вначале, есть ещё 2 устройства на 3.3 вольта (это радиопередатчик и gps)

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety

      www.ti.com/power-management/non-isolated-dc-dc-switching-regulators/buck-boost-inverting/products.html Там параметрический поиск есть и вы можете выбрать на любой вкус. Только там есть инвертирующие вы на них не смотрите.

  • @OlegBovykin
    @OlegBovykin Před 4 lety +1

    Владимир, а как вы пользуетесь системой контроля версий (если пользуетесь?) Пустой проект после CubeMX занимает под 200Мб. Как управлять зависимостями в проектах?

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

      Пустой проект после куба весит гораздо меньше. 20-100 текстовых файлов. А 200 мегабайт это мусор создаваемый компилятором его можно и удалить. Ну полноценного контроля версий у нас нету. На 3х разработчиков он не нужен совершенно. У нас стоит nas на линуксе который раз в сутки делает снимок таким образом мы можем откатываться с любым файлом на его предыдущие версии. Ну и просто ведем небольшой текстовый файлик в двух словах описывая что коренным образом менялось за день. В маленьких коллективах большего не надо. Главное грамотно настроить облако.

    • @OlegBovykin
      @OlegBovykin Před 4 lety +4

      @@VladimirMedintsev Я считаю что даже для одного человека полезно использовать git. Это вопрос подхода, культуры и процесса разработки (как и тесты, CI итд).Папка Drivers 54 Мб, и еще чуть больше мусор от компилятора. А как вы разбираетесь с зависимостями? Есть что-то вменяемое для C/C++ для проектов с STM32?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +1

      Мы видимо на каком-то этапе не поняли друг друга. В кейле встроенная поддержка контроля версий вас чем не устраивает? Пункт меню SVCS.

    • @OlegBovykin
      @OlegBovykin Před 4 lety +1

      @@VladimirMedintsev тут меня скорее кейл не устраивает и вся экосистема stm32

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety

      @@OlegBovykin Я пожалуй восприму это просто как шутку.

  • @_kipovets_85
    @_kipovets_85 Před 2 lety

    А как данную матрицу проверить на работоспособность в ардуино

    • @user-io3yy9vp9n
      @user-io3yy9vp9n Před rokem +1

      Подключить соответствующую библиотеку.

  • @aleksandrf3468
    @aleksandrf3468 Před 4 lety

    Добрый день, Владимир! Спасибо за видео. Дисплейчик завелся на указанной библиотеке, правда без бубна не обошлось. Библиотека и правда компактная и быстрая, только жаль в ней нет поддержки шрифтов, надо будет ее допиливать. Уроки хорошо помогают в освоении STM микроконтроллеров. Планируется уроки по шине I2C и работе памяти с этим интерфейсом?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +3

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

    • @aleksandrf3468
      @aleksandrf3468 Před 4 lety +1

      @@VladimirMedintsev Отлично! Буду ждать новое видео! Еще раз спасибо!

  • @user-us4vm6bm9o
    @user-us4vm6bm9o Před 3 lety

    Подскажите, пожалуйста, как решить проблему подсоединения такого дисплея без CS с другими устройствами на один SPI?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 3 lety

      Я не понимаю вопроса.

    • @user-us4vm6bm9o
      @user-us4vm6bm9o Před 3 lety +2

      @@VladimirMedintsev Если нет возможности выбирать дисплей сигналом CS, то дисплей один всегда занимает весь интерфейс SPI, как я понимаю, и другие SPI-устройства к этому интерфейсу подключить уже нельзя. Нашел подсказку - на шлейфе есть полноценный CS, подключенный на плате к GND. Его можно взять оттуда, предварительно отключив от GND. На мой взгляд, хороший вариант - перепаять дисплей со шлейфом на свою нормально разведенную плату со всеми нужными сигналами. Спасибо вам за вашу работу.

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

      @@user-us4vm6bm9o поставить один единственный полевик, который будет отключать линию CLK от общей SPI шины, когда обращение идёт к другому устройству.

  • @UstinovUM
    @UstinovUM Před 4 lety

    Забавно... я был в Охе. В моём списке филиалов ада на Земле этот город на первом месте) Но как часто бывает, самое лучшее может оказаться там, где его быть теоретически не должно.

  • @MrSasha3050
    @MrSasha3050 Před 4 lety +1

    Владимир, шрифты свои прикрутили в итоге?

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

      Да, прикрутил.

    • @MrSasha3050
      @MrSasha3050 Před 4 lety

      @@VladimirMedintsev, а видео с шрифтами будет?

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

      @@MrSasha3050 Ну с тем, что на ближайшие 2 недели видео уже залито на канал, позже будет.

  • @ajdarseidzade688
    @ajdarseidzade688 Před 4 lety +1

    А этот дисплей случайно не OLED? Пишут, что TFT, но что-то сомнения возникают. Спасибо за видео.

  • @ugene4063
    @ugene4063 Před 2 lety

    Ну а что мешает запихать шрифты на внешнюю флешку и вытаскивать когда нужно? Туда можно слона запихать. Для создания шрифтов из системных есть отличная прога Greyscale BitfontCreator правда денег за нее хотят много, но штука прикольная. Генерит нужный шрифт за считанные секунды с нужными параметрами ширины высоты и направления сканирования.

  • @ilkeraykut7064
    @ilkeraykut7064 Před 3 lety

    Sir ,Which method I should use for writing any text on the screen?Thanks.

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

      Hi, there is a link czcams.com/video/cFH8mrSMoAg/video.html to video about implementation font for this display. In video description you also can found updated version of library. Best regards.

    • @ilkeraykut7064
      @ilkeraykut7064 Před 3 lety

      @@VladimirMedintsev thanks for the link.But I have one more question.in the fuction,
      for (uint8_t i=0; i= 1;
      }
      }
      There is part like this.As far as I see, we just only send color or bgcolor data ,Which part of this do we send char?For example , 0x20, 0x54, 0x54, 0x54, 0x78 , // 0x61 a; What does it mean?How do we find this 5 numbers?
      this is implemented in the file.To me ,we have to send these hexadecimal values but we don t .Why ?

    • @ilkeraykut7064
      @ilkeraykut7064 Před 3 lety

      @@VladimirMedintsev ?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 3 lety

      This 5 numbers is a bitmap for char (letter) that should be displayed.

    • @ilkeraykut7064
      @ilkeraykut7064 Před 3 lety

      @@VladimirMedintsev but in the code ,we dont send 5 numbers.we send color codes am I wrong?

  • @nangelo0
    @nangelo0 Před 4 lety +3

    Спасибо. Владимир, расскажите о том, где вы работаете? Что за компания? Кто клиенты?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +4

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

    • @nangelo0
      @nangelo0 Před 4 lety +1

      @@VladimirMedintsev Спасибо. А лабораторию вы сами организовали или вы как сотрудник работаете?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +6

      @@nangelo0 Вы что налоговая? Мишустин перелогинься.

    • @alexpetrov521
      @alexpetrov521 Před 4 lety

      )))

  • @user-ld2xi8sn6l
    @user-ld2xi8sn6l Před 4 lety

    Привет.А будут видео про чтение/запись внешней nand flash via stm32.А то каналов на ютубе много про stm32 но про nand ничего....

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety

      Будет.

    • @user-ld2xi8sn6l
      @user-ld2xi8sn6l Před 4 lety

      @@VladimirMedintsev Ждём - действительно интересная тема.Я не видел ничего толкового даже на зарубежных каналах

    • @ihanick
      @ihanick Před 4 lety +1

      не ютуб, но может быть полезно: we.easyelectronics.ru/STM32/stm32-parallelnaya-nand-flash-faylovaya-sistema-yaffs-chast-pervaya.html

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +1

      @@user-ld2xi8sn6l Ну не перегибайте палку, нет там ничего сложного. На моем канале в каком-то видео про FAT я показывал строки своей библиотеки работы со внешней микросхемой памяти. Там тоже flash но не nand. Так что это все давно существует. Вон даже в Keil есть встроенные библиотеки поддержки наиболее распространенной памяти. Иногда в интернете чего-то нет не потому что это прям тайна, а потому что всем понятно и лень писать. Вот эти ролики czcams.com/video/_ABsOqePImo/video.html и czcams.com/video/CqQwds8F6e4/video.html исходный код похожей библиотеки лежит в Keil.

  • @user-th9qt6od7t
    @user-th9qt6od7t Před 5 měsíci

    библиотека максимально негибкая но она есть. Хотя свою написать, используя HAL наверное проще будет, подглядывая в эту

  • @generalleitenant42
    @generalleitenant42 Před 3 lety

    Здраствуйте . вот сколько видео просмотрел так у меня и не запустился дисплей с вашими библиотеками .дисплей st7789v 1.14 inch 135x240 микроконтроллер stm32f405rgt6

    • @VladimirMedintsev
      @VladimirMedintsev  Před 3 lety

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

    • @generalleitenant42
      @generalleitenant42 Před 3 lety

      @@VladimirMedintsev думаю не проходит инициализацию

    • @generalleitenant42
      @generalleitenant42 Před 3 lety

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

  • @Diject
    @Diject Před 4 lety

    Кстати, а никто не покупал что-нибудь в инет магазине texas instruments? Вроде цены очень приятные, но меня, как физлицо, смущает необходимость указывать свой сайт при заказе.

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +1

      Я покупал. Не понравилось. Все дешево, а потом доставка с конским ценником.

    • @MrSasha3050
      @MrSasha3050 Před 4 lety

      Физ лицами не работают. Только отправка на юр лицо. То есть на адрес фирмы, где работаем.

    • @Diject
      @Diject Před 4 lety

      @@VladimirMedintsev Ну, я сейчас накидал всякого в корзину - доставка вроде как стоит в 7$ (самый дешевый вариант). Что, считаю, не много. Или там еще цена может измениться?

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +1

      @@MrSasha3050 Еще как работают.В качестве организации я лично написал "AT HOME" и свой домен и шикарно дошло.

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

      @@Diject Аналогично. Причем дошло очень быстро. А вот пробовал заказывать на ST - конские цены доставки. 79 евро. И Я не стал подтверждать заказ.

  • @KeyCe
    @KeyCe Před 4 lety

    пользовал этот дисплейчик. очень он сильно боится нажатий на экран (( - сразу думайте о защитном покрытии.

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +1

      Не заметил, погляжу сегодня. С другой стороны защита не проблема. Любое рекламное агенство режет лазером акрил или поликарбонат и у них же можно заказать на этих "стеклах" УФ печать для нанесения необходимых надписей и прочего. Сейчас это не проблема.

  • @personamems
    @personamems Před 3 lety +1

    Шаг между выводами шлейфа 0.7 мм

  • @alntruisrtbredford
    @alntruisrtbredford Před rokem +1

    честно говоря, не очень понятно, как подключать этот дисплей к stm. На переходной плате имеются пины, функционал которых не соответствует SPI. С VCC, GND, RES все понятно. BLK - выключает подсветку, DC - передача команд или данных. Остаются два пина - SCK (тактирование) и SDA (serial data input/output). Выбора ведомого (SS) тут нет. В SPI должны быть MISO и MOSI . По логике их функционал эквивалентен SDA+DC, если с помощью можно менять направление передачи. Но как это соотносится с тем, что в stm конкретные пины отведены под spi (SS, CLK, MISO, MOSI)? Как одно с другим подружить?

    • @VladimirMedintsev
      @VladimirMedintsev  Před rokem +1

      Прочитать datasheet на драйвер экрана, там в разделе с описанием интерфейса очень подробно описано. Ну и нужно понимать, что стандарта именовать выводы именно miso - mosi нету. Называть можно как угодно, главное понимать суть.

    • @user-io3yy9vp9n
      @user-io3yy9vp9n Před rokem +3

      CS (выборка кристалла) соединяется с линией SS SPI. SDA c MOSI, CLK соответственно с SCK. MISO оставить неподключенным так как контроллер дисплея не позволяет читать содержимое. D/C подключается к любому свободному пину общего назначения и перед каждой транзакцией на нём программно устанавливается необходимый уровень, соответствующий содержимому, чтобы контроллер дисплея понимал что ему передают в текущий момент, данные или команду.

  • @user-th9qt6od7t
    @user-th9qt6od7t Před 5 měsíci

    либа без HAL на регистрах - жесткач, в других сериях МК другая организация битов портов и их названий, каналов DMA.. потому может и быстро но очень неудобно(( В либе №2 много лишних функций, и жесткое вмешательство в перенастройку параметров SPI, GPIO, TIM (зачем?)

  • @Black27512
    @Black27512 Před 4 lety +1

    Вполне не плохой дисплей, причём можно ведь ещё и читать с него, то есть вполне себе видеопамять... Я докрутил ещё 16 битный dma - заполнение стало гораздо бодрее. Хочу попробовать анимацию выводить.
    Кстати, у авторов библиотек не очень оптимально то что они используют 8 битный режим spi, от чего приходится по 2 раза слать и ждать окончания передачи. Но да, hal не умеет в 16 бит...

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +1

      В смысле HAL не умеет 16 бит???? Это вы о чем??? Я два дня назад писал библиотеку на сенсор и мы с ним 16 битами по SPI написанном на HAL обменивались.

    • @Black27512
      @Black27512 Před 4 lety

      @@VladimirMedintsev а может плохо смотрел, мне этот hal даётся сложнее, чем LL ))

    • @anton.k.
      @anton.k. Před 4 lety

      @@Black27512 абстракция над абстракцией) он же вроде сейчас поверх LL и работает? за исключением того, что вообще не связано с "железом" непосредственно, т.к. HAL это нечто большее..

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

      @@anton.k. LL это скорее набор макросов даже, а hal не использует LL, в кишках он с регистрами уже работает.

  • @denpar5450
    @denpar5450 Před 4 měsíci

    1:42 поверни на 90 градусов

  • @bul2012
    @bul2012 Před 4 lety

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

    • @VladimirMedintsev
      @VladimirMedintsev  Před 4 lety +3

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

    • @bul2012
      @bul2012 Před 4 lety

      @@VladimirMedintsev да сами экраны с ips матрицей с параллельной шиной. Не обязательно на чипе st7789. Просто tft с 16 битной линией есть уже, но у ips экранов графика приятнее как минимум

    • @CadmiumUA
      @CadmiumUA Před 4 lety

      @@bul2012 попадалось видео где на этот дисплей выводили видео 30фпс, по spi с raspberry

    • @U_video
      @U_video Před 4 lety

      Это? m.aliexpress.ru/item/32323272328.html?spm=a2g0n.shopcart-amp.item.32323272328&

    • @miha01387
      @miha01387 Před 4 lety

      на алиэкспрес видел с 8-ми битной шиной, но цена в три раза выше и шаг контактов очень маленький

  • @alehavalikovich83
    @alehavalikovich83 Před 3 lety +4

    ерунду вы говорите совершеннейшую, называя библиотеку Руслана "пожалуй лучшей" из существующих.
    что это, просто некая ему "скачуха" как соотечественнику, дань уважения, а может попытка сгладить углы, потому как свою "библиотечку" вы фактически слизали один к одному с его, заменив лишь имена переменных, констант и функций на нужные из HAL, вместо SPL-ных в оргинале?
    в обсуждении того обзора экранов, Руслану несколько раз указывали, что именно не так с его библиотекой, насколько она медленно и криво работает с SPI и что нужно предпринять, что бы поправить ситуацию. и он кивал на все соглашаясь... но воз и ныне там, и ни единого коммита за два с лишним года.
    а шрифты??? вы же сами заметили, что этот его "мегаудобный интерпретатор букв" некуда не годится. а он ведь делает две версии своих примеров, вторую под атмегу, а это ведь вообще содомия какая-то!!!
    ну и последнее, почему бы вам не засечь время работы тестов в вашей реализации (заполнение градиентом, примитивы и т.п.) и, к примеру, версию под Ардуино от ползователя гитхаба cbm80amiga. она работает *в три раза быстрее вашей!*
    да уж, вот так "пожалуй лучшая библиотека", самое главное *мегабыстрая* какая, ничего не скажешь!!
    честно, я даже и не знаю смеяться тут или плакать. это ж насколько нужно лицемерным быть, что бы нести такую откровенную ересь, делая при этом совершенно "морду кирпичом".. правда что ли что подписчик все стерпит...

    • @VladimirMedintsev
      @VladimirMedintsev  Před 3 lety

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

    • @alehavalikovich83
      @alehavalikovich83 Před 3 lety +1

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

    • @VladimirMedintsev
      @VladimirMedintsev  Před 3 lety +6

      @@alehavalikovich83 Я позитивно отношусь к технической критике. Ну в тех случаях когда она имеет место быть. В связи с этим единственный способ попасть в "список нежелательных посетителей" это проявить себя трамвайным хамом. В том случае, если ваши комментарии будут касаться технической части, они останутся на канале. Перейдете на личности и начнете хамить я без всякого сожаления нажму на кнопку. Пока что-то похожее на конструктив было только в комментариях по блокам питания. Там я вашему комментарию даже поставил лайк.
      Я прошу меня понять правильно. Мне реально нравится почитать что пишут люди. Иногда их комментарии стоят больше самого видео. Мне нравится общение на технические темы. Таким образом я нахожу и интересных собеседников и порой хороших заказчиков. При этом ни вы ни кто-то другой не имеете ни малейшего понятия ни кто я такой ни как и чем я в действительности живу. В связи с этим какие-либо попытки зацепить лично меня и разговоры как вы выразились о моих заслугах, они меня расстраивают. А я делаю видео не для этого.

  • @ibrag2012
    @ibrag2012 Před 4 lety

    У мене розмір пристрою залежить від розміру екрана а тому що не вмію працювати з SMD користуюся банальним 1602.