<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于DSP和ST7920的液晶顯示模塊的實(shí)現

基于DSP和ST7920的液晶顯示模塊的實(shí)現

作者: 時(shí)間:2010-02-03 來(lái)源:網(wǎng)絡(luò ) 收藏

 是一種適合于數字信號處理的實(shí)時(shí)高速的高性能微處理器,已廣泛應用于自動(dòng)控制、圖像處理、通信技術(shù)、網(wǎng)絡(luò )設備、儀器、儀表和家電領(lǐng)域。屏以其顯示直觀(guān)、便于操作的特點(diǎn)被用作各種便攜式系統的顯示終端。傳統液晶大多用單片機控制,而單片機的數字信號處理能力遠低于芯片,使得其應用范圍受到限制。此,本文選用TOPWAY公司生產(chǎn)的、以為控制芯片的128×64點(diǎn)陣3.3V簡(jiǎn)體中文字庫的LM3303A-B型圖形液晶,介紹了一種屏的設計。

本文引用地址:http://dyxdggzs.com/article/152105.htm

  1 控制器介紹

  LM3303A-B型屏是香港TOPWAY公司采用臺灣銘創(chuàng )電子公司生產(chǎn)的ST7920控制器的液晶顯示屏。它由128×64點(diǎn)陣構成、接口方便(3.3V)、設計簡(jiǎn)單、功耗低、價(jià)格便宜,可用于各種設備的顯示終端[1]。

  ST7920支持8位、4位并行或2線(xiàn)、3線(xiàn)串行兩種接口方式,帶有ZMB的中文字型CGROM,該字庫ROM中含有8192個(gè)16×16點(diǎn)陣的中文字型,可利用代碼簡(jiǎn)單方便地顯示漢字。16KB的半寬字型HCGROM,提供了126個(gè)168點(diǎn)陣的ASCII字符庫,便于英文和其他常用字符顯示。64×16位元的字型產(chǎn)生CGRAM,用戶(hù)可以根據需要構造生僻字。64×26位元的繪圖GDRAM,方便構造圖形??刂破骶哂欣L圖及文字畫(huà)面混合顯示功能。另外,控制器提供基本指令與擴充指令命令,功能強大。

  2 DSP與液晶顯示屏硬件接口設計

  由于LM3303A-B具有串/并行多種接口方式,針對DSP外圍I/O豐富且處理速度快的特點(diǎn)選用8位并行的接口方式,這種方式下雖然接線(xiàn)多,但是速度比串行要快得多,所以將PSB引腳接高電平。

  DSP 與LM3303A-B之間的接口電路如圖1所示。由于LM3033A-B是3.3V簡(jiǎn)體中文圖形液晶,所以DSP與液晶之間不用電平轉換。其中DSP 的IOPE0~IOPE7用作數據接口,與LCD的數據線(xiàn)DB0~DB7相連,完成與LM3303A-B 間的數據傳送;IOPF0與RS相連,決定是數據(RS=0)還是命令(RS=1);IOPF1與R/W相連,決定是寫(xiě)入(RW=0)還是讀出(RW=1); IOPF2與E相連,工作狀態(tài)使能。IOPD0與/RST相連用于復位。VDD接+3.3V輸入電源。A與K引腳間的電壓為顯示屏內部發(fā)光二極管提供電壓,使其產(chǎn)生背光;參考文獻[1]中要求調節顯示屏的對比度是在V0與VOUT之間串接一個(gè)電位器,但在實(shí)際應用中無(wú)法,而是采用V0直接接+5V的上拉電阻且空出VOUT,可以有效地調節顯示對比度。

DSP 與LM3303A-B之間的接口電路

  3 DSP控制液晶顯示屏的軟件設計

  從程序的可移植性和通用性方面考慮,選擇C語(yǔ)言進(jìn)行軟件的設計。這里通過(guò)液晶顯示屏的初始化過(guò)程以及如何顯示文本和一幅圖畫(huà)來(lái)具體說(shuō)明DSP控制液晶顯示屏的軟件設計。

  3.1 軟件設計程序流程

  DSP要控制液晶顯示屏系統運行,首先應將系統接通電源,系統自動(dòng)復位。復位后進(jìn)行系統初始化、液晶初始化。在初始化完畢后,系統可以通過(guò)控制器發(fā)出的指令調用相關(guān)函數,完成相應的顯示功能。其主程序流程圖如圖2所示。

主程序流程圖

  3.2 系統及液晶初始化

  系統初始化禁止所有可屏蔽中斷,并關(guān)總中斷,在進(jìn)行關(guān)鍵設置時(shí)不允許發(fā)生中斷,以免產(chǎn)生干擾。允許符號位擴展,將B0配置為數據存儲空間。設置IOPE0~IOPE7為L(cháng)CD數據接口。

  液晶初始化需首先進(jìn)行復位清屏,如果液晶顯示屏正常工作,便可寫(xiě)命令到LCD。其中用到用戶(hù)定義的函數LCD_WriteCommand(uchar cmdcode)和函數LCD_Busy(),其作用分別為寫(xiě)命令到LCD和判斷ST7920內部是否處于忙碌狀態(tài)。這里值得注意的是,當ST7920在接受指令前,DSP必須先確認ST7920內部處于非忙碌狀態(tài),即讀取BF標志位時(shí)BF需為0,方可接受新的指令。

  3.3 ST7920的讀寫(xiě)時(shí)序

  在軟件設計過(guò)程中,只有產(chǎn)生符合ST7920的讀寫(xiě)時(shí)序后才能對液晶正確操作,否則液晶顯示屏不會(huì )有任何輸出。

  本系統中的DSP主頻為30MHz,相對而言,液晶屬于慢速的外設,所以在讀寫(xiě)子程序中應該插入一些延時(shí)等待。根據圖3和圖4中的時(shí)序圖可以編寫(xiě)以下讀寫(xiě)子程序(其中為了提高程序的可移植性與可讀性,在程序開(kāi)頭都用了宏定義,限于篇幅在此不再給出):

時(shí)序圖


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>