LCD幾何圖形顯示課程設(shè)計(jì).doc_第1頁(yè)
LCD幾何圖形顯示課程設(shè)計(jì).doc_第2頁(yè)
LCD幾何圖形顯示課程設(shè)計(jì).doc_第3頁(yè)
LCD幾何圖形顯示課程設(shè)計(jì).doc_第4頁(yè)
LCD幾何圖形顯示課程設(shè)計(jì).doc_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

VIP免費(fèi)下載

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

目 錄 第 1 章 設(shè)計(jì)的研究背景及目的要求.1 1.1 研究背景.1 1.2 設(shè)計(jì)目的.1 1.3 硬件選擇.1 1.4 設(shè)計(jì)內(nèi)容.1 第 2 章 設(shè)計(jì)的方案及基本原理.2 2.1 方案.2 2.2 基本原理.3 第 3 章 程序設(shè)計(jì).4 3.1 主程序流程圖.4 3.2 設(shè)計(jì)程序.4 第 4 章 調(diào)試結(jié)果與分析.5 4.1 調(diào)試結(jié)果.5 4.2 結(jié)果分析.5 結(jié)論與體會(huì).6 參考文獻(xiàn).7 附錄.8 單片機(jī)的控制系統(tǒng)課程設(shè)計(jì) 1 第 1 章 LCD 幾何圖形顯示設(shè)計(jì)的研究背景及目的要求 1.1 研究背景 在程序設(shè)計(jì)方面,凌陽(yáng)十六位單片機(jī)還具有易學(xué)易用的效率較高的一套指令 系統(tǒng)和集成開(kāi)發(fā)環(huán)境。在此環(huán)境中,支持標(biāo)準(zhǔn) C 語(yǔ)言,可以實(shí)現(xiàn) C 語(yǔ)言與凌陽(yáng)匯 編語(yǔ)言的互相調(diào)用。 顯示器的核心液晶顯示器控制器品種繁多,各種控制芯片在控制電路邏輯、 控制指令、指標(biāo)參數(shù)等方面各有差異。 但對(duì)于已帶有控制電路的平板點(diǎn)陣式圖 形液晶顯示器,使用者無(wú)需關(guān)心其控制核心的集成芯片、控制電路等, 就可方 便地利用它進(jìn)行開(kāi)發(fā)。 1.2 設(shè)計(jì)目的 熟悉利用 SPLC501 液晶顯示模組顯示幾何圖形的 API 函數(shù)。 掌握利用液晶顯示器顯示幾何圖形的方法。 1.3 硬件選擇 裝有window系統(tǒng)和仿真環(huán)境和PC機(jī)一臺(tái),十六位單片機(jī)實(shí)驗(yàn)箱一個(gè)。 SPCE061A核心及周邊電路模塊(包含 32 個(gè) I/O 口) ,LCD顯示模組模塊。 1.4 設(shè)計(jì)內(nèi)容 LCD 顯示器上一個(gè)實(shí)心圓,在實(shí)心圓的橫向直徑畫(huà)一條橫線,并在實(shí)心圓上 疊加顯示漢字:“凌陽(yáng)科技”,最后向上滾屏。在 LCD 顯示器實(shí)現(xiàn)實(shí)心圓和漢字的 疊加顯示。 利用 SPLC501 液晶顯示模組顯示英文(ASCII)字符時(shí),需要對(duì) LCD 進(jìn) 行初始化操作,以初始化 LCD 內(nèi)部的供電方式、驅(qū)動(dòng)設(shè)置等; 在凌陽(yáng)大學(xué)計(jì) 劃提供的 SPLC501 液晶顯示模組的驅(qū)動(dòng)程序中,提供了對(duì) SPLC501 液晶顯示 模組的初始化程序,除了完成前面所述的操作外,該函數(shù)還可以初始化液晶的顯 示。 初始化 SPLC501 液晶顯示模組后,驅(qū)動(dòng)程序默認(rèn)設(shè)置圖形顯示模式為覆蓋 模式,ASCII 字符的字型默認(rèn)為 816 的大小,如果需要修改這些參數(shù)可以調(diào)用 對(duì)應(yīng)的函數(shù)進(jìn)行設(shè)置。主程序利用 C 語(yǔ)言編寫(xiě),調(diào)用驅(qū)動(dòng)程序(調(diào)動(dòng)程序已提供 在 IDE 的安裝路SPCE061Aexamplemodel_ExadriverSPLC501driver) 。 單片機(jī)的控制系統(tǒng)課程設(shè)計(jì) 2 第 2 章 LCD 幾何圖形顯示的設(shè)計(jì)方案及基本原理 2.1 方案 驅(qū)動(dòng)程序文件 SPLC501User.c 同樣定義了顯示幾何圖形的 API 函數(shù),在驅(qū)動(dòng) 程序文件 SPLC501User.h 同樣定義了顯示幾何圖形的 API 函數(shù),SPLC501User.h 文件里也對(duì)這些函數(shù)進(jìn)行了申明。 void LCD501_Init(unsigned int InitialData) void LCD501_ClrScreen(unsigned int Mode) void LCD501_SetPaintMode(unsigned ModeCode) unsigned int LCD501_GetPaintMode(void) void LCD501_FontSet(unsinged int Font) /選擇顯示字符的字體大小 unsigned int LCD501_FontGet(void) /獲得顯示字符的字體大小 void LCD501_Bitmap(unsigned int x,unsigned int y,unsigned int *word) void LCD501_PutPixel(unsigned int x,unsigned int y) void LCD501_Line(unsigned int x,unsigned int y,unsigned int e_x,unsigned int e_y) /畫(huà)直線 void LCD501_Circle(unsigned int x,unsigned int y,unsigned int r,unsigned int Mode) /畫(huà)圓 void LCD501_Rectangle(unsigned left, unsigned top,unsigned right, unsigned bottom, unsigned Mode) void LCD501_ScrollUp(unsigned Rows) /屏幕向上滾動(dòng) 前面七個(gè)函數(shù)在前面實(shí)驗(yàn)里都有詳細(xì)說(shuō)明,這里介紹后面四個(gè)函數(shù): 1)【API 格式】C:void LCD501_PutPixel(unsigned int x,unsigned int y) 【功能說(shuō)明】在液晶顯示器上畫(huà)一個(gè)點(diǎn) 【參數(shù)】x 表示要畫(huà)點(diǎn)的 x 坐標(biāo); y 表示要畫(huà)點(diǎn)的 y 坐標(biāo); 【返回值】無(wú) 2)【API 格式】C:void LCD501_Line(unsigned int x,unsigned int y,unsigned int e_x,unsigned int e_y) 【功能說(shuō)明】在液晶顯示器上畫(huà)一條直線; 【參數(shù)】x 表示要畫(huà)的線的 x 起點(diǎn)坐標(biāo); y 表示要畫(huà)的線的 y 起點(diǎn)坐標(biāo); e_x 表示要畫(huà)的線的 x 終點(diǎn)坐標(biāo); e_y 表示要畫(huà)的線的 y 終點(diǎn)坐標(biāo)。 單片機(jī)的控制系統(tǒng)課程設(shè)計(jì) 3 【返回值】無(wú) 3)【API 格式】C:void LCD501_Circle(unsigned int x,unsigned int y,unsigned int r,unsigned int Mode) 【功能說(shuō)明】在液晶顯示器上畫(huà)一個(gè)圓 【參數(shù)】x 表示要畫(huà)的圓心的 x 坐標(biāo); y 表示要畫(huà)的圓心的 y 坐標(biāo); r 表示要畫(huà)的圓的半徑; Mode 表示繪點(diǎn)模式,其中 Mode = M_DOT_CLEAR(0) 畫(huà)圓框; Mode = M_DOT_SET 【返回值】無(wú) 4)【API 格式】C:void LCD501_Rectangle(unsigned left, unsigned top,unsigned right, unsigned bottom,unsigned Mode) 【功能說(shuō)明】在液晶顯示器上畫(huà)一個(gè)矩形 【返回值】無(wú) 2.2 基本原理 硬件連接如上圖。分別用實(shí)驗(yàn)箱跳線連接 IOB4 與 AO,IOB5 與 RWP,IOB6 與 EP,IOB9 與/CS,IOA8IOA15 與 D0D7:VR、C86 和 PS 都與 V3 短接, 把 SPLC501 液晶顯示模組的時(shí)序選擇為 6800 時(shí)序。即用跳線把實(shí)驗(yàn)箱 JP6 的所 有引針全部短接。 IOB9 IOB4 IOB5 IOB6 IOA8 SPCE061A IOA9 IOA10 IOA11 IOA12 IOA13 IOA14 IOA15 /CS AO R/W EP D0 D1 SPLC501 液晶 D2 顯示模組 D3 D4 D5 D6 D7 圖 2-1 硬件連接框圖 單片機(jī)的控制系統(tǒng)課程設(shè)計(jì) 4 第 3 章 LCD 幾何圖形顯示的程序設(shè)計(jì) 3.1 主程序流程圖 主程序流程圖如下圖:初始化 LCD;清屏,延時(shí);在圓心為(30,30)處畫(huà)一個(gè) 半徑為 30 的實(shí)心圓,延時(shí);設(shè)置圖象顯示模式為異或顯示模式;從(0,30)開(kāi)始到 (128,30)結(jié)束畫(huà)一條直線,延時(shí);顯示漢字“凌”、“陽(yáng)”、“科”、“技”、“凌”顯示在 (0,15)位置,“陽(yáng)”顯示在(16,15)位置。 凌陽(yáng)大學(xué)計(jì)劃為 SPLC501 液晶顯示模組提供了顯示驅(qū)動(dòng)程序,由五個(gè)文件 組成,底層驅(qū)動(dòng)程序文件:SPLC501Driver_IO.inc、SPLC501Driver_IO.asm;用 戶 API 功能接口函數(shù)文件: SPLC501User.h、SPLC501User.c、DataOSforLCD.asm。 3.2 設(shè)計(jì)程序代碼 由于程序過(guò)多,如附錄所示。 從(0,30)開(kāi)始到 (128,30)結(jié)束 延時(shí),清看門(mén)狗 顯示漢字 延時(shí),清看門(mén)狗 屏幕向上滾動(dòng) 延時(shí),清看門(mén)狗 延時(shí),清看門(mén)狗 設(shè)置為疊加模式 在圓心為(30,30) 延時(shí),清看門(mén)狗 初始化 清屏 開(kāi) 始 圖 3-1 主程序流程圖 單片機(jī)的控制系統(tǒng)課程設(shè)計(jì) 5 第 4 章 調(diào)試結(jié)果與分析 4.1 調(diào)試結(jié)果 圖 4-1 設(shè)計(jì)結(jié)果圖 4.2 結(jié)果分析 本次課程設(shè)計(jì)要求設(shè)計(jì) LCD 幾何圖形顯示器。應(yīng)用所學(xué)的知識(shí)及在圖書(shū)館 搜集的資料,對(duì)題目的要求進(jìn)行了設(shè)計(jì)。 1、設(shè)計(jì)了 LCD 幾何圖形顯示器,此顯示器能滿足題目中的要求。 2、在方案的設(shè)計(jì)中,用到了 SPLC061A 液晶顯示模組顯示幾何圖形的 API 函數(shù),和中斷,延時(shí)等子程序。 3、根據(jù)任務(wù)要求對(duì)相關(guān)參數(shù)進(jìn)行了計(jì)算,并對(duì)相關(guān)元件進(jìn)行了選擇。 單片機(jī)的控制系統(tǒng)課程設(shè)計(jì) 6 結(jié)論與體會(huì) 設(shè)計(jì)多種方案進(jìn)行對(duì)比,方案用到了 C 語(yǔ)言編寫(xiě)。在 LCD 顯示器實(shí)現(xiàn)實(shí)心 圓和漢字的疊加顯示。最后看到 LCD 顯示器上一個(gè)實(shí)心圓,在實(shí)心圓的橫向直 徑畫(huà)一條橫線,并在實(shí)心圓上疊加顯示漢字:“凌陽(yáng)科技”,最后向上滾屏。 本次課程設(shè)計(jì)設(shè)計(jì)的是 LCD 幾何圖形顯示,要求熟悉利用 SPLC501 液晶顯 示模組顯示幾何圖形的 API 函數(shù)。 通過(guò)這次課程設(shè)計(jì)讓我對(duì)單片機(jī)理論有了更加深入的了解, 更深刻的懂得 了 SPCE061A 單片機(jī)驅(qū)動(dòng)內(nèi)置式 SPLC501 液晶顯示模塊的在顯示幾何圖形方式。 利用 SPCE061A 單片機(jī)豐富的 I/O 囗資源驅(qū)動(dòng)液晶模塊,簡(jiǎn)化了電路設(shè)計(jì)。 我 突然發(fā)現(xiàn),如果總是止步于書(shū)本上學(xué)習(xí)單片機(jī),會(huì)覺(jué)得很抽象, 無(wú)法理解也不 會(huì)有興趣,但是當(dāng)理論知識(shí)和實(shí)踐結(jié)合到一起之后,就會(huì)非常有趣, 而且還會(huì) 印象深刻富有成就感。所以我很珍惜這次的設(shè)計(jì)學(xué)習(xí),我以后會(huì)多加練習(xí)。 單片機(jī)的控制系統(tǒng)課程設(shè)計(jì) 7 參考文獻(xiàn) 1 黃正瑾.綜合電子設(shè)計(jì)與實(shí)踐M.東南大學(xué)出版社,2002-3. 2 羅亞非.凌陽(yáng) 16 位單片機(jī)應(yīng)用基礎(chǔ)M.北京航空航天大學(xué)出版社,2005. 3 張念維.USB 總線接口開(kāi)發(fā)指南M.北京:電子出版社,2002. 4 周立功.單片機(jī)實(shí)驗(yàn)與實(shí)踐M.北京:北京航空航天大學(xué)出版社,2004. 5 周航慈.單片機(jī)應(yīng)用程序設(shè)計(jì)技術(shù)M.北京:航空航天大學(xué)出版社,2002. 6 袁勤勇.嵌入式系統(tǒng)構(gòu)件M.北京:北京機(jī)械工業(yè)出版社,2002. 單片機(jī)的控制系統(tǒng)課程設(shè)計(jì) 8 附錄 文件名稱:main.c 功能描述:LCD 幾何圖形顯示 #include SPCE061A.h #define GREEN 0 x00ff #define RED 0 xff00 #include SPLC501User.h #include Chinese_Table.h #define P_Watchdog_Clear (volatile unsigned int *)0 x7012 #define P_SystemClock (volatile unsigned int *)0 x7013 int main(void) int i,j,dd; LCD501_Init(0 x00); *P_SystemClock=0 x0088; LCD501_Circle(30,30,30,1); for(j=0;j=7;j+) for(i=0;i0 x15ff;i+) *P_Watchdog_Clear = 0 x0001; LCD501_SetPaintMode(3); LCD501_Line(1,30,127,30); for(j=0;j=7;j+) for(i=0;i0 x15ff;i+) *P_Watchdog_Clear = 0 x0001; LCD501_Bitmap(0,15,(unsigned int *)encoding_00); LCD501_Bitmap(16,15,(unsigned i

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論