本质原因是厂家把屏幕颜色的值写反了
把原来应该是0xFF高位显示白色,
变成0x00低位才显示白色
(左:反色,右:正常)
方法一:打开屏幕的反色功能
ST7789芯片自带硬件反色功能
在屏幕初始化时,用SPI写入命令0x21
(不需要写入数据)
即可打开反色功能
数据手册中亦有记载反色功能,21h
是开启,20h
是关闭
方法二:像素取反
把原来0xFF的像素按位取反成0x00
直接在操作显示像素的代码库里
加上一行按位取反操作
成功!
感谢豆包的解答
数据手册:ST7789数据手册