framebuf库定义了几个常量,用来描述缓冲区的类型:
- MONO_VLSB:单色模式,竖直8bits为单位从左往右扫描,接着下8行继续扫描,8bit低位在上
- MONO_HLSB:单色模式,水平8bits为单位从左往右刷新,接着从下一行如此,8bit高位在左
- MONO_HMSB:单色模式,水平8bits为单位从左往右刷新,接着从下一行如此,8bit低位在左
- RGB565:Red Green Blue (16-bit, 5+6+5) color format
- GS2_HMSB:Grayscale (2-bit) color format
- GS2_HMSB:Grayscale (4-bit) color format
- GS8:Grayscale (8-bit) color format
在开发中,我常用的是MONO_VLSB和RGB565,仅对这2常量描述
在屏幕的驱动中,micropython使用帧缓存的概念:一个变量存储着帧,如果是0.96oled,这个变量就描述128*64像素图片;如果是1.44tft LCD,这个变量就描述128*128像素的图片。你可以修改这个变量,在这个变量改变像素点的颜色。当需要在屏幕显示时,则调用show方法将这个变量传送给屏幕的驱动芯片,然后就可以在屏幕上看到内容了。
对于MONO_VLSB类型的缓冲区,常用在oled上,在自定义字符、取模的时候,需要注意按照相应的扫描方式进行取模,否则不能正确显示字符。
对于RGB565类型的缓冲区,常用在LCD屏幕,表示1个像素点可以用16bit描述颜色,红色

最低0.47元/天 解锁文章
1426

被折叠的 条评论
为什么被折叠?



