ESP32CAM

文章目录

  • ESP32CAM
  • 前言
  • 一、环境配置
  • 二、视频传输
    • 1.代码
    • 2.获得网址

前言

配好环境过了好久了,之前一直因为一个库找不到,今天放弃了,用了别的方法

一、环境配置

环境配置看我之前的博客就可以了。

二、视频传输

使用一个usb转ttl连接esp32-cam:(切记一定要将io0接gnd)

1.代码

在您的Arduino IDE中,转到文件>示例> ESP32 >相机并打开CameraWebServer示例:。

#include "esp_camera.h"
#include <WiFi.h>//
// WARNING!!! PSRAM IC required for UXGA resolution and high JPEG quality
//            Ensure ESP32 Wrover Module or other board with PSRAM is selected
//            Partial images will be transmitted if image exceeds buffer size
//// Select camera model
#define CAMERA_MODEL_WROVER_KIT // Has PSRAM
//#define CAMERA_MODEL_ESP_EYE // Has PSRAM
//#define CAMERA_MODEL_M5STACK_PSRAM // Has PSRAM
//#define CAMERA_MODEL_M5STACK_V2_PSRAM // M5Camera version B Has PSRAM
//#define CAMERA_MODEL_M5STACK_WIDE // Has PSRAM
//#define CAMERA_MODEL_M5STACK_ESP32CAM // No PSRAM
//#define CAMERA_MODEL_AI_THINKER // Has PSRAM
//#define CAMERA_MODEL_TTGO_T_JOURNAL // No PSRAM#include "camera_pins.h"const char* ssid = "*********";
const char* password = "*********";void startCameraServer();void setup() {Serial.begin(115200);Serial.setDebugOutput(true);Serial.println();camera_config_t config;config.ledc_channel = LEDC_CHANNEL_0;config.ledc_timer = LEDC_TIMER_0;config.pin_d0 = Y2_GPIO_NUM;config.pin_d1 = Y3_GPIO_NUM;config.pin_d2 = Y4_GPIO_NUM;config.pin_d3 = Y5_GPIO_NUM;config.pin_d4 = Y6_GPIO_NUM;config.pin_d5 = Y7_GPIO_NUM;config.pin_d6 = Y8_GPIO_NUM;config.pin_d7 = Y9_GPIO_NUM;config.pin_xclk = XCLK_GPIO_NUM;config.pin_pclk = PCLK_GPIO_NUM;config.pin_vsync = VSYNC_GPIO_NUM;config.pin_href = HREF_GPIO_NUM;config.pin_sscb_sda = SIOD_GPIO_NUM;config.pin_sscb_scl = SIOC_GPIO_NUM;config.pin_pwdn = PWDN_GPIO_NUM;config.pin_reset = RESET_GPIO_NUM;config.xclk_freq_hz = 20000000;config.pixel_format = PIXFORMAT_JPEG;// if PSRAM IC present, init with UXGA resolution and higher JPEG quality//                      for larger pre-allocated frame buffer.if(psramFound()){config.frame_size = FRAMESIZE_UXGA;config.jpeg_quality = 10;config.fb_count = 2;} else {config.frame_size = FRAMESIZE_SVGA;config.jpeg_quality = 12;config.fb_count = 1;}#if defined(CAMERA_MODEL_ESP_EYE)pinMode(13, INPUT_PULLUP);pinMode(14, INPUT_PULLUP);
#endif// camera initesp_err_t err = esp_camera_init(&config);if (err != ESP_OK) {Serial.printf("Camera init failed with error 0x%x", err);return;}sensor_t * s = esp_camera_sensor_get();// initial sensors are flipped vertically and colors are a bit saturatedif (s->id.PID == OV3660_PID) {s->set_vflip(s, 1); // flip it backs->set_brightness(s, 1); // up the brightness just a bits->set_saturation(s, -2); // lower the saturation}// drop down frame size for higher initial frame rates->set_framesize(s, FRAMESIZE_QVGA);#if defined(CAMERA_MODEL_M5STACK_WIDE) || defined(CAMERA_MODEL_M5STACK_ESP32CAM)s->set_vflip(s, 1);s->set_hmirror(s, 1);
#endifWiFi.begin(ssid, password);while (WiFi.status() != WL_CONNECTED) {delay(500);Serial.print(".");}Serial.println("");Serial.println("WiFi connected");startCameraServer();Serial.print("Camera Ready! Use 'http://");Serial.print(WiFi.localIP());Serial.println("' to connect");
}void loop() {// put your main code here, to run repeatedly:delay(10000);
}

在上传代码之前,您需要在以下变量修改可以连接的wifi:

const char* ssid = “REPLACE_WITH_YOUR_SSID”;

const char* password = “REPLACE_WITH_YOUR_PASSWORD”;

然后,确保选择正确的相机模块。我使用的是AI-THINKER模型。

因此,请注释所有其他模型,并取消注释该模型:

// Select camera model
//#define CAMERA_MODEL_WROVER_KIT // Has PSRAM
//#define CAMERA_MODEL_ESP_EYE // Has PSRAM
//#define CAMERA_MODEL_M5STACK_PSRAM // Has PSRAM
//#define CAMERA_MODEL_M5STACK_V2_PSRAM // M5Camera version B Has PSRAM
//#define CAMERA_MODEL_M5STACK_WIDE // Has PSRAM
//#define CAMERA_MODEL_M5STACK_ESP32CAM // No PSRAM
#define CAMERA_MODEL_AI_THINKER // Has PSRAM
//#define CAMERA_MODEL_TTGO_T_JOURNAL // No PSRAM

要上传代码,请按照以下步骤操作:

1)转到工具>主板,然后选择AI-Thinker ESP32-CAM。

2)进入工具>端口,选择ESP32连接的COM端口。

3)然后,点击上传按钮上传代码。

不久之后就会上传成功,如果上传不成功或者连接不了,请确认接线是否正确,是否将io0连接gnd

2.获得网址

通过串口可以获得网址,将网址粘贴到浏览器即可,注意一定要和你的电脑在同一局域网下

ESP32CAM摄像头图像实时传输相关推荐

  1. C,C++网络编程实现图像实时传输

    导师让我把项目里OpenGl生成的图片通过UDP网络编程实时传输到电脑另一端,从一点不了解到实现图片单张传输,再到最后用TCP编程实现多张图片实时传输;没有能达到老师的要求,用UDP实现多张图片传输, ...

  2. 9 摄像头视频实时传输

    (1)下载功能包,网址为:GitHub - ros-drivers/usb_cam: A ROS Driver for V4L USB Cameras 资料网址:usb_cam - ROS Wiki. ...

  3. UDP/TCP实时传输图像

    首先问个问题,为什么要用UDP传输图像,而不是TCP? TCP是我们经常使用的通信协议,从认识它的第一天起,就应该知道,它非常稳,丢包率超低.但是一切都有双面性,稳定会影响传输的速度.与TCP不同,U ...

  4. orangepi-zero2使用tft-lcd实时显示USB摄像头图像-2

    目录 一.USB摄像头驱动 二.上代码 本文使用环境: 电脑:Ubuntu 18.04.5 LTS 开发板:orangepi-zero2 交叉编译器:aarch64-none-linux-gnu- 摄 ...

  5. PC电脑实时接收树莓派摄像头图像数据并显示(Python实现)

    目录 一.任务概述 二.环境安装 三.实现 3.1 上位机端(PC服务器端) 3.2 树莓派端(客户请求端) 四.运行效果 一.任务概述 最近在做一个树莓派自动驾驶小车,上位机使用windows10 ...

  6. 乐鑫Esp32学习之旅28 安信可 ESP32-Cam 摄像头开发板二次开发 C SDK编程,实现MQTT远程拍照传输到私有服务器。(附带源码)

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1. 爬坑学习新旅程,虚拟机搭建esp32开发环境,打印 " ...

  7. 在局域网内实现图像的实时传输

    作者:bat603 网址:http://blog.csdn.net/bat603/(本文可以随意转载及修改并可用于任何用处,但须注明作者和网址) 在局域网内实现图像的实时传输(实现环境bcb6.0+M ...

  8. python opencv 图像网络传输

    本代码主要实现的是利用网络传输图片,用在我的树莓派项目之上.该项目在PC上运行服务端,树莓派上运行客户端,两者连接到同一局域网中,修改代码中的IP地址,就可以实现将树莓派采集到的图像数据实时传输到PC ...

  9. 乐鑫Esp32学习之旅 安信可 ESP32-Cam 摄像头开发板二次开发 C SDK编程,拍照图片通过有线串口传到上位机PC端。(附带设备端+PC端源码)

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 系列一:ESP32系列模组基础学习系列笔记 1. 爬坑学习新旅程,虚 ...

最新文章

  1. 前端界面的rem适配换算
  2. 讲真,MySQL索引优化看这篇文章就够了
  3. arg是什么函数_怎么实现边听歌边搜图?线程初体验:常用函数
  4. C#中HttpClient使用注意:预热与长连接
  5. 什么是 SAP Spartacus UI 的 direction 服务
  6. mysql decimal型转化为float_5分钟搞懂MySQL数据类型之数值型DECIMAL类型
  7. 我并不想劝人创业当老板
  8. NoiseAsh Rule Tec All Collection for Mac(无源均衡器)
  9. 获取别人_职场潜规则:要想获取别人信任与更多机会,先要学会勇于承担责任...
  10. 法律咨询小程序开发制作(律师事务所小程序)
  11. Python爬虫之爬取酷狗音乐
  12. 流体力学与流体计算力学基础(一)
  13. PROFINET转EtherCAT网关方案设计
  14. win10桌面计算机图标隐藏,win10系统隐藏桌面单个图标的恢复方法
  15. CDH踩坑记录之:熵不足
  16. jcp jsr_“ IBM和Red Hat *不应*都保留其JCP EC席位”
  17. GBase 8c产品架构
  18. 3DMAX安装未完成,某些产品无法安装的解决方法
  19. java格式化时间间隔_用Java本地化格式化时间间隔
  20. 关于企业微信中开发第三方应用遇到的退出问题

热门文章

  1. 负数补码(16进制转10进制的负数)
  2. Qt+FFmpeg录屏
  3. 微信如何实现小程序实时视频直播点播?有哪些难点?
  4. lg手机历史机型_LG G系列旗舰手机进化史
  5. 20180529-A · Comic book characters · ggplot2 geom_bar geom_text 柱状图 条形图 图例 · R 语言数据可视化 案例 源码
  6. Matlab代码书写规范
  7. 【解决方案】windows系统部分软件变日文
  8. wineqq解决字体问题
  9. 在CAD里怎么测量面积?
  10. 无版权?免费?无水印?高清大图?视频?