2021-06-01在AOS 3.3 上面 对 “老板来了”例子进行改造之三(用ESP32-CAM摄像头)

本文介绍了如何在AOS 3.3的"老板来了"示例中,用更经济的ESP32-CAM替换ESP-EYE摄像头。ESP32-CAM与ESP-EYE代码兼容,只需调整sdkconfig配置参数。同时,文章指出了camera_web_server的分辨率问题,并提供了通过REST接口修改摄像头显示格式的解决方案,确保QVGA显示效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述

在原来基于AOS 3.3 上面 老板来了哪个例子里面,用的摄像头是ESP-EYE摄像头。但是这个摄像头价格比较高,某宝上面基本上都是要¥150+以上。其实在老板来了这个例子里面,就是用摄像头取了一张照片。对摄像头的要求是不高的。用ESP32-CAM完全可以胜任。

 

 价格是不是差的有点大^ _ ^

ESP32-CAM使用

ESP32-CAM代码和ESP-EYE完全兼容,只要配上一个配套的USB转串口板(搭配的时候你可以选择OV2640摄像头,也可以选择其他广角的摄像头),接上电脑就可以直接编译了。

特别要说明的时候 在 camera_web_server 工程目录下面的sdkconfig文件要改一个编译参数

CONFIG_CAMERA_MODEL_AI_THINKER=y  

如果用ESP-EYE板子的话CONFIG_CAMERA_ESP_EYE=y 否则 启动的camera_web_server启动的时候会报错的

编译方法,烧录方法和用ESP-EYE的时候都一样

idf.py build

idf.py flash -p /dev/tty.usb-serial-1410

 

camera_web_server 参数调整

由于camera_web_server 摄像头的显示分辩率默认是HD格式,而在老板来了这个例子里面需要将显示格式设置为QVGA。在原来的文章里面介绍的方法是有BUG的,在某些时候是会造成显示不全的。我经过阅读camera_web_server的源代码发现可以用REST接口的方式对参数显示格式进行修改。

这样发调用将可以进行参数修改了。

http://172.20.10.13/control?var=framesize&val=5

这样就是把framesize设置为5(QVGA)了,以此类推还可以设置摄像头的左右,上下的翻转等其他参数。

在老板来了代码里面为专门加了一段代码是用来进行初始化格式的

static void init_http_camera()
{
    /* @brief http request buffer */
    #define REQ_BUF_SIZE 2048
    static char req_buf[REQ_BUF_SIZE];

    /* @brief http response buffer */
    #define RSP_BUF_SIZE 2048
    static char rsp_buf[RSP_BUF_SIZE];

    httpclient_t client = {0};
    httpclient_data_t client_data = {0};
    char * req_url = "http://172.20.10.13/control?var=framesize&val=5";
    int ret;
    char * customer_header = "Accept: */*\r\n";



    memset(req_buf, 0, sizeof(req_buf));
    client_data.header_buf = req_buf;
    client_data.header_buf_len = sizeof(req_buf);

    memset(rsp_buf, 0, sizeof(rsp_buf));
    client_data.response_buf = rsp_buf;
    client_data.response_buf_len = sizeof(rsp_buf);

    printf("init_http_camera request %s\r\n", req_url);

    httpclient_set_custom_header(&client, customer_header);
    ret = httpclient_get(&client, req_url, &client_data);
    if( ret >= 0 ) {
        printf("Data received: %s \r\n", client_data.response_buf);

        printf("init_http_camera success!\r\n");
    }

    return;
}

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值