單片機課程設(shè)計(論文)基于LCD1602液晶顯示器課程設(shè)計_第1頁
單片機課程設(shè)計(論文)基于LCD1602液晶顯示器課程設(shè)計_第2頁
單片機課程設(shè)計(論文)基于LCD1602液晶顯示器課程設(shè)計_第3頁
單片機課程設(shè)計(論文)基于LCD1602液晶顯示器課程設(shè)計_第4頁
單片機課程設(shè)計(論文)基于LCD1602液晶顯示器課程設(shè)計_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、摘 要在日常生活中,我們對液晶顯示(lcd)并不陌生lcd智能顯示模塊不但可以顯示字符,漢字和圖形,同時具有可編程功能,且與單片機接口比較方便,如液晶顯示模塊已作為很多電子產(chǎn)品的通用器件,如在計算器,萬用表,電子表及很多家用電子產(chǎn)品中都可以看到,顯示的主要是數(shù)字,專用符號和圖形。在單片機系統(tǒng)中應(yīng)用中用液晶顯示作為輸出器件有很多優(yōu)點,如顯示質(zhì)量高,不閃爍;數(shù)字接口式,使得和單片機的接口更加簡單可靠,操作方便;體積小,重量輕;而且相對而言,液晶顯示器的功耗主要消耗在其內(nèi)部的電極和驅(qū)動tc上,因而耗電量比其它顯示器要少得多。關(guān)鍵字:單片機 專用字符 液晶顯示器(lcd1602) 目 錄摘要1第一章

2、緒論11.1 課題背景21.2 課題設(shè)計目標21.3 課題設(shè)計的主要工作3第二章 硬件設(shè)計42.1 lcd1602 簡介52.1.1 lcd1602引腳功能72.2 iic總線102.2.1 iic總線的特點112.2.2 iic協(xié)議總線信號時序92.2.3 iic總線器件尋址方式72.3 系統(tǒng)電路圖7第三章 軟件設(shè)計73.1 系統(tǒng)框圖73.2 程序清單7第四章 調(diào)試7第五章 總結(jié)7參考文獻7致 謝7第一章 緒論1.1課題背景當今時候是一個信息化的時代,信息的重要性不言而喻的,獲取手段顯得尤其重要。人們所接受的信息有70%來自于人的視覺,無論用何種方式獲取的信息最終需要有某種顯示方式來表示。在

3、當代顯示技術(shù)中,主流的有l(wèi)ed顯示屏和lcd液晶顯示,而在這些顯示技術(shù)中,尤其以液晶顯示器lcd(liquid crystal display)為代表的平板顯示器發(fā)展最快,應(yīng)用最廣。lcd是典型的發(fā)光器件,它一材料科學為基礎(chǔ),綜合利用了精密機械,光電及計算機技術(shù),并正在微機械,微光學,纖維光學等前沿領(lǐng)域研究基礎(chǔ)上,向高集成化,智能化方向發(fā)展。液晶顯示技術(shù)發(fā)展迅猛,市場預(yù)測表明,液晶顯示平均年銷售呈增長10%13%,不久的將來有可能取代crt,成為電子信息產(chǎn)品的主要顯示器件,另外,液晶顯示器對空間電磁輻射的干擾不敏感,且在緊湊的儀器空間不需要專門的屏蔽保護,因而課大大簡化儀器的結(jié)構(gòu)和制造成本,在

4、各種便攜式儀器,儀表將會越來越廣泛的應(yīng)用。特別是在電池供電的單片機產(chǎn)品中,液晶顯示更是必選的顯示器件。1.2課題設(shè)計目標本設(shè)計是基于at89c51芯片單片機為主控芯片,結(jié)合1602液晶顯示模板等外圍電路,通過軟件程序,來實現(xiàn)液晶顯示英文字母。本次設(shè)計的目的在于利用單片機和iic技術(shù)來顯示英文字母。1.3課程設(shè)計的主要工作(1)對系統(tǒng)的各個模塊的各個功能進行深入分析和研究,在對課題所采用的方案進行可行詳細的研究后設(shè)計具體功能電路。(2)熟悉所選芯片的功能并完成具體電路設(shè)計。(3)對系統(tǒng)的最終指標進行測試,針對系統(tǒng)的不足,進行分析并提出一些改正方法。1.4 設(shè)計要求(1)運行iic總線技術(shù)。(2)

5、循環(huán)顯示字母。第二章 硬件設(shè)計2.1 lcd1602 簡介2.1.1 lcd1602引腳功能lcd1602引腳如圖2.1所示圖2.1 lcd1602引腳圖引腳圖的功能如表21所示表引腳功能圖2.1.2 lcd1602顯示模指令集(1)清屏功能:清ddrom值和ac值(2)歸位功能:光標復(fù)位,光標返回到地址00h(3)輸入方式設(shè)置功能:設(shè)置光標,畫面移動方式。其中:i/d=1:數(shù)據(jù)讀寫操作后,ac 自加一;i/d=0:數(shù)據(jù)讀寫操作后,ac 自減一;s=1:數(shù)據(jù)讀寫操作,畫面平移;s=0:數(shù)據(jù)讀寫操作,畫面不動;(4)顯示開關(guān)控制功能:設(shè)置顯示、光標和閃爍開關(guān)。其中:d 表示顯示開關(guān),d=1 為開

6、,d=0 為關(guān);c 表示光標開關(guān),c=1 為開,c=0 為關(guān);b 表示閃爍開關(guān),b=1 為開,b=0 為關(guān)。(5)光標、畫面位移功能:光標、畫面移動。其中:s/c=1 畫面移動一個字符位;s/c=0 光標移動一個字符位;r/l=1:右移;r/l=0 左移。(6)功能設(shè)置功能:工作方式設(shè)置(初始化指令)。其中:dl=1,8 位數(shù)據(jù)接口;dl=0,4 位數(shù)據(jù)接口;n=1,兩行顯示;n=0,一行顯示;f=1,5*10 點陣顯示;f=0,5*7 點陣顯示。(7)cgram 地址設(shè)置功能:設(shè)置cgram 地址,a5a0=03fh。(8)ddram 地址設(shè)置功能:設(shè)置ddram 地址。其中:n=0,一行顯

7、示a6a0=04fh;n=1 兩行顯示,首行a6a0=02fh,次行a6a0=4067h。(9)讀bf 及ac 值功能:讀忙bf 和地址計數(shù)器ac 的值。其中:bf=1:忙,bf=0:準備好。此時ac 值意義為最近一次地址設(shè)置(cgram 或ddram)定義。(10)寫數(shù)據(jù)功能:根據(jù)最近設(shè)置的地址性質(zhì),數(shù)據(jù)寫入cgram 或ddram 中。(11)讀數(shù)據(jù)功能:根據(jù)最近設(shè)置的地址性質(zhì),從cgram 或ddram 數(shù)據(jù)讀出。2.2 iic 總線iic 總線是philips 公司推出的兩線式串行總線。用于連接微控制器及其外圍設(shè)備。iic 總線產(chǎn)生于在80 年代,最初為音頻和視頻設(shè)備開發(fā),如今主要在服

8、務(wù)器管理中使用,其中包括單個組件狀態(tài)的通信。例如管理員可對各個組件進行查詢,以管理系統(tǒng)的配置或掌握組件的功能狀態(tài),如電源和系統(tǒng)風扇。可隨時監(jiān)控內(nèi)存、硬盤、網(wǎng)絡(luò)、系統(tǒng)溫度等多個參數(shù),增加了系統(tǒng)的安全性,方便了管理。2.2.1 iic 總線的特點(1) 只要求兩條總線線路 一條串行數(shù)據(jù)線 sda 一條串行時鐘線scl。 (2) 每個連接到總線的器件都可以通過唯一的地址和一直存在的簡單的主機從機關(guān)系軟件設(shè)定地址;主機可以作為主發(fā)送器或主機接收器。(3) 它是一個真正的多主機總線,如果兩個或更多主機同時初始化數(shù)據(jù)傳輸可以通過沖突檢測和仲裁防止數(shù)據(jù)被破壞。(4) 串行的 8 位雙向數(shù)據(jù)傳輸位速率在標準模

9、式下可達 100kbit/s 快速模式下可達 400kbit/s 高速模式下可達4mbit/s 。(5) 片上的濾波器可以濾去總線數(shù)據(jù)線上的毛刺波保證數(shù)據(jù)完整。(6) 連接到相同總線的ic 數(shù)量只受到總線的最大電容400pf 限制。2.2.2 iic 協(xié)議總線信號時序(1)數(shù)據(jù)的有效性sda 線上的數(shù)據(jù)必須在時鐘的高電平周期保持穩(wěn)定數(shù)據(jù)線的高或低電平狀態(tài)只有在 scl 線的時鐘信號是低電平時才能改變。如圖2.2 iic 總線的位傳輸所示。圖2.2 iic總線的為傳輸(2)起始和停止條件在 iic 總線中 唯一出現(xiàn)的是被定義為起始(s)和停止(p )條件(見圖2.3)的情況。其中一種情況是在 s

10、cl 線是高電平時,sda 線從高電平向低電平切換,這個情況表示起始條件。當 scl 是高電平時 sda 線由低電平向高電平切換表示停止條件。起始和停止條件一般由主機產(chǎn)生,總線在起始條件后被認為處于忙的狀態(tài)。在停止條件的某段時間后,總線被認為再次處于空閑狀態(tài)。如果產(chǎn)生重復(fù)起始(sr)條件而不產(chǎn)生停止條件,總線會一直處于忙的狀態(tài),此時的起始條件(s)和重復(fù)起始(sr)條件在功能上是一樣的。因此在本文檔的剩余部分,符號(s)將作為一個通用的術(shù)語既表示起始條件又表示重復(fù)起始條件,除非有特別聲明的(sr)。如果連接到總線的器件合并了必要的接口硬件,那么用它們檢測起始和停止條件十分簡便。但是,沒有這種接

11、口的微控制器在每個時鐘周期至少要采樣 sda 線兩次來判別有沒有發(fā)生電平切換。圖2.3起始和停止條件(3)總線空閑狀態(tài)sda 和scl 兩條信號線都處于高電平,即總線上所有的器件都釋放總線,兩條信號線各自的上拉電阻把電平拉高。(4)數(shù)據(jù)傳輸與應(yīng)答信號ack發(fā)送到sda 線上的數(shù)據(jù)必須是8 位的。每次傳輸可以發(fā)送的數(shù)據(jù)不受限制。每個字節(jié)后必須在時鐘的第9 個脈沖期間釋放數(shù)據(jù)總線(sda 為高),由接收器發(fā)送一個ack(把數(shù)據(jù)總線的電平拉低)來表示數(shù)據(jù)成功接收。如圖2.4 iic 總線響應(yīng)。圖2.4iic總線響應(yīng) 首先傳輸?shù)氖菙?shù)據(jù)的最高位(msb)。如果從機要完成一些其他功能后(例如一個內(nèi)部中斷服

12、務(wù)程序)才能接收或發(fā)送下一個完整的數(shù)據(jù)字節(jié),可以使時鐘scl 保持低電平迫使主機進入等待狀態(tài)。當從機準備好接收下一個數(shù)據(jù)字節(jié)并釋放時鐘線scl 后,數(shù)據(jù)傳輸繼續(xù)。如圖2.5 iic 總線數(shù)據(jù)傳輸所示。圖2.5iic總線數(shù)據(jù)傳輸2.2.3 iic 總線器件尋址方式iic 總線上的器件是共用總線的,因此,主器件在進行數(shù)據(jù)傳輸前要選擇通信的從器件,即進行總線尋址??偩€上的所有器件都有唯一的地址,由器件地址和引腳地址兩部分構(gòu)成,共7 位。引腳地址由iic 總線外圍器件的地址引腳(a2、a1、a0)決定的。數(shù)據(jù)的傳輸遵循如圖2.6 完整的數(shù)據(jù)傳送所示,在起始條件之后,發(fā)送一個7 位的從機地址,緊接著第8

13、 位是數(shù)據(jù)方向(r/ w),0-表示發(fā)送數(shù)據(jù)(寫),1-表示接收數(shù)據(jù)(讀)。數(shù)據(jù)傳輸一般由主機產(chǎn)生的停止位(p)終止。但是如果主機仍希望在總線上通訊,它可以產(chǎn)生重復(fù)起始條件(sr),和尋址另一個從機,而不是首先產(chǎn)生一個停止條件。在這種傳輸中,可能有不同的讀/寫格式結(jié)合。如圖2.6 iic 總線完整的數(shù)據(jù)傳輸。圖2.6 iic總線的數(shù)據(jù)傳輸2.3 系統(tǒng)電路圖系統(tǒng)的電路圖如2.7 所示: 圖2.7 系統(tǒng)電路圖運行狀況如圖2.8:圖2.9 運行狀態(tài)第三章 軟件設(shè)計3.1系統(tǒng)框圖本課題的程序設(shè)計是在c 語言的基礎(chǔ)之上的,可分為兩大模塊,分別是:(1)iic 協(xié)議;(2)lcd 顯示。程序總體框圖如圖3

14、.1 所示:圖3.1 總程序框圖lcd 顯示程序框圖如圖3.2 所示:圖3.2lcd顯示程序框圖3.2 程序清單#include #include#define uint unsigned int #define uchar unsigned charuchar code display_1=good morning; uchar code display_2=miss you;sbit lcden=p34;sbit lcdrs=p35; /sbit lcdrw=p36;uchar num;uint i=0; void delayms(uint z) uint x,y;for(x=z;x0;x

15、-) for(y=110;y0;y-);void write_com(uchar com) lcdrs=0;lcden=0;p0=com;delayms(5);lcden=0;lcden=1;delayms(5);lcden=0;void write_data(uchar date) lcdrs=1;p0=date;delayms(5);lcden=0;lcden=1; delayms(5);lcden=0;void init()lcden=0;write_com(0x38); write_com(0x0f); write_com(0x06);write_com(0x01);void main

16、()init();/lcdrw=0;write_com(0x80+0x1a);while(display_1i!=0)write_data(display_1i);i+;delayms(5);write_com(0x80+0x5f);for(num=0;num10;num+) write_data(display_2num);delayms(5); for(num=0;num16;num+) write_com(0x18);delayms(100); while(1);第四章 調(diào) 試程序的調(diào)試是用keil 軟件和proteus 聯(lián)調(diào)的,lcd 兩行滾動顯示的字符,第一行為“hello ever

17、yone ”第二行為miss you ,兩行同時向右平移。調(diào)試后的效果圖如4.1 所示:圖4.1 調(diào)試后的效果圖 第五章 總 結(jié)通過本次課程設(shè)計,我熟悉和掌握了iic 的原理及其應(yīng)用,能夠初步使用lcd1602 顯示字符等。本課題的程序設(shè)計是基于c語言的,c 語言具有方便,快速,高效。當然本設(shè)計也存在不足之處,由于lcd1602 只能顯示字符,而不能顯示漢字和圖片,如果想要顯示漢字和圖片的話,需要用到12832 等的lcd 模塊,這是本設(shè)計的一大缺陷。另外,這次課題中的程序設(shè)計中,對時序要求很嚴格,尤其是iic。通過本次課程設(shè)計,我有熟悉和掌握了單片機開發(fā)軟件keil和仿真軟件proteus。參考文獻: 1 樓然苗單片機課程設(shè)計指導m北京:

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論