欢迎光临
我们一直在努力

新手零门槛搭建 ESP32 + OV3660 摄像头 MJPEG 流服务器(ESP-IDF v5.1.6 适配版)

前言

本文专为零基础新手打造,从硬件选型与接线、开发环境准备、代码编写与编译到最终访问摄像头流,全程保姆级教程。基于 ESP-IDF v5.1.6 开发,完美适配 OV3660 摄像头与微软 Edge 浏览器,代码可直接复制使用,一次性解决「编译报错」「SOI 标记缺失」「Edge 无法解析流」等核心问题。

一、核心目标

用 ESP32-CAM 开发板 + OV3660 摄像头,搭建一个 MJPEG 视频流服务器,通过 WiFi 连接后,在浏览器中输入 ESP32 局域网 IP,即可实时查看摄像头画面。

二、硬件架构与选型

1. 核心硬件清单(新手必买,无兼容问题)

硬件名称
规格要求
作用
ESP32-CAM 开发板 搭载 ESP32-WROOM-32 核心,无 PSRAM 版本即可 核心控制单元,负责 WiFi 通信、摄像头驱动、HTTP 服务器运行
OV3660 摄像头模块 适配 ESP32-CAM 引脚,自带排线 图像采集,输出 JPEG 格式图像
ESP32-CAM 专用烧录座 适配 ESP32-CAM 引脚,支持一键烧录 替代 USB 转 TTL,简化烧录流程,无需手动接 IO0
USB 数据线 Micro USB 接口,适配烧录座 给烧录座供电,传输烧录数据

2. 硬件架构原理

#mermaid-svg-fLitf4PvlviJ5D6y{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-fLitf4PvlviJ5D6y .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-fLitf4PvlviJ5D6y .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-fLitf4PvlviJ5D6y .error-icon{fill:#552222;}#mermaid-svg-fLitf4PvlviJ5D6y .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-fLitf4PvlviJ5D6y .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-fLitf4PvlviJ5D6y .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-fLitf4PvlviJ5D6y .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-fLitf4PvlviJ5D6y .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-fLitf4PvlviJ5D6y .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-fLitf4PvlviJ5D6y .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-fLitf4PvlviJ5D6y .marker{fill:#333333;stroke:#333333;}#mermaid-svg-fLitf4PvlviJ5D6y .marker.cross{stroke:#333333;}#mermaid-svg-fLitf4PvlviJ5D6y svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-fLitf4PvlviJ5D6y p{margin:0;}#mermaid-svg-fLitf4PvlviJ5D6y .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-fLitf4PvlviJ5D6y .cluster-label text{fill:#333;}#mermaid-svg-fLitf4PvlviJ5D6y .cluster-label span{color:#333;}#mermaid-svg-fLitf4PvlviJ5D6y .cluster-label span p{background-color:transparent;}#mermaid-svg-fLitf4PvlviJ5D6y .label text,#mermaid-svg-fLitf4PvlviJ5D6y span{fill:#333;color:#333;}#mermaid-svg-fLitf4PvlviJ5D6y .node rect,#mermaid-svg-fLitf4PvlviJ5D6y .node circle,#mermaid-svg-fLitf4PvlviJ5D6y .node ellipse,#mermaid-svg-fLitf4PvlviJ5D6y .node polygon,#mermaid-svg-fLitf4PvlviJ5D6y .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-fLitf4PvlviJ5D6y .rough-node .label text,#mermaid-svg-fLitf4PvlviJ5D6y .node .label text,#mermaid-svg-fLitf4PvlviJ5D6y .image-shape .label,#mermaid-svg-fLitf4PvlviJ5D6y .icon-shape .label{text-anchor:middle;}#mermaid-svg-fLitf4PvlviJ5D6y .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-fLitf4PvlviJ5D6y .rough-node .label,#mermaid-svg-fLitf4PvlviJ5D6y .node .label,#mermaid-svg-fLitf4PvlviJ5D6y .image-shape .label,#mermaid-svg-fLitf4PvlviJ5D6y .icon-shape .label{text-align:center;}#mermaid-svg-fLitf4PvlviJ5D6y .node.clickable{cursor:pointer;}#mermaid-svg-fLitf4PvlviJ5D6y .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-fLitf4PvlviJ5D6y .arrowheadPath{fill:#333333;}#mermaid-svg-fLitf4PvlviJ5D6y .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-fLitf4PvlviJ5D6y .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-fLitf4PvlviJ5D6y .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-fLitf4PvlviJ5D6y .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-fLitf4PvlviJ5D6y .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-fLitf4PvlviJ5D6y .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-fLitf4PvlviJ5D6y .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-fLitf4PvlviJ5D6y .cluster text{fill:#333;}#mermaid-svg-fLitf4PvlviJ5D6y .cluster span{color:#333;}#mermaid-svg-fLitf4PvlviJ5D6y div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-fLitf4PvlviJ5D6y .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-fLitf4PvlviJ5D6y rect.text{fill:none;stroke-width:0;}#mermaid-svg-fLitf4PvlviJ5D6y .icon-shape,#mermaid-svg-fLitf4PvlviJ5D6y .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-fLitf4PvlviJ5D6y .icon-shape p,#mermaid-svg-fLitf4PvlviJ5D6y .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-fLitf4PvlviJ5D6y .icon-shape rect,#mermaid-svg-fLitf4PvlviJ5D6y .image-shape rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-fLitf4PvlviJ5D6y .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-fLitf4PvlviJ5D6y .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-fLitf4PvlviJ5D6y :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}

图像采集

数据传输

处理核心JPEG 校验、WiFi 通信、HTTP 服务器

网络中转 无线连接

解析 MJPEG 流并显示画面

OV3660 摄像头

ESP32-CAM 引脚

ESP32 核心

家庭 WiFi 路由器

浏览器 Edge/Chrome

显示画面

3. 硬件实物图(新手直观参考)

以下是 ESP32-CAM + OV3660 + 烧录座的实物图,新手可直接对照购买: 在这里插入图片描述

4. 硬件接线(使用烧录座,零难度)

(1)ESP32-CAM 与烧录座接线
  • 将 ESP32-CAM 开发板金手指朝下,插入烧录座的对应插槽;
  • 确保 ESP32-CAM 与烧录座引脚完全对齐,无偏移。
  • (2)烧录座与 USB 数据线接线

    直接将 Micro USB 数据线插入烧录座的 Micro USB 接口,另一端插入电脑 USB 口即可(无需额外接线)。

    (3)ESP32-CAM 与 OV3660 接线

    直接将 OV3660 自带的排线插入 ESP32-CAM 的摄像头接口即可(注意排线方向,金手指朝向开发板正面)。

    三、开发环境准备(ESP-IDF v5.1.6)

    已安装 ESP-IDF v5.1.6 的新手可跳过此步骤,直接进入「四、项目搭建」。

    <

    赞(0)
    未经允许不得转载:171主机测评 » 新手零门槛搭建 ESP32 + OV3660 摄像头 MJPEG 流服务器(ESP-IDF v5.1.6 适配版)
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址