GDM12864A是一个具有128点x 64点的点阵LCD。根据所选的LCD的特点,Y轴上只有64个点,所以能显示的数据范围为0到63而采样得到的数据为8位的二进制数据为0到255。为了能在这个LCD上显示只取8位数据的高6位。那么如何把这高6位的二进制数据转换成在LCD上的Y轴座标和数据值呢?我想了这样一个计算的方法:
LCD的纵向分为8个地址从上到下依次为0~7,每个地址段有8个数据点。在某个数据段中如果想依次让这些位从上到下点亮就需要依次向这个地址段送数据001,002,004,008,010,020,040,080,送入000后这个地址段的8个数据点将不被点亮。实现的具体过程如图4所示。
dat = dat>>2
y = 7
dat >= 8 ?
dat = dat – 8; y--;
y == 1 ?
dat > 7 ?
dat = 7 ;