对于具有带黑白像素(非灰度)的小型单色 LCD 的 8 位嵌入式系统,我需要一种有效的方式来存储和显示字体。我可能会选择两种固定宽度的字体,4x5 像素和 5x7 像素。资源非常有限:30k ROM,2k RAM。字体将以 1:1 比例写入缓冲区,作为具有给定起始偏移量(以像素为单位)的单行字符串(char* str, byte x, byte y)
我想我会使用 1k 的 RAM 作为缓冲区。除非有更有效的字体写入结构,否则我会对其进行安排,以便可以按顺序将其写入 LCD,如下所示:
byte buffer[1024];
其中每个字节代表 8 个像素的水平线(左侧为 MSB),显示的每一行从左到右完成,以这种方式,从上到下。(所以每行由 (128px / 8 =) 16 个字节表示。)
所以我的问题:
- 字体应该如何存储?
- 缓冲区应该采取什么形式?
- 字体应该如何写入缓冲区?
我认为有一些标准算法可以解决这个问题,但我在搜索中找不到任何东西。任何建议都会很有帮助(我不希望有人为我编写代码!!)
谢谢