前言
咸鱼给我推了一批全新墨水屏。看了一下,全新带膜,膜上标签是黄色,应该是黑白黄三色的。问了老板,说是没有技术手册和例程。一片三元,咬咬牙买了10片回来研究。
外观
26Pin焊接式排线,需要自己垫一点东西+剪窄一点。外观看起来类似之前买的HSSE屏幕,不过这款是黑白黄。
 
 
屏幕排线型号HINK-E0213A31-A0-A0,查了一下墨水屏丝印对应驱动表,只查到了HINK-E0213A30-A0-A0这款是250x122的黑白墨水屏,主控芯片SSD1675B。
合力泰(HINK)的屏幕排线丝印,如果是相邻的两个数字(如A07与A08),往往是采用不同主控芯片的同一种类屏幕。
HINK-E0213A07是SSD1675B的黑白红三色,而HINK-E0213A08是UC8151c的黑白红三色,两者都是212x104分辨率的。
反正只有两种可能:要么SSD,要么UC。IL3895:什么在想我的事情
UC驱动测试
之前做 2.13寸黑白红墨水屏 时用的是UC8251的驱动。直接加载没有反应。失败。
对于UC的屏幕,只要发送0x04让其开机就行了,不用设置其他参数也能进行刷新。
SSD驱动测试
找了HINK-E0213A22这款屏幕的驱动,芯片是SSD1675B,分辨率250x122,颜色黑白红。轻松秒杀~
    
    [{"url":"https://webp.esing.dev/img/IMG_20240720_113011_2024-7-20_1445_arpl9kko95.jpg","alt":"大连佳显的驱动可点"},{"url":"https://webp.esing.dev/img/IMG_20240720_132428_2024-7-20_1446_dusekpe3op.jpg","alt":"赛博符箓(确信)"},{"url":"https://webp.esing.dev/img/IMG_20240720_174326_2024-7-20_1744_v3nus32kwi.jpg","alt":"三色日历效果也不错,可惜边框设置不了"}]
    
    
     
第一张图使用大连佳显的驱动点亮,但是刷新时会附带上一张图片的残影,且多次刷新后才能消失。推测和LUT选择以及驱动电压有关。换用GxEPD2的库点亮并刷新,一切正常。选择Z98的驱动即可:GxEPD2_213_Z98c
此外,SSD1675B设置边框颜色使用0x3C指令,之后输入颜色。0x05是白色,0x06是彩色,0x04是黑色。
| 指令 | 颜色 | 
| 0x00 | B | 
| 0x01 | W | 
| 0x02 | C | 
| 0x03 | 
| 0x04 | B | 
| 0x05 | W | 
| 0x06 | C | 
| 0x07 | 
亮屏例程示例
以下来自GxEPD2库
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 
 | void EPD_HW_Init(void){
 EPD_W21_RST_0;
 delay(10);
 EPD_W21_RST_1;
 delay(10);
 
 Epaper_READBUSY();
 Epaper_Write_Command(0x12);
 Epaper_READBUSY();
 
 Epaper_Write_Command(0x01);
 Epaper_Write_Data(0xF9);
 Epaper_Write_Data(0x00);
 Epaper_Write_Data(0x00);
 
 Epaper_Write_Command(0x11);
 Epaper_Write_Data(0x03);
 
 Epaper_Write_Command(0x3C);
 Epaper_Write_Data(0x05);
 
 Epaper_Write_Command(0x18);
 Epaper_Write_Data(0x80);
 
 
 
 
 
 
 
 Epaper_Write_Command(0x21);
 Epaper_Write_Data(0x00);
 Epaper_Write_Data(0x80);
 
 Epaper_READBUSY();
 }
 
 void EPD_Yellow(void)
 {
 unsigned int i;
 Epaper_Write_Command(0x24);
 for (i = 0; i < ALLSCREEN_GRAGHBYTES; i++)
 {
 Epaper_Write_Data(0xff);
 }
 Epaper_Write_Command(0x26);
 for (i = 0; i < ALLSCREEN_GRAGHBYTES; i++)
 {
 Epaper_Write_Data(0xff);
 }
 EPD_Update();
 }
 
 void EPD_Update(void)
 {
 Epaper_Write_Command(0x22);
 Epaper_Write_Data(0xF7);
 
 Epaper_Write_Command(0x20);
 Epaper_READBUSY();
 }
 
 void EPD_DeepSleep(void)
 {
 Epaper_Write_Command(0x10);
 Epaper_Write_Data(0x01);
 delay(100);
 }
 void Epaper_READBUSY(void)
 {
 while (1)
 {
 if (isEPD_W21_BUSY == 0)
 break;
 }
 }
 
 | 
完结撒花!
封面图来自:#ポケモン ポケモッンログ - わ的插画
还在摸索如何读取内置的温度传感器值。这样子就可以直接当温度时钟了
还在研究如何多色局刷快刷,我记得有例子的。
2024.07.20 非常奇怪,边框只有初始化的时候设置才行,而且是永久生效。还在研究。