文档介绍:第十一节:鸿哥单色液晶屏三大类定律( KS0107 驱动 12864 屏) (1) 开场白: 我曾经做过一年的液晶屏工程师, “出家”做自由职业者之后我又在很多项目上应用液晶屏。深圳很多液晶模块公司都是用我帮他们做的测试程序。不管什么品种的单色屏我都能玩得转。谦虚一点说就是, 在单色液晶驱动程序这方面, 吴坚鸿在全国绝对排名在前三名之内(如果不谦虚地说我就号称第一了,呵呵)。接下来我要介绍一下我的新发现, 单色屏驱动程序的三大类定律。市面上有各种各样的单色屏, 什么点阵, 段码等等, 但是都逃不出我总结的三大类定律。读者只要学会了鸿哥的三大类定律,以后任何单色屏对于你们来说都是浮云。想要驱动液晶屏, 只要知道怎么样在任何一个地方(X 轴与 Y 轴坐标) 显示一个基本单位就够了。在单色液晶屏领域, 这个显示的基本单位只有三种类型, 也就是我总结的三大类定律。第一大类定律:纵向显示八个点的类型。这类液晶屏在纵向上以八个点(一个字节)为基本单位,因此 Y 坐标数值的最大范围是纵向上的点阵数除以八, 然后再减去一( 因为从零开始)。而X 坐标数值的最大范围就直接是横向上的点阵数减去一(因为从零开始)。第二大类定律:横向显示八个点的类型。这类液晶屏在横向上以八个点(一个字节)为基本单位,因此 X 坐标数值的最大范围是横向上的点阵数除以八, 然后再减去一( 因为从零开始)。而Y 坐标数值的最大范围就直接是纵向上的点阵数减去一(因为从零开始)。第三大类定律:任意位置显示一个点的类型。这类液晶屏在任意位置上以一个点为基本单位,因此 X 坐标数值的最大范围就直接是横向上的点阵数减去一( 因为从零开始)。而Y 坐标数值的最大范围就直接是纵向上的点阵数减去一(因为从零开始)。下面,我以驱动芯片为 KS0107 的 12864 液晶屏为例子,来介绍一下第一大类定律:纵向显示八个点的类型。 12864 液晶屏实际上是由左右两块 6464 液晶屏合并在一起的, 然后通过两根 IO 口来片选不同的 6464 液晶屏。因此, 我们只要弄懂了一块 6464 液晶屏的显示方法就够了。 6464 屏在横向上是 64 个点,纵向上是 64 个点,也就是一个正方形的屏。因为它属于第一大类的屏,所以 X 轴坐标数值的最大范围是 64-1=63 ,而纵向坐标数值的最大范围是( 64/8 ) -1=7. 正常的操作思路是这样的, 先发送 X 轴与 Y 轴的位置数据, 确定位置后, 就发送一个字节( 八个点) 的显示数据。这类屏还有一个特征, 连续发送显示数据时, 在横向(X 轴上) 的位置数据会自动加一, 因此如果在不换行的情况下, 只要设定一次位置, 就可以从左到右连续发送显示的数据。当换行显示数据时,必须重新设定一下坐标位置。字节正序与倒序的概念解释:当我们一次在纵向上显示八个点的基本单位时,实际上等于我们发送了一个字节的显示数据,比如 0x01 ,如果是正序的屏,那么从上到下的八个点中, 只有第 8 个点是显示的, 其它的是空白, 而如果是倒序的屏, 则只有第 1 个点是显示的,其它是空白的。 12864 这个屏是属于倒序的屏。取模软件是必须的,读者可以在网上自己下载,资料很多。(2 )功能需求: 在 12864 屏上显示 8X16 的字符, 16X16 的汉字, 24X24 的汉字。(3