资料介绍
描述
上周我制作了一个电子相册,可以放在办公桌上展示一些照片。工作累了可以看看放松一下。以前我已经实现了在 LCD 上显示格式为 BMP 的图片。现在我们使用手机或相机获取的大多数图片都是JPG格式的,无法在LCD上使用。
在本教程中,我想分享如何建立一个可以显示JPG格式图片的数字相册。本教程将实现以下目标:
从 SD 卡读取并显示 JPG 格式的图片。
自动或手动切换图片。
ESP32 TFT LCD with Camera 模块配备 320 x 240 LCD 显示屏,使用 ili9341 驱动库。板上装有触控芯片STMPE610,用于触控。此外,板上还集成了 SD 卡模块。
带摄像头模块的 ESP32 TFT LCD 满足我的所有需求,我无需寻找其他模块。如果您有所有这些模块来替换它,您就可以构建自己的数字相册。
Arduino IDE 设置
安装 ESP32 开发板。
安装 TFT_eSPI 库。不要忘记根据您的硬件更新库中的 UserSetup.h 文件。我将在下面列出您需要更新的代码。
// Only define one driver, the other ones must be commented out #define ILI9341_DRIVER //#define ST7735_DRIVER // Define additional parameters below for this display //#define ILI9163_DRIVER // Define additional parameters below for this display
#define TFT_MISO 12//19 #define TFT_MOSI 13//23 #define TFT_SCLK 14//18 #define TFT_CS 15 // Chip select control pin #define TFT_DC 33// 2 // Data Command control pin //#define TFT_RST // 4 // Reset pin (could connect to RST pin) #define TFT_RST -1 // Set TFT_RST to -1 if display RESET is connected to ESP32 board RST
安装 TJpg_Decode 库来解码 JPG。
安装 Adafruit STMPE610 库。
固件
获取 SD 卡上的 JPG 图片列表。
int get_pic_list(fs::FS &fs, const char *dirname, uint8_t levels, String wavlist[30]) file_num = get_pic_list(SD, "/", 0, file_list);
由于SPI管脚(SPI_SCLK/SPI_MISO/SPI_MOSI)是共用的,所以在使用SPI通讯时需要手动设置选择信号,以保证通讯成功。表示当 SD 模块的片选信号为 LOW 且其他片选信号为 HIGH 时,ESP32 通过 SPI 与 SD 模块通信。
#define SPI_ON_TFT digitalWrite(TFT_CS, LOW) #define SPI_OFF_TFT digitalWrite(TFT_CS, HIGH) #define SPI_ON_SD digitalWrite(SD_CS, LOW) #define SPI_OFF_SD digitalWrite(SD_CS, HIGH) #define STMPE_ON digitalWrite(STMPE_CS, LOW) #define STMPE_OFF digitalWrite(STMPE_CS, HIGH)
TJpg_Decoder.h库提供了直接从SD卡中读取JPG图片数据并显示在屏幕上的功能。
TJpgDec.drawSdJpg(0, 0, file_list[file_index].c_str());
获取触摸时屏幕的位置值。
if (touch.touched()) { // read x & y & z; int pos[2] = {0, 0}; delay(100); // delay for SPI receive the data while (!touch.bufferEmpty()) { touch.readData(&x, &y, &z); pos[0] = x * 240 / 4096; pos[1] = y * 320 / 4096; }
准备图片
我们通常使用手机或相机拍照。照片的尺寸比LCD大得多。当您直接使用 LCD 显示这些图片时,并没有完全显示整个图片。我们需要提前使用图像处理软件,比如微软系统上的绘图工具,将图片压缩裁剪成320×240大小。
将准备好的图片复制到 SD 卡中,并将 SD 卡插入模块中。重启模块,一张数码相册就完成了。
触摸屏幕的右半部分可切换到下一张图片。
轻触屏幕左半边切换到最后一张图片。
如果没有触摸,十秒后画面会自动切换。
另外,我用网站把一些GIF图片转换成很多JPG图片,和数字相册一起播放。只需将ESP32设置为以非常快的速度切换图像,LCD就会播放GIF图片。虽然这种方法只能用于播放小尺寸的 GIF 图像。
- ESP32到ESP32通过Internet进行通信
- 使用ESP32制作ESP RainMaker IoT项目
- 乐鑫ESP32-MINI-1参考设计
- 乐鑫ESP32-MINI-1U参考设计
- 乐鑫ESP32-SenseKit参考设计
- 乐鑫ESP32-WROOM-32UE参考设计
- 乐鑫ESP32-LyraTD-DSPG_用户手册
- 乐鑫ESP32-DevKitS-V1.1参考设计
- 乐鑫ESP32-PICO-MINI-02参考设计
- 乐鑫ESP32-LyraTD-SYNA_用户手册
- 乐鑫ESP32-PICO-MINI-02U参考设计
- 乐鑫ESP32-MeshKit-Light_使用指南
- esp32-s3_datasheet
- 制作 NodeMCU ESP32 自定义固件
- esp32s下载电路原理图下载 27次下载
- ESP32能取代STM32吗?哪个更好? 2383次阅读
- ESP32-C3 WIFI的工作模式 4478次阅读
- 什么是ESP32-CAM摄像头? 2.1w次阅读
- 基于ESP32的简易web服务器设计 3305次阅读
- 使用ESP32连接腾讯云实现远程控制 3240次阅读
- 使用ESP32实现UDP通信的方法 5727次阅读
- ESP32使用MiroPython编程环境搭建 2690次阅读
- 基于ESP32制造有趣的超级马里奥主题时钟 4021次阅读
- ESP8266/ESP32自动下载原理 4249次阅读
- esp32物联网的应用实例 LoRa网关制作、触屏DIY电视、Sygic导航HUD 5405次阅读
- ESP32的数字遥测实现 1521次阅读
- 如何使用ESP32创建一个气象站 3771次阅读
- 如何利用ATSAMD21G18 M0设计音乐相册 3838次阅读
- 采用数字电压表专用IC来制作数码管电压表 6925次阅读
- dfrobotBeetle-ESP32控制器简介 2695次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多