由于需要将位图图像输出到显示芯片 TW8811 显示,因此需要生成一张既包含位图数据,又包含位 TW8811 配置的数据表。所以按要求写了一下程序。python 代码具体可见 github
因此记录一下整个过程:
要制作一张满足条件的数据表,需要先准备一幅位图图像,可以由工具 uC-GUI-BitmapConvert 生成,对于如何生成位图图像数据,具体可见另一篇文章 嵌入式中如何统一多幅位图的调色板并生成C格式数据详解, 这里不过多讲述。将该表命名为:linux_nce_8bits.c
, 可以随便放置,假设放到了 /home/chenqiang/nce/
下。
说明一下代码:
1. 函数 color_set()
用于生成位图对应的颜色表,该函数会去读取由位图转换工具生成出来的调色板,即颜色表部分。
2. 函数 data_set()
用于生成位图对应的数据表,该函数会去读取由位图转换工具生成出来的数据部分。
3. 列表 color_set_head_list
用于 TW8811 前期配置,包括写在哪个页,是否开启位图写等等配置,具体可参见 TW8811 数据手册。
4. 列表 color_set_mid_list
用于 TW8811 中期配置,包括准备开始写位图数据部分,具体可参见 TW8811 数据手册。
5. 列表 color_set_tail_list
用于 TW8811 后期配置,包括关闭写位图数据等,具体可参见 TW8811 数据手册。
所以,整个数据表就由:image_list = color_set_head_list + color_set_list + color_set_mid_list + data_set_list + color_set_tail_list
组成。