LCD有很多种,这里要介绍的是APMIRE128×64, 12864LCD字的显示原理: LCD点阵字的取模有逐列式、逐行式、列行式、行列式等,为了符合本例的要求,我们选用列行式. 所谓列行式就是:先选择点阵的{dy}页,逐列查表显示一个字的上半部分,再选择第二页,逐列查表显示一个字的下半部分.例如: 它的代码为: DB 00H,00H,F8H,48H,48H,48H,48H,FFH,48H,48H,48H,48H,F8H,00H,00H,00H 网上有很多取模软件,我们可以很轻松的得到一个字的代码,这里我就不介绍取模软件了. 12864LCD的指令系统: 该类液晶显示模块的指令系统比较简单,总共只有7种。其指令表如表所示:
各功能指令分别介绍如下。
当DB0=1时,LCD显示RAM中的内容;DB0=0时,关闭显示。 2、显示起始行(ROW)设置指令
该指令设置了对应液晶屏最上一行的显示RAM的行号,有规律地改变显示起始行,可以使LCD实现显示滚屏的效果。 3、页(PAGE)设置指令
显示RAM共64行,分8页,每页8行。 4、列地址(Y Address)设置指令
设置了页地址和列地址,就{wy}确定了显示RAM中的一个单元,这样MPU就可以 用读、写指令读出该单元中的内容或向该单元写进一个字节数据。 5、读状态指令
该指令用来查询液晶显示模块内部控制器的状态,各参量含义如下: BUSY:1-内部在工作0-正常状态 ON/OFF:1-显示关闭0-显示打开 RESET:1-复位状态0-正常状态 在BUSY和RESET状态时,除读状态指令外,其它指令均不对液晶显示模块产生作用。 在对液晶显示模块操作之前要查询BUSY状态,以确定是否可以对液晶显示模块进行操作。 6、写数据指令
读、写数据指令每执行完一次读、写操作,列地址就自动增一。必须注意的是,进行读操作之前,必须有一次空读操作,紧接着再读才会读出所要读的单元中的数据。 本例的电路图及仿真的效果图如下: LCD可用AMIPRE128×64找到,滑动变阻器可用POP-HG找到 程序部分:
|