Подключение камеры в Arduino и вывод изображения в окне браузера
Простой и интересный проект, в результате которого вы сможете делать снимки на модуль видеокамеры с использованием Arduino и передавать данные через Ethernet Shield. Снимки появятся на указанном вами веб-сервере.
Очень простой и элегантный проект, для реализации которого вам не не понадобятся никакие дополнительные приложения.
Необходимые компоненты
Нам понадобятся следующие компоненты:
- Arduino Uno
- Arduino Ethernet Shield

- Serial Camera

Вот и все. что понадобится для нашего проекта.
Подключение камеры к Arduino
Подключается камера очень просто.
alt=»Подключение камеры в Arduino и вывод изображения в окне браузера» />
Подготавливаем софт: библиотеки
Для проекта нам понадобятся следующие библиотеки Arduino:
- Adafruit_VC0706.h (для TTL камеры)
- SdFat.h (для SD карты)
- SdFatUtil.h (для SD карты)
- Ethernet.h (для Ethernet шилда)
- SoftwareSerial.h (для TTL камеры)
Все эти библиотеки вы можете скачать на оффициальном сайте Arduino.
После того как вы скачали и установили перечисленные выше библиотеки, можно запускать проект.
Скетч для Arduino
Некоторые необходимые комментарии к коду приведены ниже.
1. Надо изменить mac[] и ip[] в соответсвии с информацией о вашем Arduino.
2. Для того, чтобы отобразить jpg файл в браузере, его надо преобразовать в jpg формат, для этого надо прописать следующие строки
Запуск и проверка работоспособности
1. Для того, чтобы сделать снимок, пропишите в строке браузера:
2. Для того, чтобы отобразить снимок, укажите в строке браузера:
3. Для того, чтобы удалить снимок, напишите в строке браузера:
На рисунке ниже показан пример теста камеры.

Оставляйте Ваши комментарии, вопросы и делитесь личным опытом ниже. В дискуссии часто рождаются новые идеи и проекты!
Подключаем камеру OV7670 к Arduino и выводим картинку на дисплей
Данная камера ov7670 является самым доступным модулем для получения изображения совместно с Arduino.
Модуль камеры имеет следующие характеристики:
- различные разрешение VGA (640 х 480); — QVGA (320 х 240); — CIF (352 х 240); — QCIF (176 × 144);
- скорость передачи до 30 fps,
- несколько способов кодирование изображения RAW RGB, RGB 565/555, YUV/YCbCr 4:2:2
В данной статье попробуем подключить, настроить и получить тестовое изображение с помощью небольшой программки написанной в среде Arduino IDE, что станет начальной точкой для дальнейшего применения в различных проектах.
Подключение OV7670 к Arduino
Начнем с сборки схемы и написания программы управления. Итак для сборки и отладки тестового макета нам потребуется :
Внешний вид макета
После того как Все компоненты собраны, приступаем к сборке схемы.
Чтобы не запутаться в схеме, для наглядности, распишем что и куда подключается:
Программа для трансляции видео с камеры на tft дисплее
Для работы с камерой и дисплеем совместно с Arduino нам понадобится, библиотеки: LiveOV7670Library и Adafruit_GFX_Library. Скачиваем их и устанавливаем в Arduino IDE. Теперь все готово для загрузки программы в Arduino.
Код состоит из нескольких частей. После скачивания и распаковки, все файлы следует сохранить в одной папке. Ссылка на скачивание проекта. После загрузки кода и проверки схемы, мы сразу получаем картинку ту что видит камера, не забыв настроить фокусировку.
После проверки работоспособности, можно перейти в скетче на вкладу setup.h
и изменив значение EXAMPLE 1 на EXAMPLE 3, камера будет транслировать изображение напрямую на экран монитора, при условии, что arduino подключена к компьютеру и запущена программа Arduino IDE.
При значение EXAMPLE 1 камера совместно с библиотекой LiveOV7670Library, передает картинку напрямую на дисплей подключенный по SPI интерфейсу.

Заключение
Данный пример работы камеры можно использовать как камеру видео наблюдения добавив к arduino LAN или же как зрение к роботу. Так же возможно использовать в виде WEB-камеры для компьютера.
Немного об особенностях работы с камерой.
- Согласно документации камеры OV7670, модуль питается от 3,3 В, при подключении к Arduino 5V необходимо обеспечить преобразование уровней напряжения. (Хотя запустилась и заработала без лишних элементов)
- Модуль имеет выходы SIO_C, SIO_D — шина SCCB похожа по работе с шиной I2C. Модуль отвечает на шину I2C по адресу 0x21. Входной сигнал синхронизирующего сигнала XCLK и выход PCLK для синхронного сбора данных с параллельной 8-разрядной шины D7-D0.
- Выходы H1REF и VSYNC синхронизируют сбор данных с параллельной шины (соответствующая конфигурация позволяет отложить сигнал сигнальной линии H1REF, используя только синхронизацию VSYNC-кадров).
- Основой для запуска модуля является соответствующая конфигурация регистров по шине SCCB. Интерфейсные линии SCCB должны быть подтянуты по питанию через резисторы 4.7-10 кОм.
- Стабильность работы камеры зависит и от источника питания, необходимо, чтобы модуль имел стабильный источник питания 3,3 В.
- Для того, чтобы шина данных работала, необходимо подать сигнал синхронизации на вход XCLK, согласно Datasheet: частота входного сигнала должна быть 10-48 МГц.
- Ниже приведенный скетч генерирует тактовую частоту XCLK = 8 МГц. Частота сигнала PCLK, изменяет данные на линиях D7-D0 зависимые от установленных делителей и PLL. В нашем случае мы на PCLK частотой 2 МГц.
- На основе полученных изображений сразу можно сделать вывод о недостатках:
а. Отсутствие внутреннего буфера приводит к смазывание картинки, тк она сразу передается на компьютер, а это занимает время.
б. Наблюдаются артефакты в виде горизонтальных полосок — сбой синхронизации в получении картинки. Вместо градации серого отправляется цветоразностная составляющая.
в. Объект должен быть в фокусе камеры для четкого изображения
Подключаем камеру OV7670 к Arduino и выводим картинку на дисплей : 2 комментария
Здравствуйте, не знаю ответите ли, но спрошу. Возможно ли по этому принципу сделать что-то типа виде регистратора. Только чтобы видео сразу записывалось на microSD карту? То есть ардуино нано+камера+SDкарта
Здравствуйте. Нано в данном случае будет мало.
Посмотрите в сторону esp32cam
Добавить комментарий Отменить ответ
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
SIMPLIFIED! How to Use OV7670 Camera with Arduino.

You can also watch the same tutorial as a Youtube video:
I have made an easy-to-install «ArduImageCapture» plug-in for Arduino IDE that captures images on the computers’ side. The plug-in works on all platforms that can run Arduino IDE (Windows, Mac, Linux).
After installing «ArduImageCapture,» you can easily follow along by making all the connections on a breadboard. I have also added some mid-point checks to verify if everything is connected correctly thus far.

![]()
Required Components






[OPTIONAL] Oscilloscope I used to get it all working
If you can’t get the image to show up, it is much easier to track down issues with an oscilloscope. Often the problem is the shape of the clock signals. With an oscilloscope, you can see which wire is not working properly and then try to find a solution to fix it.

Disclosure: Bear in mind that some of the links in this post are affiliate links and if you go through them to make a purchase I will earn a commission. Keep in mind that I link these companies and their products because of their quality and not because of the commission I receive from your purchases. The decision is yours, and whether or not you decide to buy something is completely up to you.
Installing «ArduImageCapture» Plug-In
Extract the zip file and copy the «ArduImageCapture» folder into your Arduino «tools» folder next to the Arduino «libraries» folder. If the «tools» folder doesn’t exist, then you can create it yourself.

Now run/restart your Arduino IDE, and you should see «ArduImageCapture» under the «Tools» menu.

Arduino Code
1. Download the code of my LiveOV7670 project:
https://github.com/indrekluuk/LiveOV7670
Click on the green «Code» button and then «Download ZIP.»

Extract the downloaded ZIP file.
2. Copy the two libraries «LiveOV7670Library» and «Adafruit_GFX_Library» from «src/lib» to your Arduino «libraries» folder.
«LiveOV7670Library» contains the code that communicates with the OV7670 camera module.
«Adafruit_GFX_Library» is a dependency of the «Adafruit-ST7735» screen library. We aren’t using any screens in this tutorial, but the dependency is still required for the LiveOV7670 sketch to compile.
3. Open «src/LiveOV7670/LiveOV7670.ino» with Arduino IDE.
This project takes advantage of some of the C++11 features. C++11 is enabled by default since Arduino IDE version 1.6.6. If you have an older version for some reason, you should either upgrade or enable C++11 in the Arduino IDE configuration file.
4. Switch to «EXAMPLE 3» in «setup.h».
Select «setup.h» tab and change the definition to:
«EXAMPLE 3» will activate the «ExampleUart.cpp». This is the code that sends images over the USB cable.
The default «EXAMPLE 1» tries to send the image to a tiny TFT screen.
![]()
5. Upload the code to your Arduino.
We can make the first test before connecting any wires.
Checkpoint 1
Open «ArduImageCapture.» It should start listening to the serial port automatically. If not, select the correct COM port and click «Listen.»
You should see a red image. This means that you have the correct code in your Arduino, but it couldn’t detect the camera module.

The default baud rate for the LiveOV7670 project is 1Mbit/sec (1000000) at 320×240 resolution. It works well if you have an Arduino clone with the CH340 serial chip and a Windows PC.
If you have a genuine Arduino with an FTDI serial chip or use a Mac, then you may see a scrambled line ends:

For some reason, a genuine Arduino with an FTDI serial chip will not work with a 1MBit/sec baud rate. So you need to reduce the speed to 115200 bit/sec.
Similar problem with Mac. For some reason, 1Mbit/sec doesn’t work on Mac.
In those cases, select the «ExampleUart.cpp» tab and change the definition to:
This lowers the resolution to 160×120 with a 115200 baud rate. (Unfortunately, 115200 is too slow to transfer higher resolution)
After uploading the code again, choose «115200» from the serial speed selection.
Now You should see this image:

First Part of the Camera Connections – Power It Up
We will do the camera wiring in two phases. In this chapter, we will make all the necessary connections to get the camera running and configured by the Arduino.
Подключение камеры OV7670 к Arduino Uno
Видеокамеры (камеры) в настоящее время находят широкое применение в электронной промышленности и имеют множество применений, таких как система мониторинга посетителей, система наблюдения, система учета посещаемости и т.д. Камеры, которые мы используем сегодня, умны и имеют множество функций, которых не было в предыдущих моделях камер. Современные цифровые камеры не только захватывают изображения, но также захватывают и высокоуровневые описания изображений и анализируют то, что они видят. Они широко используются в робототехнике, искусственном интеллекте, машинном обучении и т. д. Захваченные кадры обрабатываются с помощью искусственного интеллекта и машинного обучения, а затем используются во многих приложениях, таких как обнаружение номерных знаков, обнаружение объектов, обнаружение движения, распознавание лиц и т. д.

В этой статье мы рассмотрим подключение наиболее часто используемого сейчас модуля камеры OV7670 к плате Arduino Uno. Аналогичным образом ее можно подключить и к плате Arduino Mega. Модуль камеры достаточно тяжел в подключении поскольку он имеет большое количество контактов. Также при использовании камеры достаточно важен выбор проводов, которыми вы ее подключаете, поскольку качество проводов может значительно влиять на качество картинки и уровень зашумленности видеоизображения.
Камера OV7670 работает от напряжения 3.3V, поэтому следует избегать прямого ее подключения к обычным контактам ввода/вывода Arduino, которые работают с напряжением 5V. OV7670 является камерой с буфером FIFO (first in, first out – первым пришел, первым вышел). Но в этом проекте мы будем захватывать изображения без использования данного буфера. Мы постарались максимально упростить данный проект чтобы его можно было повторить даже начинающим радиолюбителям.
Необходимые компоненты
Аппаратное обеспечение
- Плата Arduino Uno (купить на AliExpress).
- Модуль камеры (Camera Module) OV7670 (купить на AliExpress).
- Резистор 10 кОм – 2 шт. (купить на AliExpress).
- Резистор 4,7 кОм – 2 шт. (купить на AliExpress).
- Соединительные провода.
Программное обеспечение
Arduino IDE
Serial Port Reader (для анализа выходного изображения)
Некоторые особенности модуля камеры OV7670
OV7670 представляет собой модуль камеры с буфером типа FIFO. В настоящее время он производится несколькими фирмами и доступен с различной распиновкой. OV7670 обеспечивает полномасштабное (full frame) 8 битовое изображение в окне. OV7670 умеет работать с различными форматами видео изображения. В VGA разрешении камера обеспечивает до 30 кадров в секунду.
Модуль камеры OV7670 включает:
- массив датчиков изображений (разрешения примерно 656 x 488 пикселов);
- тактовый генератор;
- процессор обработки сигналов;
- аналого-цифровые преобразователи;
- генератор тестовых шаблонов;
- цифровой сигнальный процессор;
- устройство для масштабирования изображений;
- цифровой видео порт;
- светодиод и выход управления стробоскопической вспышкой.
Датчик изображения камеры OV7670 управляется с помощью шины SCCB (Serial Camera Control Bus — последовательная шина управления камерой) по протоколу I2C (контакты SIOC, SIOD) с максимальной частотой синхронизации 400 кГц.
Внешний вид модуля камеры OV7670 показан на следующих рисунках.

OV7670 модуль VGA камеры

Модуль камеры OV7670 (со снятой линзой)

Модуль камеры OV7670 (нижняя сторона платы)
Камера использует следующие квитирующие (подтверждающие) сигналы:
- VSYNC : Vertical Sync Output (выход вертикальной синхронизации (для строк) – низкий уровень во время кадра;
- HREF : Horizontal Reference (горизонтальная синхронизация (для колонок) – высокий уровень во время активных пикселов ряда (строки);
- PCLK : Pixel Clock Output (пиксельная синхронизация (тактовый сигнал передачи байта из параллельного порта D0–D7) – независимый генератор синхронизирующих импульсов. Данные правильны на нарастающем фронте.
В дополнение к этому камера оперирует еще следующими сигналами:
- D0-D7 : параллельный цифровой 8-битный видеовыход в формате YUV/RGB;
- PWDN : Power Down Mode Selection — включение (лог. 0) и выключение (лог. 1) камеры;
- XCLK : внешнее тактирование (синхронизация);
- Reset : сигнал сброса.
Камера OV7670 синхронизируется с помощью генератора на 24 МГц. Это обеспечивает выход пиксельной синхронизации (PCLK) 24 МГц. Буфер типа FIFO имеет память на 3 Мбит. Генератор тестовых шаблонов формирует шаблон цветовых полос – с 8 полосами, с постепенным уменьшением к серому цвету (fade-to-gray).
Схема проекта
Схема подключения модуля камеры OV7670 к плате Arduino Uno представлена на следующем рисунке.

Внешний вид получившейся у нас конструкции проекта показан на следующем рисунке.

Объяснение программы для Arduino
Полный текст программы приведен в конце в статьи, здесь же мы рассмотрим его наиболее важные фрагменты.
Для работы с камерой OV7670 нам понадобится встроенная в Arduino IDE библиотека. Никаких внешних библиотек, которые необходимо скачивать, мы в этом проекте использовать не будем, только встроенные библиотеки.
После подключения в программе необходимых библиотек нам необходимо сконфигурировать регистры для работы с камерой OV7670.
Функция Setup() в нашем проекте будет включать все необходимые установки, необходимые для захвата изображений. Первой функцией, которую мы применим, будет arduinoUnoInut() – она используется для инициализации платы Arduino Uno. Она отключает все глобальные прерывания и устанавливает настройки для интерфейсов связи, такие как синхронизацию для ШИМ (широтно-импульсная модуляция), выбор контактов прерывания, настройки предделителя, добавление бита четности и стоповых битов.
После конфигурирования платы Arduino необходимо сконфигурировать камеру. Для инициализации камеры нам необходимо всего лишь изменить значения регистров (с тех, которые в них по умолчанию). Также необходимо добавить задержку, зависящую от того, какую частоту микроконтроллера мы используем. Чем медленнее микроконтроллер, тем большая задержка необходима между захватом кадров.
Мы в нашем проекте будем использовать формат видеоизображения QVGA (320 × 240), поэтому нам необходимо установить необходимое разрешение для камеры. Это можно сделать с помощью следующей команды:
В этом проекте мы будем работать с монохромными изображениями, поэтому в регистрах необходимо установить соответствующие значения с помощью команды:
С помощью следующей функции мы также будем записывать необходимое шестнадцатеричное значение в регистр. Если после этого вы будете получать зашифрованные изображения, то можете попробовать изменить второй параметр в представленной команде с 10 на 9/11/12. Но в большинстве случаев параметр 10 работает превосходно, поэтому у вас не будет необходимости изменять его.
Следующая используемая нами функция предназначена для получения разрешения изображения – в этом проекте мы будем использовать разрешение 320 x 240 пикселов.
Также в программе присутствуют функции для конфигурирования протокола I2C для получения данных с камеры. Они включают инициализацию связи по данному протоколу (Read), установку адреса, передачу и считывание данных. Более подробно про это можно прочитать в статье про использование интерфейса I2C в Arduino.
Загрузите представленный в конце статьи код программы в плату Arduino, затем откройте программу Serial Port Reader и после этого вы сможете захватывать кадры.
Как использовать Serial Port Reader для считывания изображений
Программа Serial Port Reader имеет интуитивно понятный интерфейс пользователя и ее можно скачать по следующей ссылке. Она захватывает изображения в формате base64 и затем декодирует их чтобы сформировать изображение на экране. Для работы с данной программой выполните следующую последовательность шагов.
Шаг 1. Подсоедините вашу плату Arduino к одному из USB портов вашего компьютера.

Шаг 2. Нажмите на “Check” чтобы найти COM порт, к которому подключена плата Arduino.

Шаг 3. Нажмите на кнопку “Start” чтобы начать считывать изображения последовательно.

Шаг 4. Можно сохранить необходимое изображение, нажав на кнопку “Save Picture”.
Далее приведены примеры изображений, полученные с помощью камеры OV7670.



Меры предосторожности при работе с камерой OV7670
- Старайтесь для соединения с камерой использовать как можно более короткие провода.
- Избегайте “неплотных” соединений на всех контактах Arduino и OV7670.
- Поскольку в данном случае вы используете достаточно много соединений остерегайтесь короткого замыкания.
- Если плата Arduino UNO формирует напряжение 5V на своих портах ввода-вывода, то используйте понижение уровня этого напряжения.
- Используйте для OV7670 входное напряжение 3.3V поскольку более высокое напряжение может повредить модуль камеры.
Представленная статья является лишь примером работы платы Arduino с модулем камеры. Поскольку плата Arduino имеет достаточно мало памяти, то работа с изображениями камеры может быть не такой “идеальной”, на какую вы рассчитывали. Для улучшения изображений с модуля камеры в этом случае рекомендуется использовать более мощные микроконтроллеры с большим объемом памяти.
Исходный код программы (скетча)
Комментарии к тексту программу оставил в оригинале (на английском языке), но если потребуется (статья вызовет интерес), могу перевести их для вас.
( _BV ( EXCLK ) | _BV ( AS2 ) ) ;
15 ; //low d0-d3 camera
252 ; //d7-d4 and interrupt pins
3 ; //disable prescaler for TWI
Видео, демонстрирующее работу проекта
Похожие статьи
Комментарии
Подключение камеры OV7670 к Arduino Uno — 32 комментария
А где можно посмотреть код программы Serial Port Reader?
Его можно посмотреть здесь
Я пытаюсь написать собственный «Serial Port Reader» для отображения изображения и не могу понять как мне конвертировать полученные байты в yuv пиксели.
UDR0 = (PINC & 15) | (PIND & 240);
Если я правильно понимаю, то это мы в аутпут посылаем первые 4 бита из пина С объединенные последними 4 битами пина Д.
И каждый такой байт содержит в себе один пиксель yuv422 закодированный по схеме YVYU. Но как мне раскодировать этот байт обратно на составляющие y, u & v? Может быть вы знаете?
Нет, к сожалению здесь я не могу вам помочь, не разбирался в этих вопросах
Serial Port Reader выдает, что com порт 7, где подключена ардуина уно с камерой закрыт.
Сначала я компилирую и выгружаю на плату код, затем запускаю Serial Port Reader и выдает такое.
Если сначала запустить Serial Port Reader и подключиться с порту 7, то ардуино не сможет выгрузить скетч в память. В общем картинка не отображается.
А через диспетчер устройств вы проверяли точно ли ваша плата Ардуино подключена к порту 7? Тут возможен какой то конфликт между вашей операционной системой и программой Serial Port Reader. Попробуйте загрузиться с другой операционной системой (если у вас есть такая возможность) или запустить все это на другом компьютере
Фото получается с полосками помогите решить проблему.
Так сходу сложно сразу подсказать в чем может быть проблема. Пробовали что либо сменить из аппаратного обеспечения проекта: камеру, плату или компьютер? У данной статьи уже очень много просмотров и никто больше не пожаловался на такую проблему, поэтому маловероятно что проблема заключается в коде программы для платы Ардуино
while ((reg_addr != 0xff) | (reg_val != 0xff)) <
reg_addr = pgm_read_byte(&next->reg_num);
reg_val = pgm_read_byte(&next->value);
writeReg(reg_addr, reg_val);
next++;
плохо работает так как конец массива отправится тоже — проверка идет после отправки
Иногда, как говорится, лучшее — враг хорошего. Возможно, данный фрагмент кода работает не оптимально, но все же работает. Если можете, предложите как его усовершенствовать, был бы признателен
камера дебильная как сделать фотоаппарат так admin-new дайте ссылку там где будет фотоаппарат из ардуино
Вычислительная мощность платы Arduino слишком мала для того чтобы к ней можно было подключить камеру с хорошим разрешением. Для этого используйте платы помощнее, например, Raspberry Pi или ESP32
Что делать, если пишет, что доступ к порту «COM2» закрыт?
А в диспетчере устройств что показано по поводу данного порта? У вас плата Ардуино подключена к COM2 или какому либо другому порту?
В диспетчере устройств есть этот порт, компьютер его видит и никаких проблем нет. Сама плата Ардуино подключена к порту COM2. Уже практически всё перепробовал: менял настройки порта в диспетчере устройств, перезагружал программу/компьютер, подключал во все порты USB на компьютере, менял компьютер, но проблема не ушла.
Проблема заключается ещё в том, что при загрузке и компиляции самой программы никаких проблем нет, но при работе SerialPortReader происходит странное: после выбора порта нажимаю на кнопку «Start», запускается работа программы и в статусе программы указывается «COM2 port opened», но ничего не происходит (пытался сохранять изображение, но сохранялся «Квадрат Малевича»). Если нажать «Stop», а потом опять запустить программу, то в статусе работы программы пишет «Opening COM2 port» и выдаёт ошибку, где пишет:
Подробная информация об использовании оперативной
(JIT) отладки вместо данного диалогового
окна содержится в конце этого сообщения.
************** Текст исключения **************
System.UnauthorizedAccessException: Доступ к порту ‘COM4’ закрыт.
в System.IO.Ports.InternalResources.WinIOError(Int32 errorCode, String str)
в System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
в System.IO.Ports.SerialPort.Open()
в ReadSerialPortWin.frmPrinc.btnStart_Click(Object sender, EventArgs e)
в System.Windows.Forms.Control.OnClick(EventArgs e)
в System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
в System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
в System.Windows.Forms.Control.WndProc(Message& m)
в System.Windows.Forms.ButtonBase.WndProc(Message& m)
в System.Windows.Forms.Button.WndProc(Message& m)
в System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
в System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Загруженные сборки **************
mscorlib
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.9151 (WinRelRS6.050727-9100)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
—————————————-
ReadSerialPortWin
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Users/Илья/OneDrive/Desktop/SerialPortReader.exe
—————————————-
System.Windows.Forms
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
—————————————-
System
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
—————————————-
System.Drawing
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
—————————————-
System.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.resources/2.0.0.0_ru_b77a5c561934e089/System.resources.dll
—————————————-
System.Windows.Forms.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_ru_b77a5c561934e089/System.Windows.Forms.resources.dll
—————————————-
mscorlib.resources
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.9151 (WinRelRS6.050727-9100)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
—————————————-
System.Xml
Версия сборки: 2.0.0.0
Версия Win32: 2.0.50727.9149 (WinRelRS6.050727-9100)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
—————————————-
************** Оперативная отладка (JIT) **************
Для подключения оперативной (JIT) отладки файл .config данного
приложения или компьютера (machine.config) должен иметь
значение jitDebugging, установленное в секции system.windows.forms.
Приложение также должно быть скомпилировано с включенной
отладкой.
При включенной отладке JIT любое необрабатываемое исключение
пересылается отладчику JIT, зарегистрированному на данном компьютере,
вместо того чтобы обрабатываться данным диалоговым окном.
Не могу понять из-за чего эта ошибка. Вы сталкивались с подобными проблемами?
Нет, я не сталкивался. У вас в сообщениях выдается ошибка что «Доступ к порту ‘COM4’ закрыт». Вы не путаете случайно COM4 и COM2? Вместо SerialPortReader можно попробовать использовать какое-нибудь аналогичное программное обеспечение. Также рекомендую хотя бы через окно монитора последовательной связи посмотреть что у вас передается в порт.
Еще в сети есть аналогичные проекты подключения камеры OV7670 к плате Arduino Uno с выводом видео на экран TFT дисплея. Если есть такой дисплей, то можете попробовать. У них начало программы точно такое же, как в моей статье, но способ вывода этой информации только отличается. Поскольку такие проекты есть в сети, то я не стал дублировать аналогичный проект для моего сайта
