完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
SSD1770是晶门科技公司推出的一款用于点阵显示系统的单片CMOS彩色STN LCD驱动控制器。目前,SSD1770已经应用于传统的工控机领域8080系列微控制器的连接,而在32位嵌入式系统领域内的应用还很少。本文主要研究LCD控制器SSD1770与ARM7TDMI内核的嵌入式微处理器SEP3203之间的系统连接及底层、上层软件开发,并最终在产品中得到应用。
1 系统介绍 1.1 系统构成 系统主要由SEP3203处理器和伪彩点阵型图形LCD控制器SSD1770组成。系统接口示意图如图1所示。 1.2 SEP3203概述 SEP3203是由东南大学国家专用集成电路(ASIC)与系统工程技术研究中心设计的一款基于ARM7TDMI内核的16/32位RISC微控制器,面向低成本手持设备和其他通用嵌入式设备。它集成了支持黑白、灰度、彩色的LCD控制器。SEP3203中的彩色LCD控制器主要用于TFT真彩显示,不能直接控制CSTN(伪彩)显示,须通过外接伪彩控制器来实现伪彩显示。 SEP3203处理器内嵌20 KB零等待的静态存储器SRAM,提供SDRAM控制器;可扩展支持各种SRAM接口的设备;提供可自由控制的GPIO口,同时具有多种控制器接口。 1.3 SSD1770概述 SSD1770是一个单片高度集成的伪彩点阵型LCD控制驱动器件。它内含312×8l×4位的图形数据显存GDDRAM和477kHz的振荡电路,集成偏压电路和DC-DC电路;具有8位PPI接口(可直接连接80/68xx MCU)、3/4线SPI串行接口和36条控制/传输指令。外加几个电容器件,SSD1770就可控制驱动104RGB×8l点彩色STN型LCD,4096种颜色。 1.4 电压匹配 SSD1770 CMOS电源提供电压为1.8~3.6V,而SEP3203输入/输出电压最小为2.7V,最大为3.6V,前者的输出可以直接作为后者的输入,无须进行电平转换。 2 硬件设计 SEP3203的接口协议如图2所示。 SSD1770同时有4种信号接口协议:①8位8080系列MPU接口协议;②8位6800系列MPU接口协议;③三线串行外设接口协议;④四线串行外设接口协议。不同的接口协议可通过FS0、PSI引脚的设置来实现,如表1所列。 由于本设计中传输距离不需要过长,且考虑到速度问题,所以选择并行接口协议。SSDl770支持2种并口模式:一种是6800系列MPU接口协议,如图3所示;另一种是8080系列MPU接口协议,如图4所示。 将SEP3203接口协议与这两种MPU接口协议相比,可知SEP3203的接口协议属于8080系列MPU接口协议。因此,采用8080接口实现SSD1770与SEP3203的连接。 SEP3203所用的接口引脚是外部存储接口模块(Ex—ternal Metmory Interface,简称EMI)中的8位数据总线、输出使能、写使能、地址总线、NAND Flash准备就绪/忙和控制时钟中低电平有效的Reset。EMI的功能即提供对外部存储器的读/写接口。 SEP3203的主要引脚定义如下。 ◆nOE:读使能信号,表示当前周期执行读操作。 ◆nWE:写使能信号,表示当前周期执行写操作。 ◆LCD_nCSF:片选信号。 ◆DATA:外部数据总线。 ◆ADDR:外部地址总线。 SSDl770的主要引脚定义如下。 ◆D0“D7:并行接口方式,双向数据总线。 ◆RES:复位信号输入,低电平有效。 ◆D/C:数据或命令选择引脚。若为1,则数据总线上的信息当作显示数据;若为0,则数据总线上的信息发送到命令寄存器。 ◆CS:片选信号输入,低电平有效。 ◆RD:与8080 CPU接口时,为写信号输入,低电平有效。 ◆WR:与8080 CPU接,用于写信号(低电平有效)。 与8080系列CPU并行接口,由8位双向数据脚DO~D7、RD、WR、D/C、CS组成。根据8080 CPU接口协议,SSD1770的DO~D7、RD、WR、RES、D/C、CS引脚分别与SEP3203的PORTB、nOE、nWE、LCD_RESET、ADDR2、LCD_nCSF引脚相连,如图5所示。 CS信号直接由SEP3203的LCD_nCSF控制。如果CS是低电平且RD为低,则RD输入作为读数据锁存信号;无论是从GDRRAM读显示数据还是从状态寄存器读状态都需要D/C脚的控制。如果CS是低电平且WR为低,则WR输入作为写数据锁存信号;无论是写显示数据到GDDRAM还是将命令写入命令寄存器都需要D/C脚的控制。第一有效数据读之前,需要一次虚拟读。为了不产生错误操作,在SSD1770与SEP3203控制信号之间使用CMOS芯片。由图5可知,控制信号D/C、CS、WR、RD都是单向的,所以使用l片单向的CMOS八位锁存74LS373控制;而D0~D7是双向的,因此采用1片双向的74LS245缓冲,具体电路连接如图5所示。 3 软件设计 3.1 软件系统 LCD的软件驱动程序是在嵌入式操作系统Asix OS上运行的。Asix OS系统是由国家ASIC系统工程技术研究中心开发的一种嵌入式操作系统,具有设计简洁、模块化、易移植、功耗低等特点。它是基于uITRON3.O的T-Kernel,由设备驱动、内核、文件系统、图形用户接口以及系统级服务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外接伪彩显示的需求。既实现了在具有友好界面的工控系统中的应用,又可以在更多想要具有友好界面的系统中得到推广。 |
|
|
|
只有小组成员才能发言,加入小组>>
733 浏览 0 评论
1132 浏览 1 评论
2512 浏览 5 评论
2846 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2693 浏览 6 评论
684浏览 7评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
997浏览 3评论
198浏览 2评论
如果mmcblk1boot0启动失败可不可以从mmcblk1boot1启动呢
189浏览 2评论
用核心板GPIO直接控制网卡1的复位信号是否会导致液晶屏初始化失败?
231浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-4 02:05 , Processed in 1.037492 second(s), Total 80, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号