问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

ESP8266驱动1.54寸水墨屏详细教程

创作时间:
作者:
@小白创作中心

ESP8266驱动1.54寸水墨屏详细教程

引用
CSDN
1.
https://blog.csdn.net/qq_26555839/article/details/140417488

本文将详细介绍如何使用ESP8266开发板驱动1.54寸水墨屏。通过本教程,读者将学习到硬件连接、开发环境配置以及具体编程步骤,适合有一定基础的电子爱好者参考。

使用材料

  1. ESP8266开发板
  2. 中景圆的1.54寸水墨屏模块
  3. 若干线材

开发环境

  1. Visual Studio Code (VSCode)
  2. Platform-IO
  3. Arduino框架

连线方式

  • SCL —> D5
  • SDA —> D7
  • RES —> D1
  • DC —> D2
  • CS —> D3
  • BUSY —> D4

使用流程

  1. 新建工程

  2. 添加填写项目名称,选择开发板为ESP8266 12E,framework选择Arduino,并选择自定义工程位置,点击flish


    加载完成后选择是,即可完成新建项目

  3. 接下来需要添加GxEPD2库

    根据上面的步骤,搜索到库以后,添加到需要的工程里面
    添加完成会自动打开这个platfromio.ini的配置文件,可以看到,已经添加了需要的库。

返回工作文件目录,找到下面例程
我选择的是一个GxEPD2_HelloWorld示例工程,将里面的文件全选,然后复制,粘贴到工程的src文件目录下
修改GxEPD2_HelloWorld.ino文件的名称,将后缀改为cpp即GxEPD2_HelloWorld.cpp,打开这个文件,然后在导入头文件#include <Arduino.h>,在setup()函数上面添加void helloWorld();函数声明,因为这个不是在arduino ide里面,所有需要声明,才能调用得到。

打开GxEPD2_display_selection_new_style.h文件,找到#define GxEPD2_DRIVER_CLASS GxEPD2_213_B74 // GDEM0213B74 122x250, SSD1680, FPC-7528B)这一行代码,然后取消注释。使用这个主要是因为,这个使用的是SSD1680驱动,跟1.54寸水墨屏的驱动一样。

按住Ctrl键,然后用鼠标点击GxEPD2_213_B74,进入这个类中,修改宽和高为152,如图所示
返回之前的文件:GxEPD2_display_selection_new_style.h,将代码往下滑,找到水墨屏的功能控制引脚设置,这里的引脚应该是可以随意映射的,我这里使用的是上面标注的
其他的引脚自己测试,有可能会出现烧录代码后,上电开机,设备处于等待烧录的模式,无法正常使用,例如使用D8为复位脚时,就会出现问题,原因可能是因为如图,

在vscode窗口的左下部分,找到向右的→,编译后上传
编译完成后,会自动下载到设备,记得电脑先链接设备,ESP8266开发板链接好屏幕

注意:ESP8266开发板使用的是USB串口下载的,需要提前安装好对应的串口驱动,避免找不到设备,从而下载失败

下载完成,试一试按下开发板的RST键有没有反应,如果没有反应,就断开USB线,重新上电
回到主程序文件,修改void helloWorld()函数内的display.setRotation(0);里的参数为0,可以改变屏幕的显示方向。

总结

  1. 使用GxEPD2可以很轻松的点亮1.52寸的水墨屏
  2. 经过我做的其他测试,根据此方法,可以实现ESP32 S3驱动这块屏幕,但是记得重新初始化SPI,ESP32 S3中,我使用的是HSPI,好像对应的是SPI2,修改display.init为如图所示,只添加一个参数,如图所示,即可如ESP8266一样,驱动这个水墨屏。
  3. 我有另一块一样的1.54寸的水墨屏hink-e0154a05-a2,但是分辨率为200200,使用的驱动是SSD1608,所以只要在GxEPD2_display_selection_new_style.h文件中找到使用SSD1608的示例,然后修改分辨率为200200,依然使用中景圆的这个1.54的模块,换掉上面的屏幕为当前的200*200的屏幕,就可以正常驱动使用。
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号