之前都是8266相关的操作,这次我们正好手里有了块ESP32的板子,而且带了个摄像头。提到ESP32,其实就是ESP8266的升级版,整体的CPU处理能力更强,不仅支持WIFI,同时还支持蓝牙。由于我这块板子本身还带了个摄像头,是ov2460型号的,所以今天我们来看看如何将其驱动起来并点亮。

搭建ESP32的开发环境

由于之前使用的Arduino IDE是esp8266的开发环境,不具备esp32的开发环境,所以这里我们需要按照如下步骤来搭建esp32的开发环境,步骤有些繁琐,还是和我慢慢的来进行吧。

1.本地新建一个文件夹,比如我这里是E:\esp8266工具\deploy\32deploy

2.网页打开https://dl.espressif.com/dl/package_esp32_index.json并将此json文件保存到步骤1中的文件夹中。

3.网页打开百度网盘:https://pan.baidu.com/s/1GPwifqe_UvORb3OdAV42qQ 提取码: r6pt  将下载的文件解压到步骤1中的文件夹中。

4.将步骤1中的json文件中的这几个文件的URL都变更为192.168.43.254,然后保存此json文件。 或者将3中解压的文件拷贝到C:\Users\sscy\AppData\Local\Arduino15\staging\packages中,不同机器路径不一样,请斟酌更改。

   这两种方法,各取其一就行。

5.网页打开https://www.rejetto.com/hfs/?f=dl,下载hsf.exe,用于搭建web文件服务器。

注意,如果你网络连接外网通畅,就没必要这么麻烦了,直接按照正常流程就行了。

备齐这些材料之后,然后我们打开hsf.exe,然后目录指向步骤1中的目录,服务器就搭建好了:

image

之后,打开arduino ide,将路径填写为我们文件服务器生成的路径:

image

之后,在开发板管理选项中,输入esp32,点击安装,由于咱们的文件都备齐了,所以这里免除了下载步骤,直接进行了安装:

image

一切完毕后,可以看到ESP32的环境已经安装好了。

程序设置

首先,选择开发板,这里我们按照如图设置进行选取:

image

之所以这里选择Huge App是因为cam驱动需要2m多一点的空间,选择这个选项,烧写的时候,不会出错。

然后,选择好板子之后,我们开始加载程序,依次选择文件->示例->ESP32->Camera->CameraWebServer,将例子加载好,加载好之后的内容如下:

image

这里需要记得,按照注释的说明,将开头处的定义更改为

#define CAMERA_MODEL_AI_THINKER

即可。

程序烧写

烧写程序,需要USB-TTL的工具,我这里有一个,是基于340G的,接线方式如下:

image

需要注意的是,在固件烧录模式下,GPIO0口是一定要接GND的。

最后整体的接线图如下,绿色线即为GPIO0口和GND口相连:

image

接好后,开始进行烧写吧:

image

烧写过程比较慢,需要慢慢的等烧写完毕,烧写完毕之后,按rst按钮复位,从串口监视器中,我们可以看到如下输出:

rst:0x1 (POWERON_RESET),boot:0x3 (DOWNLOAD_BOOT(UART0/UART1/SDIO_REI_REO_V2))
waiting for download

这输出表明ESP32板子整体处在下载模式Ready的状态,也就是Flash模式中,可以进行程序下载。

由于这里我们程序已经下载完毕了,所以可以解除Flash模式了,我们拔掉GPIO0口和GND口的那条绿色的线,然后按rst按钮复位一下,此时可以看到如下输出:

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:8896
load:0x40080400,len:5816
entry 0x400806ac

.............
WiFi connected
Starting web server on port: '80'
Starting stream server on port: '81'
Camera Ready! Use 'http://192.168.43.153' to connect

可以看到,我们的程序成功跑起来了,按照提示说明,我们打开链接看看:

image

可以看到摄像头已经使能了,同时从串口监视器中可以看到有数据流传输了:

 

 具体更多功能,留待大家探索就行了。

话后语

需要注意几点:

1.烧写的话,GPIO0一定要接GND,运行的时候,GPIO0和GND断开。

2.USB-TTL烧写,需要按照对应的针脚连接,340G的话,需要先装好驱动。

3. 摄像头运行的时候,必须要自己的手捏住板子背面插TF卡的铁卡套,才能非常流畅的运行,松开手就运行的比较卡顿,也不知道为啥,难道是因为哪里接错了吗?

参考文章为:

https://blog.csdn.net/zhou1986jia/article/details/104763361/

https://randomnerdtutorials.com/esp32-cam-troubleshooting-guide/

https://www.jianshu.com/p/c1a69a6772f3

posted on 2020-05-17 11:11  程序诗人  阅读(3667)  评论(0编辑  收藏  举报