基于W78E516B的液晶顯示控制器顯示系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
液晶顯示屏(LCD)具有損耗低、價(jià)格低、壽命長、接口方便等優(yōu)點(diǎn),因此廣泛應(yīng)用于工業(yè)產(chǎn)品中,液晶顯示驅(qū)動(dòng)方案多種多樣。目前中小型單色液晶屏控制方案多是基于CPLD液晶顯示控制和液晶顯示控制器SED1335,液晶顯示控制模塊功能簡(jiǎn)單,快速顯示時(shí)會(huì)出現(xiàn)“雪花”現(xiàn)象。針對(duì)上述兩種弊端,這里采用具有帶ISP功能的Flash EPROM低功耗8位微控制器W78E516B單片機(jī)和液晶顯示控制器SID13700構(gòu)成一個(gè)320×240(DMF-50840NF液晶屏)的單色液晶顯示系統(tǒng),整個(gè)設(shè)計(jì)過程中,通過不斷改進(jìn)硬件和調(diào)試軟件,得到了預(yù)期效果。該系統(tǒng)模塊顯示速度快、功能復(fù)雜、性能穩(wěn)定,且已在產(chǎn)品中得以運(yùn)用。
2 系統(tǒng)整體方案設(shè)計(jì)
該系統(tǒng)由單片機(jī)W78E516B、液晶顯示控制器SID13700和液晶屏DMF-50840NF、逆變器負(fù)壓發(fā)生電路外部EPROM等組成。其系統(tǒng)結(jié)構(gòu)如圖1所示。
2.1 W78E516B單片機(jī)
W78E516B是具有ISP功能的Flash EPROM的低功耗8位微控制器;ISP功能的Flash EPROM可用于固件升級(jí)。其指令集同標(biāo)準(zhǔn)8052指令集完全兼容。W78E516B包含64 K字節(jié)的主ROM、4 K字節(jié)的輔助ROM。位于4 K字節(jié)輔助ROM中的裝載(Loader)程序,可以讓用戶更新位于64 K字節(jié)主ROM中的程序內(nèi)容。512字節(jié)片內(nèi)RAM;4個(gè)8位雙向、可位尋址的I/O端口;一個(gè)附加的4位I/O端口P4;3個(gè)16位定時(shí)/計(jì)數(shù)器及一個(gè)串行口。這些外圍設(shè)備都由有8個(gè)中斷源和2級(jí)中斷能力的中斷系統(tǒng)支持。為方便用戶進(jìn)行編程和驗(yàn)證,W78E516B內(nèi)含的ROM允許電編程和電讀寫。一旦代碼確定后,用戶就可以對(duì)代碼進(jìn)行保護(hù)。
W78E516B有空閑和掉電2種節(jié)電模式,2種模式可由軟件來控制選擇??臻e模式下,處理器時(shí)鐘被關(guān)閉,但外設(shè)仍繼續(xù)工作。掉電模式下,晶體振蕩器停止工作,以將功耗降至最低。外部時(shí)鐘可以在任何時(shí)間及狀態(tài)下被關(guān)閉而不影響處理器運(yùn)行。
2.2 液晶顯示控制器SID13700
液晶顯示控制器SID13700專門用于控制傳統(tǒng)單色(或灰階)STN液晶模塊。該控制器整合了更多的控制功能,其主要特點(diǎn)為:有較強(qiáng)功能的I/O緩沖器;指令功能豐富;嵌入32 K字節(jié)SRAM的圖形LCD控制器;最高可支持640x240(1 bit/pixel),320x240(2 bits/pixel),240x160(4 bit/pixel);支持4 bit/pixel灰度驅(qū)動(dòng)(240×160);可顯示文本和圖形并進(jìn)行多層的各種疊加操作;可編程指針和行場(chǎng)的平滑滾動(dòng)(灰階模式不可);邏輯5 V和3.3 V兼容;支持GENERIC BUS家族和MC68 K,M6800家族微控制的直接地址和間接地址總線方式。SID13700硬件結(jié)構(gòu)可分成MPU接口、內(nèi)部控制和驅(qū)動(dòng)LCM的驅(qū)動(dòng)。
SID13700控制器是應(yīng)用于W78E516B系統(tǒng)與液晶模塊DMF-50840NF之間的控制電路,它接收來自MCU系統(tǒng)的指令與數(shù)據(jù),并產(chǎn)生相應(yīng)的時(shí)序及數(shù)據(jù)控制模塊的顯示。
MCU把指令代碼寫入指令輸入緩沖器內(nèi)(即A0=1),則指令的參數(shù)隨后通過數(shù)據(jù)輸入緩沖器(AO=0)寫入。帶有參數(shù)指令代碼的作用之一就是選通相應(yīng)參數(shù)的寄存器,任一條指令的執(zhí)行(除SLEEPIN,CSRDIR,CSRR,MWRITE和MERAD外)都產(chǎn)生在附屬參數(shù)的輸入完成之后。當(dāng)寫入一條新的指令時(shí),SID13700將在舊的指令參數(shù)組運(yùn)行完成后等待新參數(shù)的到來。MCU可用寫入的新參數(shù)與余下的舊參數(shù)有效地組合成新的參數(shù)組,需注意:不僅參數(shù)必須全部寫入,而且所寫的參數(shù)順序不能改變,也不能省略。特別是SID13700較以前的SED1335系列器件相比,由于SID13700的默認(rèn)狀態(tài)是POW-ER SAVE模式,所以初始化前必須先將其喚醒,否則會(huì)初始化失敗。喚醒方式為:寫SYSTEM SET命令后延時(shí)再進(jìn)行初始化,程序方能正常運(yùn)行,或程序開始時(shí)進(jìn)行兩次初始化。
3 硬件電路設(shè)計(jì)
該系統(tǒng)硬件電路主要由W78E516B、SID13700和DMF-50840NF等器件構(gòu)成。系統(tǒng)硬件結(jié)構(gòu)圖如圖2所示。系統(tǒng)由單片機(jī)W78E516B通過液晶顯示控制器SID13700控制液晶屏DMF-50840NF、的顯示工作。
4 軟件系統(tǒng)設(shè)計(jì)
液晶顯示模塊上電后必須根據(jù)液晶顯示器的結(jié)構(gòu)對(duì)液晶模塊進(jìn)行軟件初始化設(shè)置。特別是SYSTEM SET和SCROLL必須設(shè)置正確。這里介紹1區(qū)、2區(qū)通過或邏輯組合顯示,初始化流程見圖3。
由于SID13700的默認(rèn)狀態(tài)是POWER SAVE模式,初始化前必須先將其喚醒,否則初始化會(huì)失敗。初始化之前的喚醒程序如下:
說明:寫SYSTEM SET命令后延時(shí)再進(jìn)行初始化,程序才能正常運(yùn)行或程序開始時(shí)進(jìn)行兩次初始化。至此,液晶模塊的初始化基本完成。其后的顯示字符、漢字顯示等程序相對(duì)比較簡(jiǎn)單,讀者可參閱SID13700的應(yīng)用手冊(cè)。
5 結(jié)束語
對(duì)W78E516B單片機(jī)和液晶控制器SID13700構(gòu)成的顯示系統(tǒng)的硬件電路和軟件系統(tǒng)做了詳細(xì)闡述,在整個(gè)設(shè)計(jì)過程中,通過不斷改進(jìn)硬件和調(diào)試軟件,得到了預(yù)期的效果。該顯示系統(tǒng)模塊顯示速度快、功能強(qiáng)大、性能穩(wěn)定,且已在產(chǎn)品中得以運(yùn)用。通過抽檢產(chǎn)品表明該顯示控制系統(tǒng)的合格率在99%以上。同時(shí)該設(shè)計(jì)為其他系列單片機(jī)顯示模塊的使用也提供很好的借鑒方法。