是写显示数据到GDDRAM还是将命令写入命令寄存器都需要D/C脚的控制,第一有效数据读之前,需要一次虚拟读。为了不产生错误操作,在SSD1770与SEP3203控制信号之间使用CMOS芯片,由图5可知,控制信号D/C、CS、WR、RD都是单向的,所以使用1片单向的CMOS八位锁存74LS373控制;而D0-D7是双向的,因此采用1片双向的74LS245缓冲,具体电路连接如图5所示。

3 软件设计
3.1 软件系统
LCD的软件驱动程序是在嵌入式操作系统Asix OS上运行的。Asix OS系统是由国家ASIC系统工程技术研究中心开发的一种嵌入式操作系统,具有设计简洁、模块化、易移植、功耗低等特点,它是基于uITRON3.0的TKernel,由设备驱动、内核、文件系统、图形用户接口以及系统级服务5个模块组成,结合LCD的具体运用,设计的Asix OS框架如图6所示。

3.2 LCD初始化
在Asix OS系统之上,LCD的驱动程序通过SSD1770的初始化流程,命令参数列表以及其他资料来编写,SSD1770的访问有2
种,一种是根据写入不同的命令来实现对SSD1770的控制而使用控制寄存器;另一种则是通过调用GDDRAM内的地址来读/写显示内容。
首先计算SSD1770的各端口地址。SEP3203的片选信号LCD_nCSF所对应的基址为0x34000000,所以设定SSD1770的访问地址为0x34000010,RAM的访问地址为0x34000018,软件设计的流程图如图7所示。

初始化程序如下:

4 结论
本设计不仅是对晶门科技公司新推出的单片CMOS彩色STN-LCD驱动控制器在嵌入式系统中应用的扩展,而且满足了东南大学ASIC中心设计的嵌入式处理器SEP3203外接伪彩显示的需求。既实现了在具有友好界面的工控系统中的应用,又可以在更多想要具有友好界面的系统中得到推广。