【ESP32CAM+ArduinoIde接入点灯科技APP手机实时看视频,保姆级教程简单实用】

本文介绍了如何使用ESP32CAM与Arduino进行硬件连接,配置Arduino环境,下载并安装ESP32和Blinker库,修改源码以连接指定WiFi,并将设备添加到点灯APP中,实现设备与APP的交互。
摘要由CSDN通过智能技术生成

1.硬件连接

esp32CAM安装好摄像头和底板插入电脑usb,下载ch320驱动,一般电脑自行安装在这里插入图片描述

2.arduino配置

文件-首选项-附加开发板管理地址中添加https://dl.espressif.com/dl/package_esp32_index.json或者https://www.arduino.cn/package_esp32_index.json
在这里插入图片描述

3.下载esp32库

开发板管理器中找到esp32 by Espressif Systems库还有blinker库进行安装,国外网址不翻墙比较慢你懂的,多安装几次就可以了。或者下载esp32的安装包解压到自己对应的本地库文件路径,
例如C:\Users\xiao1\AppData\Local\Arduino15\packages\esp32\hardware\esp32在这里插入图片描述

4.选择文件-示例-Blinker-Blinker_ESP32_CAM

这是刚才安装好的Blinker第三方库例程

5.源码

代码中注释掉一键配网的//#define BLINKER_ESP_SMARTCONFIG,自己的wifi名字密码加进去,再把Blinker.begin(auth);改成Blinker.begin(auth, ssid, pswd);
代码如下,直接复制用就行

#define BLINKER_WIFI
//#define BLINKER_ESP_SMARTCONFIG

#include <Blinker.h>
#include "ESP32_CAM_SERVER.h"

char auth[] = "e79717272eee";
char ssid[]="JohnnyYong";//WiFi名称
char pswd[]="xxxx";//wifi密码
bool setup_camera = false;

void dataRead(const String & data)
{
    BLINKER_LOG("Blinker readString: ", data);

    Blinker.vibrate();
    
    uint32_t BlinkerTime = millis();
    
    Blinker.print("millis", BlinkerTime);
}

void setup()
{
    Serial.begin(115200);
    BLINKER_DEBUG.stream(Serial);

    pinMode(LED_BUILTIN, OUTPUT);
    digitalWrite(LED_BUILTIN, LOW);
    
    Blinker.begin(auth,ssid,pswd);
    Blinker.attachData(dataRead);
}

void loop()
{
    Blinker.run();

    if (Blinker.connected() && !setup_camera)
    {
        setupCamera();
        setup_camera = true;

        Blinker.printObject("video", "{\"str\":\"mjpg\",\"url\":\"http://"+ WiFi.localIP().toString() + "\"}");
    }
}

6.上传

烧录成功打开右上角串口监视器后按下底板的RST键,查看ip地址在这里插入图片描述

7.添加到点灯APP中

省的自己开发APP了,ios和Android都支持哈,同网络下流畅度还行,暂时不会做推流,路过的欢迎指点,赠人玫瑰,手有余香,有帮助记得点赞哈在这里插入图片描述

在上一期的免费项目:高性价比WIFI图传方案快速入门教程的介绍中,详细地介绍了ESP32-CAM模块的简单使用 ,其裁剪了官方图传和人脸识别的代码改造成简单的图传代码,由官方四个文件的代码缩减成一个文件的代码。目的就是让买家能快速上手这个源码。让这个源码复杂度降低很多,利于阅读和学习。 在这一期的免费项目:修改了上一期的项目的源码,实现嵌入式web server功能实现远程浏览器WIFI点灯的操作(PIN4的IO口集成了闪光灯LED,所以不用外接灯了,亮瞎眼的亮度),实现了将服务器嵌入到单片机,单片机wifi联网之后,局域网访问单片机主页(通过串口打印的网址)就可以在网页里面控制开发板的灯,该设计是ESP32-CAM物联网应用的一个巨大的尝试,本人浪费生命值写了两天代码,踩了很多坑,也学到很多,写了一共三个版本的代码,此版本的代码是最便宜的一个版本,呵呵,不会接线和操作的看上期的项目即可,这里不再重复说明了,重要的事情说一遍:我有收费版的代码,服务更周到。 下面请看模块运行效果图: 下面是实物图: 模块的原理图: 电脑接上串口CH340,CH340接上ESP32-CAM之后,打开串口调试助手,调试效果如下: 服务器返回消息: 真源码截图(绝对给力): 项目总结:这次是利用ESP32-CAM模块对物联网应用的一次巨大的尝试,在电路城目前好像还没有相关的教程,在B站虽然有类似的项目,但是根本没有源码,也没有教程,而且功能没有我这个那么强大,因为我这个嵌入式服务器是有反馈的,而且支持网页手动输入指令,开灯或者关灯指令发送之后服务器会给客户端一个响应的,代码都是自己手工完成的,也借鉴过很多相关的项目。只要掌握这个嵌入式服务器远程点灯的项目,那么其他类似的设计就可以举一反三了。需要注意的是这个版本的代码是没有任何注释的,代码冗余度也很大,收费版的代码更加精简和加入详细注释(最关键)和调试代码。如下所示: 后期的的项目会涉及到图像处理(颜色识别,人脸检测,人脸识别,颜色跟踪,智能小车,手机app客户端控制,云平台语音识别,云平台图像识别等等,私有云图像处理,私有云监控搭建)全部原创开源,敬请期待。
好的,以下是基于 Arduino IDEESP32-CAM 点灯科技和蓝牙无线监控的代码示例: ``` #include <BluetoothSerial.h> #include <Wire.h> #include <Arduino.h> // 定义 LED 灯的引脚 const int ledPin = 4; // 定义蓝牙串口对象 BluetoothSerial SerialBT; void setup() { // 初始化串口和 LED 灯 Serial.begin(9600); pinMode(ledPin, OUTPUT); // 初始化蓝牙串口 SerialBT.begin("ESP32-CAM Bluetooth"); Serial.println("ESP32-CAM Bluetooth 开始工作"); } void loop() { // 检测蓝牙串口是否有数据可读 if (SerialBT.available()) { // 读取蓝牙串口的数据 char data = SerialBT.read(); // 根据读取到的数据来控制 LED 灯的开关 switch (data) { case '0': digitalWrite(ledPin, LOW); Serial.println("LED 灯已关闭"); break; case '1': digitalWrite(ledPin, HIGH); Serial.println("LED 灯已打开"); break; default: break; } } } ``` 在上述代码中,我们首先定义了 LED 灯的引脚为 4 号引脚,然后初始化了蓝牙串口对象 SerialBT。在 setup 函数中,我们初始化了串口和 LED 灯,并且开启了蓝牙串口。在 loop 函数中,我们不断检测蓝牙串口是否有数据可读,如果有数据可读,则通过读取到的数据来控制 LED 灯的开关。其中,当读取到 '0' 时,表示关闭 LED 灯;当读取到 '1' 时,表示打开 LED 灯。 需要注意的是,我们使用了 BluetoothSerial 库来实现蓝牙串口通信,因此需要先在 Arduino IDE 中安装该库。同时,由于 ESP32-CAM 板子上没有 USB 转串口芯片,因此我们需要通过 FTDI 等 USB 转串口模块将 ESP32-CAM 与电脑连接起来,以便进行代码烧录和调试。
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值