1.开发板介绍
使用的ESP32-Cam实物图为:
在某宝可以轻易买到。它分为主板,和底板。底板的主要功能是供电、程序下载等等。主板才是ESP32芯片的核心。
2.固件烧录
使用摄像头之前,需要给ESP32刷入支持摄像头的固件库,其下载地址为:
https://doc.itprojects.cn/0006.zhishi.esp32/01.download/micropython/micropython_camera_feeeb5ea3_esp32_idf4_4.binhttps://doc.itprojects.cn/0006.zhishi.esp32/01.download/micropython/micropython_camera_feeeb5ea3_esp32_idf4_4.bin
如果不知道如何烧录固件,可以看:
ESP32学习(1)——环境搭建-CSDN博客https://blog.csdn.net/guangali/article/details/136120510
3.解决问题
按照步骤,烧录完固件后,会发现Thonny解释器的shell栏一直报错。
Device is busy or does not respond. Your options :
wait until it completes current work;
use Ctrl+C to interrupt current work;
reset the device and try again;
check connection properties;
make sure the device has suitable MicroPython / CircuitPython / fi rmware;
make sure the device is not in bootloader mode .
经过一下午的搜索,找到了解决方法。该底座设计有些问题,只需要用杜邦线将串口、供电口与烧录底座连接即可,避免其他的IO被占用,即可正常使用。连接好实物后,如下图所示
4.测试
在shell栏输入
如果不报错,就说明固件烧录成功,可以对其进行开发了。
5.拍摄照片
拍摄照片的代码为
import camera
# 初始化摄像头
camera.init(0, format=camera.JPEG, fb_location=camera.PSRAM)
# 拍摄一张图片
buf = camera.capture() # 大小是640x480
# 保存图片到文件
with open("第一张图片.png", "wb") as f:
f.write(buf) # buf中的数据就是图片的数据,所以直接写入到文件就行了
print("拍照已完成,点击Thonny左侧【MicroPython设备】右侧的三,\n然后看到‘刷新’,点击刷新会看到 图片,\n然后右击图片名称,选择下载到电脑的路径即可...")
运行代码后点击:
然后点刷新。
拍摄的照片不支持在线查看,需要将其下载到电脑上才能查看。(鼠标对准图片,右键,即可看到下载提示)
拍到的图片如下所示:
第二次点击运行就会报错。解决办法是把板子的USB数据线拔掉,重新插上即可