基于ESP32开发的墨水屏电子书阅读器

基于ESP32开发的墨水屏电子书阅读器,已开源

  1. 项目展示
    • 菜单列表:
      在这里插入图片描述

    • 书籍列表:
      在这里插入图片描述

    • 阅读页面:
      在这里插入图片描述
      在这里插入图片描述

    • 壁纸展示:
      在这里插入图片描述

    • 文件接收:在这里插入图片描述

    • 文件传输:

在这里插入图片描述

  1. 项目介绍:
    • 基于esp32芯片,sd模块,WeAct epaper 2.13寸墨水屏,三键功能实现的电子书阅读器
    • 工具及框架:vscode+platformio
    • 开发语言:c
    • 项目源码:
  2. 功能介绍:
    • 书籍阅读,删除
      阅读基本上下翻页,以及书籍删除
    • 书籍接收
      基于wifi连接的文件传输
    • 屏幕显示
      自定义的图片转位图信息后的图像显示功能,使用ImageToLCD软件转成.c文件,代码直接展示
  3. 模块介绍
    • sd模块

      • 连接方式:sd模块和显示模块都使用spi协议,只是对应cs引脚不同,作为一主多从片选信号使用;MOSI接23引脚,SCK接18引脚,MISO接19引脚;需要注意电源电压是否适配,这里统一采用3.3v;
      • 代码实现:主要用来处理文件内容的读写,和书籍列表等功能
    • 文件传输模块

      • 代码实现:使用socket进行文件传输,对应的远程传输功能使用java代码编写:socket文件发送java简易版
      • 需要注意的是:文件使用上,只能兼容utf-8编码的文件,否则会导致阅读乱码,虽然代码中字体使用gb2312,但是猜测问题原因是esp32系统操作编码格式只支持utf-8,所以在传输文件时可以将其他编码的文件进行格式转换为utf-8
    • wifi模块

      • 连接方式:芯片采用ESP32-WROOM,一体集成了wifi,这里不再详细说明
      • 代码实现:1.这里使用ap模式,相当于wifi服务器,用其他设备连接该wifi,缺陷就是其他设备连接使用时不能进行网络访问;2.针对前面的模式可以sta模式,去连接路由器网络,然后通网络下的设备就可以通过ip访问,这种方式的缺陷就是当前设备操作简陋,只支持三键操作,不能输入wifi的账号密码,一般只能代码写死在设备上,但是如果切换网络,又不能继续使用;3.针对前面两种情况,可以基于文件传输,实现wifi密码的配置,这样既能灵活连接wifi,也能使用网络,这里暂未实现,因为只是基于同网络下的socket文件传输,不需要网络
    • 墨水屏显示模块

      • 连接方式:SCK连接18引脚,MOSI连接23引脚,DC连接14引脚,CS片选连接4引脚(需要和sd分开),RST连接2引脚,BUSY连接15引脚,MISO对于该显示模块暂时不需要
      • 代码实现:1.需要注意使用中文显示,这里采用u8g2库,和开源wqy字体
      • 刷新模式:这里使用的局部刷新,减少全局刷新屏幕的闪烁
    • 按键操作:

      • 简单使用三个按键,使用中断进行功能操作,左键:25引脚,中键:33引脚,右键:32引脚
      • 按键功能:左键:一般用于菜单返回,中键:用于菜单列表向下滚动选择,右键:进入选择菜单;当然对于某些功能需要特殊修改,像阅读功能,左键向上翻页,右键向下翻页,中键返回书籍列表
  4. 整体缺陷:
    • 对其他尺寸屏幕的适应不是很好,没有特意去设计

    • 电源模块没有设计只是简单使用

    • 使用的存储设备可以使用更小的tf模块,之前买的sd模块,不过问题不大

    • 按钮买的矩阵键盘,为了连接方便,没有拆开,当然只需要三个按键

    • 暂未进行整体模块封装
      整体展示:
      在这里插入图片描述

      使用视频:

      墨水屏电子书阅读器

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值