目录
PS:前段时间刚刚拿到一个带摄像头模块的esp32开发板,基于博主是一个Arduino开发的小白,因为之前没有用过这款开发板加上不熟悉Arduino的开发模式,听身边的朋友说Arduino的开发很简单,但是开发的过程并不顺利。
本文基于一个小小白如何成功实现esp32cam在tft实时画面的显示的保姆级教程,请跟紧,如有错误,请指出。
先附带实物演示:
esp32cam在tft彩屏的实时显示
一、Arduino ide下载
作为一个开发者,我们都知道要想驱动开发板及实现相应的功能,我们少不了一个写代码的工具,而本文使用的是Arduino ide,我们这里需要使用这个ide里面的库文件进行开发,这样就可以极大的缩短我们的开发周期了。
下载地址:Software | Arduino
点击链接即可下载。
二、更改ide显示文字模式
首先,我们打开Arduino ide ,首次打开可能是英文模式,本文讲解以中文模式讲解标注,如需更改软件语言可以参考博文:http://t.csdnimg.cn/XWbLE
三、添加附加开发板地址
打开Arduino IDE菜单 > 文件 >首选项,在 附加开发板管理器网址 输入框中,填入以下网址:
https://arduino.me/packages/esp32.json
四、下载esp32的开发板。
在左上角的菜单栏的“工具”选项卡下找到“开发板”选项卡,然后选择“开发板管理器”,进入面板后在搜索栏输入 esp32
选择红色框框内容,点击下载。等待下载成功,这个过程可能比较久,有条件可以科学上网或者下载开发板的离线包,这样会比较快。
离线包参考链接:esp32_package_2.0.12_arduinome.exe官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘
下载完以后直接运行.exe就行,会自动安装到相应环境。(因为开发板版本更替很快,可能你们安装的并不是最新版的,可能会落后几个版本,但是不影响基础开发使用,介意可在线下载最新即可)
安装完毕后重启ide即会显示esp32开发板安装成功。
当我们插上开发板,再次重启ide之后就能在Arduino IDE菜单 > 文件 >示例中看到esp32的身影了。
五、下载GitHub源文件。
基于我们是二次开发,前面已经有很多牛人完成了我们所需要的功能,所以我们最快捷的方法就是学习牛人的代码,站在巨人的肩膀上才能走得更远。
tft彩屏显示的开源地址:https://github.com/vivian-ng/ESP32CAM_TFT
六、下载库文件。
将该文件下载后打开.ino文件。
打开文件以后,我们划到.ino文件的最上边,查看所有的include文件,将没有的库下载,可以通过编译输出的错误信息知道自己没有下载到哪些包。
可以通过库管理下载相应缺失的库。如下:
将相应的库文件下载完毕后我们的操作就可以完成80%啦!!!
七、更改User_Setup.h文件内容
在你的电脑找到以下路径的User_Setup.h文件
文件路径:xxx\Documents\Arduino\libraries\TFT_eSPI
第一步找到后打开User_Setup.h ,然后大概在47行左右,将其他的定义注释掉,使用ST7735_DRIVER定义。
第二步找到并启用
#define TFT_RGB_ORDER TFT_BGR
其他两个框框的是根据你所买的tft屏幕尺寸选择的,比如128*160,那就选用如下文代码。
往下引脚部分很重要!!!
记住是找对esp32的部分,大概在212行左右,改成你的esp32cam与tft连接的引脚。
更改完成后保存文件!!!
八、烧录程序。
终于到了最最后的一步,就是将程序烧录进去,等你将程序烧录进去,tft就能显示你的摄像头画面啦!!!
void showingImage(){
camera_fb_t *fb = capture();
if(!fb || fb->format != PIXFORMAT_JPEG){
Serial.println("Camera capture failed");
esp_camera_fb_return(fb);
return;
}else{
TJpgDec.drawJpg(0,0,(const uint8_t*)fb->buf, fb->len);
esp_camera_fb_return(fb);
}
}
void loop() {
buttonEvent();
showingImage();
}
本文到此结束,希望能解决大家的困难,如有错误之处,评论区留言相互学习!