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

Arduino+ESP8266驱动4.2寸墨水屏完整教程

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

Arduino+ESP8266驱动4.2寸墨水屏完整教程

引用
CSDN
1.
https://blog.csdn.net/qq_39538698/article/details/142333154

Arduino和ESP8266是两个非常流行的开源硬件平台,它们可以轻松地组合在一起,实现各种有趣的功能。本文将详细介绍如何使用Arduino和ESP8266驱动4.2寸墨水屏,包括硬件准备、接线说明、软件准备以及完整的代码实现。

一、硬件准备

  • 4.2寸墨水屏:可以在某宝或某鱼上购买二手的带壳墨水屏。
  • 墨水屏驱动板:同样可以在某宝或某鱼上购买。
  • 主控IC:ESP8266。注意:墨水屏的外壳很难拆卸,建议直接割开,可以使用加热刀片进行切割,切割位置在屏幕正面右下角,注意不要割断显示排线。

二、接线说明

ESP8266与墨水屏驱动板的接线关系如下:

驱动板            ESP8266
GND-----------GND
3V3-----------3V3
SCK-----------D5
SDA-----------D7
RST-----------D3
DC-----------D2
CS1-----------D8
BUSY-----------D1  

三、软件准备

需要下载并安装Waveshare的ESP8266墨水屏驱动。驱动下载链接:E-Paper ESP8266 Driver Board - Waveshare Wiki

选择4.2寸墨水屏的驱动进行安装。开发环境使用Arduino IDE。

四、代码实现

1. 头文件包含

#include "DEV_Config.h"    // 设备配置相关的头文件
#include "EPD.h"           // 电子纸显示(EPD)相关的头文件
#include "GUI_Paint.h"     // 图形用户界面绘制相关头文件
#include "imagedata.h"     // 图像数据相关头文件
#include <stdlib.h>        // C标准库的头文件

2. 定义全局变量

unsigned char BMP_BUF[15000];    // 用于暂存图像数据的数组

3. 图像播放函数

void Play_image_tt(void)
{
    for(int i = 0; i < 5; i++) {
        memset(BMP_BUF, 0, sizeof(BMP_BUF));
        memcpy(BMP_BUF, BMP1[i], sizeof(BMP_BUF));
        delay(50);
        EPD_4IN2_Display((UBYTE *)BMP_BUF);
        delay(10000);
    }
}

4. 主程序

void setup()
{
    Serial.begin(115200);
    DEV_Module_Init();
    printf("e-Paper Init and Clear...\r\n");
    EPD_4IN2_Init_Fast();
    EPD_4IN2_Clear();
    DEV_Delay_ms(500);
    memset(BMP_BUF, 0, sizeof(BMP_BUF));
    memcpy(BMP_BUF, BMP1[0], sizeof(BMP_BUF));
    EPD_4IN2_Display((UBYTE *)BMP_BUF);
    delay(3000);
}

void loop()
{
    Play_image_tt();
}

5. 图像数据定义

#ifndef _IMAGEDATA_H_
#define _IMAGEDATA_H_
#undef  ICACHE_RODATA_ATTR
#define ICACHE_RODATA_ATTR __attribute__((section(".irom.text")))
#undef  PROGMEM
#define PROGMEM   ICACHE_RODATA_ATTR
extern const unsigned char PROGMEM BMP1[][15000];
const unsigned char PROGMEM BMP1[][15000]= {
// 图像数据省略,具体内容见原文
};
#endif

五、显示效果


© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号