基于51單片機的液晶顯示屏控制系統(tǒng)設(shè)計[共28頁]
《基于51單片機的液晶顯示屏控制系統(tǒng)設(shè)計[共28頁]》由會員分享,可在線閱讀,更多相關(guān)《基于51單片機的液晶顯示屏控制系統(tǒng)設(shè)計[共28頁](28頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、液晶顯示屏控制系統(tǒng)的設(shè)計 基于51單片機的液晶顯示屏控制系統(tǒng)設(shè)計 1 概述 1.1系統(tǒng)背景 液晶顯示器件在中國已有二十余年的發(fā)展歷史。二十余年來,液晶顯示器件從實驗室走向大規(guī)模生產(chǎn)集團,形成了獨立的產(chǎn)業(yè)部門?,F(xiàn)在,液晶顯示幾乎已經(jīng)應(yīng)用于生產(chǎn),生活的各個領(lǐng)域,人們幾乎時時處處都要與這一神奇而又普通的面孔打交道。 液晶顯示是集單片機技術(shù)、微電子技術(shù)、信息處理于一體的新型顯示方式。由于液晶顯示器具有低壓低功耗,顯示信息量大易于彩色化,無電磁輻射,長壽命,無污染等特點。LCD是目前顯示產(chǎn)業(yè)中發(fā)展速度最快,市場應(yīng)用最廣的顯示器件,成為眾多顯示媒體中的佼佼者,在越來越多的領(lǐng)域中發(fā)揮作用,
2、是目前顯示器件中一個理想的選擇。 LCD在監(jiān)控系統(tǒng)中的應(yīng)用:目前大多數(shù)監(jiān)控系統(tǒng)自帶的顯示系統(tǒng)為LED數(shù)碼管顯示,這樣顯示效果比較單一,只能顯示監(jiān)控系統(tǒng)的測量值。而LCD液晶顯示器不僅可以顯示數(shù)值、漢字等,并且可以顯示文本和圖形。利用LCD和鍵盤實現(xiàn)人機交互,使監(jiān)控系統(tǒng)獨立工作成為可能。通過監(jiān)控系統(tǒng)對現(xiàn)場的單回路控制器進行參數(shù)設(shè)置,對各個單回路控制器的工作進行監(jiān)控。 LCD在時鐘中的應(yīng)用:在日常生活中我們會經(jīng)??吹綍r間的顯示,這些顯示大都是采用液晶顯示器來顯示的,而對其中的漢字無法用顯示來解決。我們利用LCD液晶模塊制成的小屏幕實現(xiàn)了時間的顯示,顯示格式為“時時:分分:秒秒”。另外,可以增
3、加鬧鐘功能,時間到了則產(chǎn)生音樂聲;還可以增加萬年歷顯示“年月日”等多項功能。 LCD在大屏幕顯示中的應(yīng)用:大屏幕顯示的應(yīng)用范圍極廣,隨著社會發(fā)展,公眾生活的加強,人們對能夠面向廣大公眾傳遞信息的顯示裝置越來越感到必需。使用液晶投影顯示大屏幕,不僅有投影儀,指揮用大屏幕,還有液晶投影彩色電視。它可以用一個體積很小的系統(tǒng)裝置,實現(xiàn)100英寸以上的非常漂亮的大屏幕電視顯示。它與傳統(tǒng)的顯示媒體相比,具有分辨率極高,透過性好,顯示內(nèi)容豐富,彩色易于控制等優(yōu)點。 隨著計算機技術(shù)及電子通信技術(shù)的發(fā)展,LCD顯示屏作為一種新的傳媒工具,現(xiàn)已經(jīng)應(yīng)用到商業(yè)、軍事、車站、賓館、體育、新聞、金融、證券、廣告以及交
4、通運輸?shù)仍S多行業(yè),大到幾十平方米的大屏幕,小到家庭影院用的圖文顯示屏,以及政府部門應(yīng)用的電子黑板,證券、銀行等部門用的信息數(shù)字混合屏。LCD顯示屏帶來廣泛的社會效益和經(jīng)濟效益,具有良好的發(fā)展前景。 1.2 系統(tǒng)概述 本實驗系統(tǒng)分為單片機最小系統(tǒng)板和液晶顯示屏兩部分。單片機最小系統(tǒng)負責接收個人計算機所編輯的文本及內(nèi)容,通過RS232串行接口通信完成單片機與PC機之間的數(shù)據(jù)傳送,而個人計算機(即PC機),主要完成顯示內(nèi)容的編輯、字符碼的查找、字符數(shù)據(jù)的發(fā)送等工作?;赪indows操作系統(tǒng)下的文本編輯軟件有很多種,例如:記事本、Micorsoft Word、寫字板等,我們可以采用任何一種編輯
5、軟件將要顯示的內(nèi)容(包括漢字、中英文字母、標點符號等)編輯成一個文本文件,然后通過已經(jīng)編寫好的應(yīng)用程序在特定的字庫中依次搜索到文本文件中的內(nèi)容,并且取出該字符的字模數(shù)據(jù),此項工作稱為字模數(shù)據(jù)的提取;字模數(shù)據(jù)文件的生成也就是將取出的字模按順序存放到一個十六進制文件中;字符數(shù)據(jù)建立好之后將其存放在PC機的硬盤上,等到需要的時候通過串行通信軟件將字符數(shù)據(jù)文件發(fā)送給液晶顯示系統(tǒng)模塊。 LCD顯示屏包括主控制模塊和LCD液晶顯示模塊。主控制模塊負責接收單片機發(fā)送過來的字模數(shù)據(jù)文件,并且協(xié)調(diào)各個LCD液晶顯示模塊工作,主控制器模塊的核心是T6963C控制器,為了存儲字模數(shù)據(jù)還在主控制器模塊中擴展了一片8
6、K存儲器芯片6264;LCD液晶顯示模塊由兩片行驅(qū)動器T6A40和三片列驅(qū)動器T6A39進行驅(qū)動,該模塊一邊接收主控制模塊的數(shù)據(jù),一邊將數(shù)據(jù)送LCD液晶顯示屏顯示,為了方便系統(tǒng)的擴展,各模塊之間采用串行口接收數(shù)據(jù),并且接到系統(tǒng)串行總線上。 本系統(tǒng)主要是實現(xiàn)單片機與液晶顯示模塊之間的接口技術(shù),可以采用間接控制方式完成。將液晶顯示模塊接口與單片機系統(tǒng)板中的某個并行I/O接口連接,計算機通過對該I/O接口的操作間接的實現(xiàn)對模塊的控制。 2 系統(tǒng)設(shè)計方案 此LCD液晶顯示控制系統(tǒng)設(shè)計的關(guān)鍵是要實現(xiàn)LCD的顯示控制。應(yīng)該先從顯示方式的確定入手,
7、接下來設(shè)計相應(yīng)顯示方式的電路,要實現(xiàn)顯示內(nèi)容的實時更新,就必須考慮字模數(shù)據(jù)的存儲及通信電路的設(shè)計。 2.1字模數(shù)據(jù)的存儲 由于89C51單片機內(nèi)部程序存儲器(ROM)只有4K空間,本設(shè)計采用1616點陣顯示一個漢字,每一行需要兩個字節(jié)數(shù)據(jù),一個漢字占162=32字節(jié),漢字一共有6000多個,不可能將龐大的漢字字庫存入在單片機內(nèi)部,即使將預(yù)先要顯示的內(nèi)容存入ROM中,也不便于實時控制,所以只有考慮擴展外部數(shù)據(jù)存儲器。 利用Windows自帶的字庫(即使用軟字庫)的方式擴展外部數(shù)據(jù)存儲器。通過軟件編程直接在字庫中找到需要顯示字符的區(qū)位碼并讀出其字符碼,存于一個文本文件中,待所有顯示內(nèi)容的字符
8、碼查詢完畢后,將存放所有字符碼的文本文件通過串行通信發(fā)送給單片機,單片機將接收到的數(shù)據(jù)存放在外部擴展的數(shù)據(jù)存儲器中,數(shù)據(jù)接收完畢后,單片機就從存儲器中依次讀出每一個字符的字符碼并送到LCD顯示屏顯示。該方案與方案一相比,雖然通信過程占整個顯示周期的比例相對較大,但是硬件電路設(shè)計簡單,成本較低,減少了單片機查詢硬件字庫所需要的時間,提高了單片機動態(tài)掃描的速度,字符顯示的穩(wěn)定度較高。 2.2 通信電路 串行通信是指一個數(shù)據(jù)的所有位按一定的順序和方式,一位一位地通過串行輸入/輸出口進行傳送。由于串行通信是數(shù)據(jù)的逐位順序傳送,在進行串行通信時,只需一根傳輸線,其傳送的數(shù)據(jù)位多且通信距離長。串行通信
9、方式如圖2-1。 計算機與單片機的數(shù)據(jù)通信,采用串行通信,與并行通信相比,串行通信具有傳輸距離遠,接口電路與軟件編程簡單等特點,所以本系統(tǒng)選用串行通信。串行通信接口電路見后面的硬件電路設(shè)計。 RXD TXD 89C51 GND GND TXD RXD 外 部 設(shè) 備 GND GND 圖2-1 串行通信方式 3 液晶顯示模塊簡介 液晶顯示模塊單元電路主要包括顯示控制器、行驅(qū)動器、列驅(qū)動器、電源偏置電路、顯示存儲器、液晶顯示屏、液晶顯示模塊接口。 (1) 顯示控制器 主要由控制器T6963C組成,
10、可提供與外部MCU的數(shù)據(jù)接口及對顯示存儲器的讀寫操作;并可控制行,列驅(qū)動器的時序電路,數(shù)據(jù)格式和顯示格式等。 (2) 行驅(qū)動器 由行驅(qū)動器T6A40組成,用于把控制器的串行數(shù)據(jù)轉(zhuǎn)換成LCD屏所需要的并行行數(shù)據(jù)。 (3) 列驅(qū)動器 由列驅(qū)動器T6A39組成,可接受控制器的串行數(shù)據(jù)并將其轉(zhuǎn)換成LCD屏所需要的并行列數(shù)據(jù)。 (4) 電源偏置電路 主要為行、列驅(qū)動器提供LCD所需的各種偏置電壓。 (5) 顯示存儲器 由一塊32K的隨機存儲器(RAM)組成,可為液晶顯示模塊提供顯示數(shù)據(jù)的存儲空間。 (6) 液晶顯示屏(LCD) 提供128行、240列的點陣顯示屏幕。 (7) 液晶顯示模塊
11、接口 用于提供與單片機的接口。 液晶顯示模塊的原理框圖如圖3-1。 行 驅(qū) 動 器 行 驅(qū) 動 器 顯 示 控 制 器 液 晶 顯 示 屏 240*128 DOTS 列 驅(qū) 動 器 列 驅(qū) 動 器 列 驅(qū) 動 器 顯 示 存 儲 器 電 源 偏 置 液 晶 顯 示 模 塊 接 口 圖3-1 液晶顯示模塊原理框圖 3.1 顯示控制器 顯示控制器主要由T6963C組成,它由振蕩器、時序控制電路、工作方式設(shè)置寄存器及電路,內(nèi)部字符庫C
12、GROM及光標控制電路,顯示存儲器管理電路以及運算電路和各種功能電路組成??刂撇客ㄟ^振蕩器外接晶體振蕩器產(chǎn)生振蕩脈沖,經(jīng)時序控制電路調(diào)制產(chǎn)生T6963C的工作時鐘脈沖系列,根據(jù)工作方式設(shè)置電路生成各路控制及驅(qū)動時序脈沖,從而實現(xiàn)T6963C的工作控制。其引腳圖如圖3-2。 圖3-2 T6963C引腳圖 控制部提供了使用引腳電平設(shè)置內(nèi)部工作狀態(tài)的功能,使T6963C上電后就開始對所連接的液晶顯示驅(qū)動系統(tǒng)進行正常的控制及驅(qū)動。這將避免因上電控制器尚未進行初始化而使液晶顯示驅(qū)動系統(tǒng)不能正常工作,導致液晶顯示屏上出現(xiàn)不希望的顯示狀態(tài)。 3.2驅(qū)動方式的設(shè)置 驅(qū)動方式是指T6963C向液晶
13、顯示驅(qū)動系統(tǒng)傳輸顯示數(shù)據(jù)的格式。他根據(jù)所要控制的液晶顯示驅(qū)動系統(tǒng)的數(shù)據(jù)傳輸格式的要求而定。T6963C可以實現(xiàn)四種數(shù)據(jù)傳輸格式,它由引腳和SDSEL的電平狀態(tài)設(shè)置。 : 液晶顯示器件電極排列形式的設(shè)置。 當=1時,液晶顯示器件為單屏結(jié)構(gòu);當=0時,液晶顯示器件為雙屏結(jié)構(gòu)。 SDSEL: 數(shù)據(jù)傳輸格式設(shè)置。 當SDSEL=1時,數(shù)據(jù)傳輸格式為2位并行同步傳輸;當SDSEL=0時,數(shù)據(jù)傳輸格式為1位串行傳輸。 這兩個設(shè)置引腳的電平組合確定了驅(qū)動部中數(shù)據(jù)傳輸?shù)妮敵龆?。如?-1: SDSEL 上半屏數(shù)據(jù)傳輸線
14、 下半屏數(shù)據(jù)傳輸線 1 1 HOD,ED — 1 0 ED — 0 1 HOD,ED LOD,ED 0 0 ED ED 表3-1 3.2.1顯示窗口長度設(shè)置 顯示窗口長度是指T6963C所要控制的液晶顯示器件水平方向最大的像素點數(shù)。顯示窗口長度的設(shè)置將確定了驅(qū)動部向液晶顯示驅(qū)動系統(tǒng)發(fā)送的顯示數(shù)據(jù)的個數(shù),不管實際控制的顯示屏的點陣數(shù)如何,他已固定了驅(qū)動信號的時序關(guān)系。該設(shè)置由引腳MD3和MD2(顯示數(shù)據(jù)傳輸量設(shè)置端)的電平組合實現(xiàn),如表3-2: MD3 MD2 像素點數(shù) 字符數(shù) 1 1 256 32 1 0 320 40
15、0 1 512 64 0 0 640 80 表3-2 3.2.2顯示窗口寬度設(shè)置 顯示窗口寬度是指T6963C所要控制的液晶顯示器件垂直方向最大的像素點數(shù)。顯示窗口寬度的設(shè)置將確定了驅(qū)動部向液晶顯示驅(qū)動系統(tǒng)發(fā)送的幀信號時序和占空比系數(shù)。該設(shè)置由引腳MDS,MD1和MD0(顯示幀信號設(shè)置端)與設(shè)置端組合實現(xiàn),如表3-3: MDS MD1 MD0 像素點行數(shù) 占空比系數(shù) 1/0 0 1 1 16/32 16 1/0 0 1 0 32/64 32 1/0 0 0 1 48/96 48 1/0 0 0 0 64/128
16、64 1/0 1 1 1 80/160 80 1/0 1 1 0 96/192 96 1/0 1 0 1 112/224 112 1/0 1 0 0 128/256 128 表3-3 3.2.3顯示字符的字體設(shè)置 顯示字符的字體選擇實際上是選擇字符間距。T6963C內(nèi)部字符庫是5*8點陣字符字模,在垂直方向字模數(shù)據(jù)中留有一行的間距,是不可變動的;但在水平方向字模數(shù)據(jù)將一字節(jié)的高三位作為字間距處理,即字間距可以為一點距,兩點距或三點距,也可以沒有。T6963C可以根據(jù)需要通過引腳FS1和FS0(字體選擇端)的電平組合來設(shè)置字符間距,這里表示為
17、字符的字體。組合設(shè)置如表3-4: FS1 1 1 0 0 FS0 1 0 1 0 字體 5*8 6*8 7*8 8*8 表3-4 字體選擇的實現(xiàn)是在顯示數(shù)據(jù)傳輸過程中將一字節(jié)的8位字模數(shù)據(jù)有選擇地傳輸幾位。比如僅取8位數(shù)據(jù)中低5位作為顯示數(shù)據(jù)傳輸而舍棄高3位,那么顯示為5*8點陣字體的字符;或取8位數(shù)據(jù)中低六位作為顯示數(shù)據(jù)傳輸而舍棄高2位,那么顯示為6*8點陣字體的字符;再或取8位數(shù)據(jù)中低7位作為顯示數(shù)據(jù)傳輸而舍棄高1位,那么顯示為7*8點陣字體的字符;如果8位數(shù)據(jù)全部作為顯示數(shù)據(jù)傳輸,那么顯示位8*8點陣字體的字符。這是在文本顯示方式下。在圖形顯示方式下
18、,則將是取舍圖形數(shù)據(jù)有效位的問題了。 振蕩器的晶體振蕩器的選擇 振蕩器時鐘與控制器所控制的液晶顯示驅(qū)動系統(tǒng)的驅(qū)動幀頻(行數(shù))和數(shù)據(jù)傳輸量(列數(shù))有關(guān)。晶體的頻率F可以由下列公式計算得來: F=2F=2*(8M*8N*Fr) 其中F——驅(qū)動位移時鐘頻率,即HSCP(LSCP)的脈沖頻率; M——字符數(shù)/行,8M即最大驅(qū)動的像素數(shù)/行; N——字符行數(shù)/幀,8N即最大驅(qū)動的像素行數(shù); Fr——液晶顯示器件所需的掃描頻率,通常為60或70Hz。 控制部的引腳設(shè)置功能使得T6963C能夠上電就能正常工作,但也給
19、T6963C通用性帶來不便,因而T6963C內(nèi)置液晶顯示模塊上。 T6963C不僅具備基本的文本顯示和圖形顯示功能,而且還具備文本屬性顯示功能,這是T6963C控制器的獨特的功能。文本屬性顯示功能是將文本顯示由通常的單字節(jié)數(shù)據(jù)處理擴大成雙字節(jié)數(shù)據(jù)處理。在這種功能下把顯示存儲器區(qū)劃分為文本代碼區(qū)和文本屬性區(qū)。文本代碼區(qū)是用與存儲作為字符顯示的字符代碼;文本屬性區(qū)是用與存儲作為相應(yīng)字符顯示的字符屬性,這種屬性由文本屬性區(qū)單元中一個字節(jié)數(shù)據(jù)的低4位表示,有6種屬性。如表3-5: 文本屬性碼 字符顯示效果 d3 d2 d1 d0 0
20、 0 0 0 正向顯示,不閃爍 0 1 0 1 負向顯示,不閃爍 1 0 0 0 正向顯示,閃爍 1 1 0 1 負向顯示,閃爍 * 0 1 1 禁止顯示(正向) * 1 * 0 禁止顯示(負向) 表3-5 文本屬性區(qū)的單元與文本顯示區(qū)對應(yīng)單元組合在一起控制顯示屏上對應(yīng)的字符塊的顯示效果。例如: 文本屬性數(shù)據(jù)
21、為05H,則對應(yīng)的字符顯示效果是一個負向顯示的“0”。 字符代碼為21H,文本屬性數(shù)據(jù)為08H,則對應(yīng)的字符顯示效果是一個正向閃爍顯示的“A”。 T6963C的文本屬性功能的實現(xiàn)是以犧牲圖形顯示功能為代價的。T6963C將圖形地址指針計數(shù)器用作文本屬性區(qū)的尋址。所以文本屬性功能不能與圖形顯示功能并存。 T6963C具有顯示合成功能。它可以將文本顯示與圖形顯示通過某種合成邏輯同時在顯示屏上顯示。這種合成邏輯有邏輯“與”,邏輯“或”以及邏輯“異或”等,是通過選擇器實現(xiàn)的。T6963C還可以將顯示屏上顯示內(nèi)容“屏讀”或“屏拷貝”,這也是T6963C所獨特的功能。T6963C將傳送給液晶顯示驅(qū)動
22、系統(tǒng)的合成數(shù)據(jù)反饋給復(fù)制電路,再由其送到數(shù)據(jù)?;驁D形顯示區(qū)。 T6963C還具有光標控制器和光標指針寄存器。它用與在文本顯示方式下光標的顯示控制。光標數(shù)據(jù)是在文本數(shù)據(jù)鎖存器處與文本字符數(shù)據(jù)合成后一起送入液晶顯示驅(qū)動系統(tǒng)的。 T6963C控制部具有管理顯示存儲器和字符發(fā)生器的能力。T6963C內(nèi)置有128種5*8點陣的ASCI字符字模庫CGROM,字符代碼為00H~7FH。并允許在顯示存儲器內(nèi)開辟一個用戶自定義字符8*8點陣字模庫CGROM。在使用內(nèi)部CGROM同時,T6963C也可以支持CGRAM,字符代碼定義在80H~FFH。T6963C可以管理64K的顯示存儲器。它可以把顯示存儲器分為
23、文本顯示區(qū),圖形顯示區(qū),文本屬性區(qū)或自定義字符庫區(qū)等。 T6963C管理顯示存儲器的引腳有: ad15~ad0 輸出 16位地址總線。 d7~d0 三態(tài) 8位數(shù)據(jù)總線。 r/w 輸出 讀寫選擇控制線。r/w=1為讀操作;r/w=0為寫操作。 輸出 存儲器操作使能信號。低電平有效。 , 輸出 存儲器操作使能信號。在單屏結(jié)構(gòu)設(shè)置()時有效。它們的有效地址范圍是: ce0 0000H~07FFH ce1 0800H~0FFFH T6963C多用于單屏結(jié)構(gòu)的液晶顯示驅(qū)動
24、系統(tǒng)的控制,但也具備控制雙屏結(jié)構(gòu)液晶顯示驅(qū)動系統(tǒng)的能力。在雙屏結(jié)構(gòu)的液晶顯示驅(qū)動系統(tǒng)的控制中,T6963C自動將ad15地址線作為上下屏的顯示存儲器的分界,ad15=0的部分為上下屏的顯示存儲器區(qū),ad15=1為下半屏的顯示存儲區(qū)。計算機設(shè)置的顯示區(qū)域都在上半屏的顯示存儲區(qū)內(nèi),而T6963C將自動地從相應(yīng)的下半屏的顯示存儲區(qū)的區(qū)域中提取下半屏的顯示數(shù)據(jù)。這樣的處理對計算機寫入顯示數(shù)據(jù)時是比較麻煩的,這也許是T6963C少用于雙屏結(jié)構(gòu)液晶顯示驅(qū)動控制系統(tǒng)的原因。 另外,T6963C保留了四個測試引腳,它們是測試信號輸入端T1,T2;檢測信號輸出端CH1,CH2。在T6963C的應(yīng)用是,這四個引
25、腳不必考慮。 3.3 列驅(qū)動方式 列驅(qū)動器T6A39是80路列驅(qū)動器,它采用了CMOS工藝,具有低功耗、耐高壓和高速運行等特點。 列驅(qū)動器T6A39電路由兩路8*5位雙向移位寄存器、串/并轉(zhuǎn)換器及液晶顯示驅(qū)動電路和數(shù)據(jù)位選擇寄存器、數(shù)據(jù)方向控制器、驅(qū)動時序控制器、LCD偏壓電路組成。 8*5位雙向移位寄存器的作用是把接收到的串行數(shù)據(jù)轉(zhuǎn)換成符合要求的并行數(shù)據(jù),并傳遞給兩組液晶顯示驅(qū)動電路。 液晶顯示驅(qū)動電路的作用是在LCD偏壓電路供給的偏置電路下,將得到的80位并行數(shù)據(jù)轉(zhuǎn)換成LCD所需的并行輸出數(shù)據(jù)信號電平。 T6A39的數(shù)據(jù)輸入端為DI1、DI2、DI3、DI4。T6A39的數(shù)據(jù)接
26、受形式有三種:一位串行、二位并行和四位并行方式。這三種方式通過設(shè)置端DUAL,DIR和DF1、DF2的電位組合設(shè)置。 T6A39還有兩個數(shù)據(jù)接收使能信號EI01、EI02,正脈沖信號有效,它們中之一作為輸入端啟動本片數(shù)據(jù)接收工作,另一個作為輸出表示本片數(shù)據(jù)接收已滿,停止接收工作,這兩個信號作為級聯(lián)信號使用,即作為輸入的一端與上一級的輸出端連接,由上一級數(shù)據(jù)接收已滿信號啟動本級工作,作為輸出的一端與下一級的輸入端連接,本級數(shù)據(jù)接收已滿,停止接收工作,發(fā)出信號以啟動下一級的工作。 當幾片T6A39級聯(lián)使用時,第一片T6A39的數(shù)據(jù)接收使能信號EI01和EI02中作為輸入端的那個信號需與T696
27、3C的LP信號相連。 列驅(qū)動器T6A39工作原理如下:首先設(shè)置好數(shù)據(jù)位選擇電路、數(shù)據(jù)方向控制電路、驅(qū)動時序控制電路,當數(shù)據(jù)由數(shù)據(jù)輸入端DI1、DI2、DI3、DI4輸入到串/并轉(zhuǎn)換器后,該電路將等待接收滿8位后把數(shù)據(jù)并行地移入8*5位雙向移位寄存器內(nèi),然后在LP與FR信號的作用下通過液晶顯示驅(qū)動電路將數(shù)據(jù)輸出。 3.4 行驅(qū)動方式 行驅(qū)動器T6A40是68路行驅(qū)動器,它采用CMOS工藝,具有低功耗、耐高壓和高速運行等特點 行驅(qū)動器T6A40電路由兩路34位雙向移位寄存器、數(shù)據(jù)方向控制器、SCP極性控制器、液晶顯示驅(qū)動電路及LCD偏壓電路組成。 行驅(qū)動器T6A40片內(nèi)有兩個34位雙向移
28、位寄存器,串行數(shù)據(jù)可從DI01和DI02兩個端子輸入或輸出。 數(shù)據(jù)方向控制器根據(jù)單/雙屏選擇端子DUAL和流向選擇端子DIR邏輯電平產(chǎn)生流向控制信號。 SCP極性控制器產(chǎn)生SCP信號,由觸發(fā)方式選擇端子TSW來控制SCP的有效觸發(fā)方式:當TSW=0時,數(shù)據(jù)在SCP的上升沿輸出至驅(qū)動輸出端;當TSW=1時,數(shù)據(jù)在SCP的的下降沿輸出至驅(qū)動輸出端。 行驅(qū)動器T6A40 工作原理如下:兩個34位雙向移位寄存器產(chǎn)生的兩個34位并行數(shù)據(jù)將輸出到兩個LCD驅(qū)動電路中,并在LCD偏壓電路作用下產(chǎn)生68位并行LCD行輸出信號,最后加到LCD屏的行輸入端。
29、 4 硬件設(shè)計 4.1硬件電路設(shè)計要求 (1)控制液晶顯示模塊實現(xiàn)英文、漢字、圖形、及圖像的顯示。 (2)實現(xiàn)便攜式設(shè)計。 (3)可提供實現(xiàn)與計算機的數(shù)據(jù)傳輸?shù)慕涌陔娐贰? 4.2 總體電路設(shè)計構(gòu)架 單片機系統(tǒng)板主要由單片機、EPROM、電源電路、RS232接口電路及液晶顯示模塊接口組成。其電路原理框圖如圖4-1: 電 源 電 路 單 片 機 RS232接口電路 EPROM 液晶顯示模塊接口 圖4-1 總電路原理框圖 單片機系統(tǒng)板的功能是控制液晶顯示模塊進行顯
30、示,它的特點是采用了7805整流電源電路為系統(tǒng)板提供5V電壓,可實現(xiàn)便攜式設(shè)計,另外系統(tǒng)板還配備了一個RS232接口,可以實現(xiàn)與計算機的數(shù)據(jù)傳輸。 4.3 單片機與液晶顯示模塊接口 單片機與液晶顯示模塊接口的通信這里采用間接訪問方式。間接控制方式是將內(nèi)置T6963C控制器的液晶顯示模塊與計算機系統(tǒng)中某個并行I/O接口連接,計算機通過對該I/O接口的間接操作來實現(xiàn)對模塊的控制。間接控制方式在硬件電路上需要一個8位并行接口與模塊的數(shù)據(jù)線連接,作為數(shù)據(jù)總線,還需要一個3位并行接口作為時序控制信號線如89C51的P3.2作為C/D,P3.3作為WR,以及P3.4作為RD。由于使用了專用的并行接口連
31、接模塊,而且該并行接口自身在計算機系統(tǒng)中有相應(yīng)的片選地址,所以模塊的片選信號可以直接接地作選通態(tài),間接控制方式的接口電路與時序無關(guān),時序完全靠軟件編程實現(xiàn)。計算機間接控制方式下與內(nèi)置T6963C控制器的液晶顯示模塊的實用接口電路如下所示。模塊的V0端所接的電位器是作為液晶驅(qū)動電源的調(diào)節(jié)器,調(diào)節(jié)顯示的對比度。間接接口電路如圖4-2: 圖4-2 間接接口電路 4.4 單片機與計算機的通信接口 單片機與計算機的通信采用簡化三線的串行通信方式,即把單片機的發(fā)送端TXD直接和計算機的接收端RXD相連,接收端RXD直接和計算機的發(fā)送端TXD相連,但是單片機的+5V TTL信號電平與PC機的10
32、V信號電平不相容,所以必須進行電平轉(zhuǎn)換,本設(shè)計中采用MAXIM公司生產(chǎn)的MAX232芯片,MAX232包含兩路接收器和驅(qū)動器,適用于各種EIA232C和V2.28/V.24的通信接口。MAX232芯片內(nèi)部有一個電源電壓變換器,可以把輸入的+5V電源電壓變換成為RS-232C輸出電平所需的10V電壓,所以,采用此芯片接口的串行通信系統(tǒng)只需要單一的+5V電源就可以了。不像傳統(tǒng)的RS232電平轉(zhuǎn)換器發(fā)送器MC1488和接收器MC1489那樣必須提供額外的+12V和-12V電源。MAX232芯片引腳圖如圖4-3: 圖4-3 MAX232引腳圖 圖4-4 MAX232串
33、行接口電路 此通信接口電路,只用了MAX232芯片中的一路接收器和驅(qū)動器,接至PC機串口的接口使用RS-232標準的DB9芯接插座。MAX232CPE接線也非常簡單,只需要-5V電源,外接四只電容,即可產(chǎn)生+12V和-12V電壓,輸出標準的RS232接口信號。而且MAX232CPE的價格不貴,所以采用MAX232CPE接口芯片實現(xiàn)RS232接口電路。其接口電路如圖4-4。 4.5 電源電路 電源電路是由電源變壓器,整流,濾波和穩(wěn)壓電路等四部分組成。電源變壓器是將交流電網(wǎng)220V的電壓變?yōu)樗枰碾妷褐?然后通過整流電路交流電壓變?yōu)槊}動的直流電壓。由于此脈動的直流電壓還含有較大的波紋,必須
34、通過濾波電路加以濾除,從而得到平滑的直流電壓。但這樣的電壓還隨電網(wǎng)電壓波動(一般有10%左右的波動),負載和溫度的變化而變化.因而在整流,濾波之后,還需接穩(wěn)壓電路。穩(wěn)壓電路的作用是當電網(wǎng)電壓波動,負載和溫度變化是,維持輸出直流電壓穩(wěn)定。電源電路如圖4-5: 圖4-5 電源電路 5 系統(tǒng)軟件設(shè)計 5.1 內(nèi)置T6963C控制器軟件特性 由于T6963C使用了硬件初始化設(shè)置,所以使得其指令功能集中于顯示功能的設(shè)置上,從而加強了T6963C的顯示控制能力。 指令狀態(tài)啟動 狀態(tài)檢查 寫參數(shù)1(低8位) 寫指令 狀態(tài)檢查 寫參數(shù)2(高8位) 狀態(tài)檢查 結(jié) 束 初始化
35、 清 零 定入顯示數(shù)據(jù) 狀態(tài)讀取 狀態(tài)檢測 寫指令(讀數(shù)據(jù)) T6963C模塊的控制指令可帶1個或2個參數(shù),或無參數(shù)。每條指令的執(zhí)行都是先送入?yún)?shù),再送入指令代碼。而且當向T6963C中讀、寫數(shù)據(jù)或向其中寫入命令時,必須嚴格遵循T6963C的時序。如果所送參數(shù)多于規(guī)定個數(shù),以最后送入的有效。每次操作之前必須先進行狀態(tài)字檢測。顯示過程流程圖如圖5-1: 圖5-1 顯示過程流程圖 圖5-2 雙參數(shù)指令傳輸流程圖 以上每一步驟又要完成以下流程:對于無參數(shù)或自動
36、指令,以上過程只需1次,單參數(shù)指令需兩次,而雙參數(shù)指令則需進行3次(前2次傳參數(shù),最后傳指令)。圖5-2以雙參數(shù)指令為例給出其指令傳輸過程。 液晶顯示模塊指令說明如下: (1)讀狀態(tài)字 S7 S6 S5 S4 S3 S2 S1 S0 格式 T6963C的狀態(tài)字由七位標志位組成,它們是: S0 指令讀寫狀態(tài) 1:準備好 0:忙 S1 數(shù)據(jù)讀寫狀態(tài) 1:準備好 0:忙 S2 數(shù)據(jù)自動讀狀態(tài) 1:準備好 0:忙 S3 數(shù)據(jù)自動寫狀態(tài)
37、 1:準備好 0:忙 S4 未用 S5 控制器運行檢測可能性 1:可能 0:不能 S6 屏讀/屏拷貝出錯狀態(tài) 1:出錯 0:正確 S7 閃爍狀態(tài)檢測 1:顯示 0:關(guān)顯示 (2)地址指針設(shè)置 0 0 1 0 0 N2 N1 N0 格式 D1 D2 該指令為雙參數(shù)(D1,D2)指令。指令代碼中的N1,N2,N0取值”1”為有效,”0”為無效,而且不能同時為”1”,根據(jù)N的取值,該指令有三種含義,如表5-1:
38、D1 D2 指令代碼 功能 水平位置(低7位有效) 垂直位置(低5位有效) 21H(N0=1) 光標地址設(shè)置 偏置地址(低5位有效) 00H 22H(N1=1) CGRAM偏置地址 低字節(jié) 高字節(jié) 24H(N2=1) 顯示地址設(shè)置 表5-1 (3)顯示區(qū)域設(shè)置 0 1 0 0 0 0 N1 N0 格式 D1 D2 該指令是雙參數(shù)指令,它將在顯示存儲器內(nèi)劃分出各顯示區(qū)域的范圍。它是由設(shè)定顯示區(qū)域的首地址和寬度來確定該顯示區(qū)域的范圍,同時也確定了顯示存儲器單元與顯示屏上各點像素的對應(yīng)關(guān)系。該指令中N1
39、,N0有四種組合,每種組合有不同的含義。具體功能參見表5-2: N1 N0 D1 D0 指令代碼 功能 0 0 低字節(jié) 高字節(jié) 40H 文本顯示區(qū)首地址 0 1 字節(jié)數(shù) 00H 41H 文本顯示寬度 1 0 低字節(jié) 高字節(jié) 42H 圖形顯示區(qū)首地址 1 1 字節(jié)數(shù) 00H 43H 圖形顯示區(qū)寬度 表5-2 (4)顯示方式設(shè)置 1 0 0 0 CG N2 N1 N0 格式 該指令為顯示方式的設(shè)置,無參數(shù)。它的幾個設(shè)置位功能如下:
40、 CG位 字符發(fā)生器選擇位。 當CG=0時,啟用內(nèi)部字符發(fā)生器CGROM,該字符庫有128種字符,其代碼為00H~7FH;同時可以建立128種88點陣的自定義字符發(fā)生器CGRAM,其字符代碼規(guī)定在80H~FFH范圍內(nèi); 當CG=1時,禁止內(nèi)部CGROM,字符顯示完全取自自定義字符發(fā)生器CGRAM,該字符庫為2K字節(jié)容量,字符代碼為00H~FFH。 N2,N1,N0位為顯示方式設(shè)置位,它們的組合產(chǎn)生的顯示方式如表5-3: N2 N2 N0 顯示方式 說明 0 0 0 邏輯“或” 文本與圖形以邏輯“或”的關(guān)系合成顯示 0
41、 0 1 邏輯“異或” 文本與圖形以邏輯“異或”的關(guān)系合成顯示 0 1 1 邏輯“與” 文本與圖形以邏輯“與”的關(guān)系合成顯示 1 0 0 文本屬性 文本顯示特征以雙字節(jié)表示 表5-3 (5)顯示狀態(tài)設(shè)置 1 0 0 1 N3 N2 N1 N0 格式 該指令設(shè)置了當前的顯示狀態(tài),無參數(shù)。該指令有4個設(shè)置位,每一位都代表一種顯示狀態(tài)的設(shè)置,它們可以同時有效,也可以部分有效,也可以都無效。這4個設(shè)置位的功能如下: N0 光標閃爍設(shè)置開關(guān) N0=1為啟用光標閃爍;N=0為禁止光標閃爍
42、。 N1 光標顯示設(shè)置開關(guān) N0=1為啟用光標顯示;N=0為禁止光標顯示。 N2 文本顯示設(shè)置開關(guān) N0=1為啟用文本顯示;N=0為禁止文本顯示。 N3 圖形顯示設(shè)置開關(guān) N0=1為啟用圖形顯示;N=0為禁止圖形顯示。 (6)數(shù)據(jù)自動讀寫設(shè)置 1 0 1 1 0 0 N1 N0 格式 使用該指令將進入或退出數(shù)據(jù)的自動讀或自動寫方式。在自動讀或自動寫方式中,計算機可以連續(xù)的將顯示數(shù)據(jù)寫入顯示存儲器中或從顯示存儲器中讀取數(shù)據(jù)。在每次讀或?qū)懙牟僮骱?,顯示地址自動加一。進入自動讀方式或自動寫方式時,狀態(tài)位
43、將由S2(自動讀方式)或S3(自動寫方式)代替S1和S0。在自動讀或自動寫方式完成時要輸入退出自動讀寫方式命令。在自動讀寫方式中寫入其他指令都是無效的。 該指令中有兩位設(shè)置位N1,N0。這兩位將產(chǎn)生三個子指令,如表5-4: N1 N0 指令代碼 功 能 0 0 B0H 進入自動寫方式 0 1 B1H 進入自動讀方式 1 * B2H/B3H 進入自動讀寫狀態(tài) 表5-4 (7)數(shù)據(jù)一次讀寫設(shè)置 1 1 0 0 0 N2 N1 N0 格式
44、 該指令是一次讀寫數(shù)據(jù)操作指令。在每次讀寫數(shù)據(jù)操作后,顯示地址都要根據(jù)指令代碼的設(shè)置而修正:加一,減一或不變。該指令在寫入數(shù)據(jù)時所帶的一個參數(shù)就是所要寫入的顯示數(shù)據(jù)。當讀數(shù)據(jù)操作時,該指令不帶參數(shù),直接寫入指令代碼。該指令有三個設(shè)置位N2,N1,N0。它們的組合功能如表5-5: 參數(shù)D1 N2 N1 N0 指令代碼 功 能 數(shù)據(jù) 0 0 0 C0H 數(shù)據(jù)寫,地址加一 — 0 0 1 C1H 數(shù)據(jù)讀,地址加一 數(shù)據(jù) 0 1 0 C2H 數(shù)據(jù)寫,地址減一 — 0 1 1 C3H 數(shù)據(jù)讀,地址減一
45、 數(shù)據(jù) 1 0 0 C4H 數(shù)據(jù)寫,地址不變 — 1 0 1 C5H 數(shù)據(jù)讀,地址不變 表5-5 5.2初始化子程序設(shè)計 初始化部分包括對液晶顯示模塊的初始化設(shè)置、液晶顯示模塊的顯示RAM清零、單片機內(nèi)部RAM的清零。其中液晶顯示模塊的初始化設(shè)置包括設(shè)置顯示方式、顯示區(qū)域的首地址及寬度、光標形狀設(shè)置。 開 始 設(shè)置文本顯示區(qū)首地址 設(shè)置文本顯示區(qū)寬度 設(shè)置圖形顯示區(qū)首地址 設(shè)置文本屬性區(qū)首地址 設(shè)置圖形顯示區(qū)寬度 設(shè)置文本屬性區(qū)寬度 光標形狀設(shè)置 顯示方式設(shè)置 顯示開關(guān)設(shè)置 結(jié) 束 初始化子程序流程圖如圖5-3:
46、 圖5-3 初始化子程序流程圖 5.3 串行通信子程序設(shè)計 單片機與PC機之間的串行通信主要包括兩個過程:由8051傳送數(shù)據(jù)至PC機;8051接收PC機傳來的數(shù)據(jù)。 串行通信子程序流程圖如圖5-4: 開 始 通信初始化 等待PC機傳送數(shù)據(jù) 判斷收到的是否是數(shù)據(jù)起始標志 開始接收數(shù)據(jù),判斷是否結(jié)束標志 中斷返回 繼續(xù)接收數(shù)據(jù) Y Y N N 圖5-4 串行通信子程序流程圖 5.4 顯示控制子程序設(shè)計 顯示應(yīng)用程序部分主要
47、是單獨的顯示子程序,通過一個單獨的按鍵進行控制,按一次按鍵執(zhí)行一個顯示子程序,顯示完最后一個顯示子程序,自動回到第一個顯示子程序,實現(xiàn)循環(huán)顯示。 顯示子程序包括漢字、圖形及圖象的顯示,并且實現(xiàn)了漢字的平移和圖形的動態(tài)顯示。其中漢字的平移是通過執(zhí)行一個定時中斷程序來不斷改變顯示區(qū)域的首地址實現(xiàn)的,由于顯示區(qū)域的首地址是與液晶顯示模塊的顯示RAM單元的每一字節(jié)相對應(yīng)的,首地址加一意味著顯示RAM單元的一個字節(jié)的改變,在黑白模式下即對應(yīng)著八個像素的改變,所以在顯示屏上漢字的平移是跳躍式的,間距為八個像素點;而圖形的平移是通過顯示控制器T6963C的位操作指令實現(xiàn)的,該位操作指令可以實現(xiàn)對顯示屏每一
48、像素點的亮暗操作,因而可以實現(xiàn)圖形的平滑移動。 顯示的子程序通過指針從數(shù)據(jù)庫中逐個提取數(shù)據(jù)送如液晶顯示模塊的顯示RAM進行顯示。數(shù)據(jù)庫中的數(shù)據(jù)為要顯示的內(nèi)容,此漢字字模提取軟件不僅可以提取漢字字模的十六進制數(shù)據(jù),而且可以提取圖象的十六進制數(shù)據(jù)。 開始 計算圖形顯示RAM 地址 圖形顯示區(qū)寬度 圖形顯示區(qū)首地址 計算漢字庫字符首地址 設(shè)置顯示RAM地址 取字庫地址指針 取字模數(shù)據(jù) 寫入數(shù)據(jù) 結(jié)束 圖5-6 文本顯示圖形流程圖 開始 始 計算顯示RAM地址 文本顯示區(qū)首地址 設(shè)置顯示RAM地址 取漢字代碼 寫入漢字代碼 結(jié)束 圖5-5 文本顯
49、示漢字流程圖 6系統(tǒng)調(diào)試 6.1 分步調(diào)試 6.1.1 LCD液晶顯示電路調(diào)試顯示 硬件電路設(shè)計及軟件設(shè)計好之后進行各模塊的調(diào)試,首先調(diào)試字符顯示部分,單片機的調(diào)試使用TOPICE52單片機仿真器。 采用直接查字符碼表顯示的辦法,將要顯示漢字的字符碼直接寫在單片機程序中,編程時先將程序存貯區(qū)中的字符碼全部轉(zhuǎn)移到系統(tǒng)擴展的數(shù)據(jù)存貯器6264中,然后從6264中查找字符碼并輸出顯示。 6.1.2 計算機串行口調(diào)試 首先利用“串口精靈”串口調(diào)試軟件,檢查計算機串口的數(shù)據(jù)收發(fā)功能是否有效,具體方法是:將
50、從串口接出的DB9芯電纜插頭的第2、3腳短接(即將串口的數(shù)據(jù)發(fā)送和接收端短接),然后打開“串口精靈”軟件,在發(fā)送窗口中輸入一串要發(fā)送的字符或數(shù)據(jù),并將這些字符或數(shù)據(jù)發(fā)送出去,在數(shù)據(jù)接收窗口中觀察接受的到的字符或數(shù)據(jù)是否與發(fā)送的一致。 硬件調(diào)試完成后,利用同樣的辦法調(diào)試自己在PC機上編寫的通信程序。 6.1.3 計算機與單片機通信電路調(diào)試 因為單片機的通信已經(jīng)調(diào)試完成,將計算機與單片機相連之后調(diào)試也就是調(diào)試單片機的數(shù)據(jù)收發(fā)功能。編制程序使二者之間互相發(fā)送數(shù)據(jù),在TOPICE52仿真軟件的數(shù)據(jù)窗口和計算機屏幕中監(jiān)視接收的數(shù)據(jù)。 6.2 系統(tǒng)統(tǒng)一調(diào)試 經(jīng)過以上每一步的調(diào)試并都成功
51、后,就可以將硬件及軟件結(jié)合起來進行系統(tǒng)的統(tǒng)一調(diào)試。 經(jīng)過以上步驟調(diào)試,將計算機程序燒錄到89C51單片機內(nèi)部ROM中,用屏蔽線將液晶顯示系統(tǒng)與計算機串行口連接起來,就能實現(xiàn)計算機對LCD顯示屏的實時控制,可以實時更新顯示內(nèi)容、顯示方式。 6.3仿真及結(jié)果 在C8051F020系統(tǒng)實驗箱上的液晶顯示屏上,我實現(xiàn)了這些動態(tài)顯示功能,特設(shè)計了以下幾個顯示場景: (1)場景一: 第一個場景是在液晶顯示屏上靜態(tài)顯示位圖,如圖6.1所示: 圖6.1 位圖上下滾動 在這個場景中,是對位圖128*64的模仿上下滾動。 (2)場景二
52、 第二個場景是圖形動態(tài)顯示模擬,它們是從左向右推出的,一直移動到顯示屏最右端。具體如圖6.2所示: 圖6.2 位圖右移 (3)場景三 第三個場景是靜態(tài)顯示一幅位圖如圖6.3 圖6.3 位圖顯示 (4)場景四 這個場景是實現(xiàn)對字符的動態(tài)顯示如圖6.4。用的是“湖南”與“湘”這三個漢字來模仿的。讓“湖南”兩個字縱向排列,從右向左移動;“湘”字從上下落到液晶屏的底部。在這些場景中,液晶顯示屏上顯示的漢字,把它當作圖形來顯示的,漢字和圖形的字模我是借助字模軟件取
53、模的,并沒有自己去設(shè)計漢字和圖形的字模。當然這樣做省了不少的事,就我個人來看,把大量的時間分配在接口的編程上和如何利用C語言實現(xiàn)接口是更有價值的。 圖6.4 字符串移動 由于這種型號液晶屏的觀察角度不同,一般采用成45度的角度來觀察為最好,直視比較黑而且圖像不明顯,所以在系統(tǒng)仿真實驗中,沒有取到最佳圖形。 心得體會 本系統(tǒng)的設(shè)計已經(jīng)全部完成,基本達到了預(yù)期的目的與要求。但是在系統(tǒng)的調(diào)試方面還不夠健全。還存在諸如:顯示內(nèi)容的單一,亮度不夠、動態(tài)顯示效果不明顯等問題需要再次改進。本系統(tǒng)主要應(yīng)用單片機進行控制,利用程序來實現(xiàn)漢字的顯示,這就要運用到漢字庫,但是在漢字庫中只
54、是收集了一些常用的漢字,對于一些生僻的漢字還沒有收錄,這就意味著如果要顯示一些生僻的漢字就必須自己重新創(chuàng)建漢字庫,這必然就帶來了一定的難度。在現(xiàn)階段,由于知識和時間有限,自己創(chuàng)建漢字庫就有一定的困難,如何才能更方便快捷的創(chuàng)建漢字庫,這需要繼續(xù)研究和探討。 在整個過程中,本人不僅對LCD控制系統(tǒng)的每一個細節(jié)有了比較深入的掌握,而且對關(guān)于系統(tǒng)擴展的相關(guān)知識有了感性的認識,不僅掌握了大量的專業(yè)知識,更學會了系統(tǒng)模塊設(shè)計的基本思想。 在整個設(shè)計過程中誠摯的感謝李建英老師的親切指導以及幫助才使我的課程設(shè)計得以順利的進行。總之,通過本次課題的設(shè)計,本人在理論知識方面和思想方面都有很大的收獲。
55、 參考文獻 [1]李維緹,郭強.液晶顯示器件應(yīng)用技術(shù)[M].北京:北京郵電學院出版社,1993 [2]內(nèi)藏T6963C控制器點陣圖形式液晶顯示模塊使用手冊[J].南京國顯電子公司 [3]賴麒文.8051單片機C語言徹底應(yīng)用[M].北京:科學出版社,2002 [4]何立民,張俊謨.單片機中級教程原理與應(yīng)用[M].北京:航空航天大學出版社,1999. [5]陳明熒.8051單片機課程設(shè)計實訓教材[M].北京:清華大學出版社,2003. [6]趙志海.液晶顯示器及其應(yīng)用[J].國際光電與顯示.2001. [7]永勝.LCD模塊用電源電路[J].電訊技術(shù),1995. [8]范志新.
56、液晶器件工藝基礎(chǔ)[M].北京:北京郵電大學出版社,2000. [9]楊澤民,劉培興等.液晶顯示器原理與應(yīng)用[J].大連東顯電子有限公司 [10]李錦飛.點陣式液晶顯示器圖形程序設(shè)計[J].電子技術(shù)應(yīng)用,1993 [11]劉復(fù)華.8098單片機及其應(yīng)用系統(tǒng)設(shè)計[M].北京:清華大學出版社,1992 [12]高傳善.接口與通信[M].上海:復(fù)旦大學出版社,1989 [13]李振亭.點陣圖形式液晶顯示控制器T6963C的應(yīng)用[J].電子技術(shù)應(yīng)用,1994 [14] 張毅剛、劉杰主編.《MCS-51單片機原理及應(yīng)用》[M].黑龍江:哈爾濱工業(yè)大學出版社,2004.6,第1版. [15]馬
57、忠梅等.單片機的C語言應(yīng)用程序設(shè)計.北京:北京航空航天大學出版社,2001 [16]王建校.51系列單片機及C51程序設(shè)計[M].北京:科學出版社,2002 [17]何立明.《單片機實驗與實踐教程(二)》[M].北京:北京航空航天大學出版社,2001.6. [18] 康華光主編.電子技術(shù)基礎(chǔ)〔M〕,第4版.北京:高等教育出版社,1999 附 錄 參考程序: LCD初始化: void InitLCD(void) //初始化LCD { char i,j; LCD_RST=0; Delay1ms(1); LCD_RST=1; LCD_WriteCommand1
58、(0xc0); LCD_WriteCommand2(0xc0); LCD_WriteCommand1(0x3f); //開顯示 LCD_WriteCommand2(0x3f); for (j=0;j<8;j++) //清屏 { LCD_WriteCommand1(0xB8+j); //清左半屏 LCD_WriteCommand1(0x40); for (i=0;i<64;i++) LCD_WriteData1(0x00); LCD_WriteCommand2(0xB8+j); //清右半屏 L
59、CD_WriteCommand2(0x40); for (i=0;i<64;i++) LCD_WriteData2(0x00); } } 單個漢字顯示: void LCD_Write_A_HZ(char x,char y,char *Dot) //顯示16*16點陣漢字 { char i; for (i=0;i<32;i++) { if ((x+i%16)<64) { LCD_WriteCommand1(0xB8+y+i/16); LCD_WriteCommand1(0x40+x+i%16); LCD_WriteData1(Dot[
60、i]); } else { LCD_WriteCommand2(0xB8+y+i/16); LCD_WriteCommand2(0x40+x-64+i%16); LCD_WriteData2(Dot[i]); } } } 靜態(tài)顯示一幅位圖: void DispBmp(char *buf) //顯示一幅位圖 { int i,j; for (j=0;j<8;j++) //顯示位圖 { LCD_WriteCommand1(0xB8+j);
61、 LCD_WriteCommand1(0x40); for (i=0;i<64;i++) LCD_WriteData1(buf[(j*2)*64+i]); LCD_WriteCommand2(0xB8+j); LCD_WriteCommand2(0x40); for (i=0;i<64;i++) LCD_WriteData2(buf[(j*2+1)*64+i]); } } 位圖上下滾動實現(xiàn): Void DispBm
62、p_Roll(char *buf) { char *Buffer; int i; Buffer=buf; DispBmp(Buffer); for (i=0;i<64;i++) { Delay1ms(50); LCD_WriteCommand1(0xc0+i%64); //設(shè)置起始行,實現(xiàn)向上滾動 LCD_WriteCommand2(0xc0+i%64); } } 位圖從左到右移動實現(xiàn): void DispBmp_Move(char *buf) //左右移動一幅位
63、圖 { int line,line0,row,eight; //顯示位圖 for (row=0;row<128;row++) { Delay1ms(50); for (eight=0;eight<8;eight++) { if (row<64) { LCD_WriteCommand1(0xB8+eight); LCD_WriteCommand1(0x40+row); for (l
64、ine=0;line+row<64;line++) LCD_WriteData1(buf[(eight*2)*64+line]); LCD_WriteCommand2(0xB8+eight); LCD_WriteCommand2(0x40); for (line0=0;line0+row<64;line0++) LCD_WriteData2(buf[(eight*2)*64+line+line0]); } else { LCD_WriteCommand2(0xB8+eight); LCD_WriteCommand2(0x40+row-64); for (line0=0;line0+row-64<64;line0++) LCD_WriteData2(buf[(eight*2)*64+line0]); } } } }
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識競賽試題
- 1 礦井泵工考試練習題含答案
- 2煤礦爆破工考試復(fù)習題含答案
- 1 各種煤礦安全考試試題含答案