SEP3203與偽彩LCD驅(qū)動(dòng)SSDl770的接口設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
關(guān)鍵詞 SEP3203 SSDl770 偽彩LCD 接口設(shè)計(jì)
SSDl770是晶門(mén)科技公司于2005年推出的一款用于點(diǎn)陣顯示系統(tǒng)的單片CMOS彩色STN LCD驅(qū)動(dòng)控制器。目前,SSDl770已經(jīng)應(yīng)用于傳統(tǒng)的工控機(jī)領(lǐng)域8080系列微控制器的連接,而在32位嵌入式系統(tǒng)領(lǐng)域內(nèi)的應(yīng)用還很少。本文主要研究LCD控制器SSDl770與ARM7TDMI內(nèi)核的嵌入式微處理器SEP3203之間的系統(tǒng)連接及底層、上層軟件開(kāi)發(fā),并最終在產(chǎn)品中得到應(yīng)用。
1 系統(tǒng)介紹
1.1 系統(tǒng)構(gòu)成
系統(tǒng)主要由SEP3203處理器和偽彩點(diǎn)陣型圖形LCD控制器SSDl770組成。系統(tǒng)接口示意圖如圖1所示。
1.2 SEP3203概述
SEP3203是由東南大學(xué)國(guó)家專用集成電路(ASIC)與系統(tǒng)工程技術(shù)研究中心設(shè)計(jì)的一款基于ARM7TDMI內(nèi)核的16/32位RISC微控制器,面向低成本手持設(shè)備和其他通用嵌入式設(shè)備。它集成了支持黑白、灰度、彩色的LCD控制器。SEP3203中的彩色LCD控制器主要用于TFT真彩顯示,不能直接控制CSTN(偽彩)顯示,須通過(guò)外接偽彩控制器來(lái)實(shí)現(xiàn)偽彩顯示。
SEP3203處理器內(nèi)嵌20 KB零等待的靜態(tài)存儲(chǔ)器SRAM,提供SDRAM控制器;可擴(kuò)展支持各種SRAM接口的設(shè)備;提供可自由控制的GPIO口,同時(shí)具有多種控制器接口。
1.3 SSDl770概述
SSDl770是一個(gè)單片高度集成的偽彩點(diǎn)陣型LCD控制驅(qū)動(dòng)器件。它內(nèi)含312×8l×4位的圖形數(shù)據(jù)顯存GDDRAM和477kHz的振蕩電路,集成偏壓電路和DC-DC電路;具有8位PPI接口(可直接連接80/68xx MCU)、3/4線SPI串行接口和36條控制/傳輸指令。外加幾個(gè)電容器件,SSDl770就可控制驅(qū)動(dòng)104RGB×8l點(diǎn)彩色STN型LCD,4096種顏色。
1.4 電壓匹配
SSDl770 CMOS電源提供電壓為1.8~3.6V,而SEP3203輸入/輸出電壓最小為2.7V,最大為3.6V,前者的輸出可以直接作為后者的輸入,無(wú)須進(jìn)行電平轉(zhuǎn)換。
2 硬件設(shè)計(jì)
SEP3203的接口協(xié)議如圖2所示。
SSDl770同時(shí)有4種信號(hào)接口協(xié)議:①8位8080系列MPU接口協(xié)議;②8位6800系列MPU接口協(xié)議;③三線串行外設(shè)接口協(xié)議;④四線串行外設(shè)接口協(xié)議。不同的接口協(xié)議可通過(guò)FS0、PSI引腳的設(shè)置來(lái)實(shí)現(xiàn),如表l所列。
由于本設(shè)計(jì)中傳輸距離不需要過(guò)長(zhǎng),且考慮到速度問(wèn)題,所以選擇并行接口協(xié)議。SSDl770支持2種并口模式:一種是6800系列MPU接口協(xié)議,如圖3所示;另一種是8080系列MPU接口協(xié)議,如圖4所示。
將SEP3203接口協(xié)議與這兩種MPU接口協(xié)議相比,可知SEP3203的接口協(xié)議屬于8080系列MPU接口協(xié)議。因此,采用8080接口實(shí)現(xiàn)SSDl770與SEP3203的連接。
SEP3203所用的接口引腳是外部存儲(chǔ)接口模塊(Ex—ternal Metmory Interface,簡(jiǎn)稱EMI)中的8位數(shù)據(jù)總線、輸出使能、寫(xiě)使能、地址總線、NAND Flash準(zhǔn)備就緒/忙和控制時(shí)鐘中低電平有效的Reset。EMI的功能即提供對(duì)外部存儲(chǔ)器的讀/寫(xiě)接口。
SEP3203的主要引腳定義如下。
◆nOE:讀使能信號(hào),表示當(dāng)前周期執(zhí)行讀操作。
◆nWE:寫(xiě)使能信號(hào),表示當(dāng)前周期執(zhí)行寫(xiě)操作。
◆LCD_nCSF:片選信號(hào)。
◆DATA:外部數(shù)據(jù)總線。
◆ADDR:外部地址總線。
SSDl770的主要引腳定義如下。
◆D0~D7:并行接口方式,雙向數(shù)據(jù)總線。
◆RES:復(fù)位信號(hào)輸入,低電平有效。
◆D/C:數(shù)據(jù)或命令選擇引腳。若為1,則數(shù)據(jù)總線上的信息當(dāng)作顯示數(shù)據(jù);若為0,則數(shù)據(jù)總線上的信息發(fā)送到命令寄存器。
◆CS:片選信號(hào)輸入,低電平有效。
◆RD:與8080 CPU接口時(shí),為寫(xiě)信號(hào)輸入,低電平有效。
◆WR:與8080 CPU接,用于寫(xiě)信號(hào)(低電平有效)。
與8080系列CPU并行接口,由8位雙向數(shù)據(jù)腳DO~D7、RD、WR、D/C、CS組成。根據(jù)8080 CPU接口協(xié)議,SSDl770的DO~D7、RD、WR、RES、D/C、CS引腳分別與SEP3203的PORTB、nOE、nWE、LCD_RESET、ADDR2、LCD_nCSF引腳相連,如圖5所示。
CS信號(hào)直接由SEP3203的LCD_nCSF控制。如果CS是低電平且RD為低,則RD輸入作為讀數(shù)據(jù)鎖存信號(hào);無(wú)論是從GDRRAM讀顯示數(shù)據(jù)還是從狀態(tài)寄存器讀狀態(tài)都需要D/C腳的控制。如果CS是低電平且WR為低,則WR輸入作為寫(xiě)數(shù)據(jù)鎖存信號(hào);無(wú)論是寫(xiě)顯示數(shù)據(jù)到GDDRAM還是將命令寫(xiě)入命令寄存器都需要D/C腳的控制。第一有效數(shù)據(jù)讀之前,需要一次虛擬讀。為了不產(chǎn)生錯(cuò)誤操作,在SSDl770與SEP3203控制信號(hào)之間使用CMOS芯片。由圖5可知,控制信號(hào)D/C、CS、WR、RD都是單向的,所以使用l片單向的CMOS八位鎖存74LS373控制;而D0~D7是雙向的,因此采用1片雙向的74LS245緩沖,具體電路連接如圖5所示。
3 軟件設(shè)計(jì)
3.1 軟件系統(tǒng)
LCD的軟件驅(qū)動(dòng)程序是在嵌入式操作系統(tǒng)Asix OS上運(yùn)行的。Asix OS系統(tǒng)是由國(guó)家ASIC系統(tǒng)工程技術(shù)研究中心開(kāi)發(fā)的一種嵌入式操作系統(tǒng),具有設(shè)計(jì)簡(jiǎn)潔、模塊化、易移植、功耗低等特點(diǎn)。它是基于uITRON3.O的T-Kernel,由設(shè)備驅(qū)動(dòng)、內(nèi)核、文件系統(tǒng)、圖形用戶接口以及系統(tǒng)級(jí)服務(wù)5個(gè)模塊組成。結(jié)合LCD的具體運(yùn)用,設(shè)計(jì)的Asix OS框架如圖6所示。
3.2 LCD初始化
在Asix OS系統(tǒng)之上,LCD的驅(qū)動(dòng)程序通過(guò)SSDl770的初始化流程、命令參數(shù)列表以及其他資料來(lái)編寫(xiě)。SSDl770的訪問(wèn)有2種:一種是根據(jù)寫(xiě)入不同的命令來(lái)實(shí)現(xiàn)對(duì)SSD1770的控制而使用控制寄存器;另一種則是通過(guò)調(diào)用GDDRAM內(nèi)的地址來(lái)讀/寫(xiě)顯示內(nèi)容。
首先計(jì)算SSDl770的各端口地址。SEP3203的片選信號(hào)LCD_nCSF所對(duì)應(yīng)的基址為0x34000000,所以設(shè)定SSDl770的訪問(wèn)地址為0x34000010,RAM的訪問(wèn)地址為0x34000018。軟件設(shè)計(jì)的流程圖如圖7所示。
初始化程序如下:
4 結(jié)論
本設(shè)計(jì)不僅是對(duì)晶門(mén)科技公司新推出的單片CMOS彩色STN-LCD驅(qū)動(dòng)控制器在嵌入式系統(tǒng)中應(yīng)用的擴(kuò)展,而且滿足了東南大學(xué)ASIC中心設(shè)計(jì)的嵌入式處理器SEP3203外接偽彩顯示的需求。既實(shí)現(xiàn)了在具有友好界面的工控系統(tǒng)中的應(yīng)用,又可以在更多想要具有友好界面的系統(tǒng)中得到推廣。