Выводим изображение рабочего стола Windows на внешний дисплей с помощью микроконтроллера stm32 USBFS
Выводим изображение рабочего стола Windows на внешний дисплей с помощью микроконтроллера. USB CDC Virtual COM Port, кодер и декодер jpeg. Клонирование изображения рабочего стола Windows на дисплее, подключенном к микроконтроллеру. Виртуальный COM порт. JPEG кодирование и декодирование. Проект демонстрирует работу с виртуальным COM портом. Воспроизведение потокового видео (motion jpeg). Сервер (компьютер) постоянно делает скриншоты рабочего стола, кодирует их в jpeg и передает клиенту (микроконтроллеру) через USB (виртуальный COM порт). Микроконтроллер декодирует изображение и отображает его на дисплее.
Что потребуется:
Отладочная плата на базе stm32 - blackpill stm32f401ccu6
Дисплей - st7789 или ili9341 (и совместимые с ними. Проект собран для дисплея st7789!).
Как использовать:
1. Подключите дисплей к отладочной плате согласно таблице подключений:
LCD_DC PA2
LCD_RES PA3
LCD_CS PA4
LCD_SCL PA5
LCD_BLK PA6
LCD_SDA PA7
2. Подключите прошитую плату микроконтроллера к USB разъему компьютера (папка Release, файл для прошивки Внимание. Прошивка для дисплея ST7789. При использовании дисплея ILI9341 необходимо пересобрать проект, указав требуемые параметры дисплея при вызове функции LCD_DisplayAdd в main).
3. Запустите серверную программу из папки Terminal\Release\ (это проект для компьютера).
4. Выберите com-порт, к которому подключен микроконтроллер. Узнать требуемый COM порт можно из диспетчера устройств. Он будет подписан, как “Устройство с последовательным интерфейсом USB (COM номер такой-то)“ в разделе “Порты (COM и LPT)“.
Если все сделано правильно, то на дисплее, подключенном к микроконтроллеру, вы увидите копию того же изображения, что можете наблюдать на мониторе компьютера.
Автор:
@VadRov
Исходный код проекта:
Кодер jpeg:
jpeg-compressor
Public Domain or Apache 2.0, Richard Geldreich richgel99@
#stm32
#программирование
#jpeg
00:00 Приветствие и поздравление с Рождеством.
00:24 Что будет использоваться в проекте.
00:43 Привет “пацанам“ из комментариев про крючок (из обзора ЭБУ). 😉
01:08 Про желание удивить зрителей. Зрители YouTube (и не только) любят “шоу“.
01:40 Что будет реализовано в этом проекте “выходного дня“.
02:30 STM32CubeIDE. Про настройку подключения дисплея (настройка spi и управляющих выходов gpio).
04:43 Про индикацию приема/передачи данных по USB.
05:06 Про настройку USB. Класс CDC (Virtual Port Com).
06:44 Про приоритеты прерываний.
07:20 Настройка тактирования ядра и периферии. Условие работы USB.
09:12 Настройка проекта. Библиотеки для настройки и работы с периферией. Ограничения драйвера USB Device от STM.
11:29 Обработчики прерываний: systick, dma, usb.
12:48 Объявление и инициализация глобальных переменных, в том числе, буфера для приема данных. Подключаемые к проекту библиотеки.
17:01 Организация приема данных по USB в режиме двойного буфера. Обработчик CDC_Receive_FS. Пакетный прием. Признаки последнего пакета данных для текущей передачи (сообщения).
24:23 О возможностях разгона ядра м/к stm32f401ccu6. Программная реализация. Ограничения в случае использования USB Device.
26:01 Формирование сообщения от клиента серверу о разрешении дисплея, подключенного к м/к, и максимальном размере файла.
30:50 Прием, декодирование и вывод на дисплей изображений, полученных от сервера. Переключение двойного буфера. Разрешение на прием нового пакета данных.
35:50 Микроконтроллер “не управляется по проводкам“... 😉
38:06 Visual Studio 2022. Программа для сервера (компьютера). Почему кодируем изображение в jpeg, а не передаем простым потоком “как есть“.
41:21 Скриншоты с использованием GDI, масштабирование и кодирование изображений в jpeg.
41:44 Интерпретация сервером сообщения, полученного от клиента, с настройками jpeg кодирования. Регулярные выражения. “Внутренние стандарты“ проекта: формат, разрешение и размер файла.
45:56 Кодер jpeg. Спасибо его автору.
48:29 “Бесконечный цикл“ сервера. Подстройка сервером качества кодирования jpeg в целях не превышения максимального размера файла. Минимальное качество кодирования. Последствия для клиента при превышении сервером максимального размера файла.
51:44 Подключение микроконтроллера к компьютеру. Обнаружение операционной системой устройства с последовательным интерфейсом. Просмотр диспетчера устройств. Запуск серверной программы и выбор порта, к которому подключен микроконтроллер.
54:13 Вывод на дисплей уменьшенной копии рабочего стола. Демонстрация работы.
1 view
233
51
4 years ago 00:59:04 17
Выводим изображение на экран
2 years ago 00:34:47 18
TouchGFX. Создаем отладку и выводим изображение в разрешении - FullHD с микроконтроллера STM32.
1 year ago 00:19:14 267
Что делать если ПК не выводит изображение на монитор.
9 years ago 00:07:10 11
Ноутбук не выводит изображение на внешний монитор. Ремонтируем ноут.
1 year ago 00:57:38 4
Выводим изображение рабочего стола Windows на внешний дисплей с помощью микроконтроллера stm32 USBFS
9 years ago 00:05:44 29
Изображение окружности (круга) в прямоугольной изометрии - Выводы, рекомендации
3 years ago 00:03:46 0
Выводим изображения смартфона на телевизор просто!
5 years ago 00:10:08 34
Выводим цветную картинку с Toshiba T1000! (CGA-SCART adapter)
5 years ago 00:05:38 36
Как вывести изображение с eGPU на дисплей ноутбука
8 years ago 00:02:49 7
Не выводит изображение / Чёрный экран. Монитор Samsung S23A350H
3 years ago 00:03:24 0
ЧТО ДЕЛАТЬ, ЕСЛИ ВИДЕОКАРТА НЕ ВЫВОДИТ ИЗОБРАЖЕНИЕ
4 years ago 00:08:13 29
Выводим фото из Instagram на сайте (сниппет inWidget)
4 years ago 00:04:45 95
Установка камеры заднего вида на Шкода Рапид: куда выводить изображение? | #Обзор
1 year ago 00:07:29 6
Урок 3. Выводим детали изображения из тени. Инструмент Тени/Света
3 years ago 00:07:54 2
Что делать, если видеокарта не выводит изображение или артефачит
5 years ago 00:05:25 198
Как вывести изображение с компьютера или ноутбука на телевизор. II СПОСОБА
1 year ago 00:04:10 2
HDMI или Display Port - чем лучше выводить изображение на монитор
3 years ago 00:15:38 3
Мат плата GA P55M не вывод изображение - проблема с биосом или ...
2 years ago 00:06:02 2
Условно графическое изображение силового вывода на планах проводок . Изображаем правильно!
11 years ago 00:02:19 19
sj4000 wifi Вывод изображения на комп
4 years ago 00:12:20 15
Nissan Primera P12. Инструкция по выводу изображения.
4 years ago 00:17:50 49
Теги строчные и блочные | Заголовки h1-h6 | p span | Ссылки | Выводим картинки | Списки. #2
9 years ago 00:05:35 12
sfml урок 4, вывод участка изображения
9 years ago 00:04:41 5
Что делать если изображение не выводится на экран? Ответ есть)