在暑假闲的慌,在网上刷某宝时发现一块便宜的墨水屏,不由得触景生情,想起来我的kindle,进而想到用这个做一个时钟试试,又在网上购入一个带排线插口的esp32,准备搞搞试试,可是在此之前我没有任何经验,还是挺勇的。
第一个为难我的是io定义,微雪驱动有这些针脚定义:
#define EPD_SCK_PIN 13 #define EPD_MOSI_PIN 14 #define EPD_CS_PIN 15 #define EPD_RST_PIN 26 #define EPD_DC_PIN 27 #define EPD_BUSY_PIN 25
而板子上只有BUSY、RES、DC、SDA、SCL、CS这几个,把我弄糊涂了,换了很多例程不解,在b站补课加问chatgpt才知道有不同的叫法
SCL == SCK, SDA == MOSI, SDO == MISO, DC == RS等等
但是我解决这问题后墨水屏还是没动,就在我以为板子或屏幕有损坏时,我突然想到去微雪官方买一个墨水屏试试,几天后到货,我插上去,嗨嗨嗨,动了。我确认esp32没有问题,同时注意到排线有点不同,观察后发现便宜的墨水屏使用线序与微雪的是相反的!我去,敢情折腾半天是这个原因啊,后悔当时应该买个开发套件的,直接插杜邦线就不会有这问题了,没办法,又去买了转接板,接上后,屏幕又坏了,微雪驱动显示一直在闪烁,最后屏幕就暗红色的一片
无奈,又去买了几个便宜货,无法驱动,遂放弃。又刷到esp32带屏幕的开发套件,心想这样不会用不起了吧,就又买了个来玩玩...
到货了,客服给了个其他厂的说明和例程,果不其然例程编译报错,屏幕驱动是ST6201,没找到现成的驱动,但是TFT_eSPI库中ST7789正好跑起来了,这时发现屏幕素质极差,不知是驱动不对的原因,屏幕显示久一点就会留下残影,色彩也不对,黑的成灰的,红的成朱红,将就能看的地步,就用chatgpt简单写了个简陋联网获取时间的时钟了,再争取学习一下lvgl,争取做漂亮点。